Проверка недействительных паспортов по базе ФМС… быстро.

Автор:sergksa
Дата:25.09.2014
Просмотров:3635
Скачиваний:702
Оценка:, Оценок - 1
Скачать (rar-файл; Размер - 5954)

Обсудить в форуме

Описание

Проверка недействительных паспортов по базе ФМС… быстро.

Количество паспортов в стоп листе удостоверений личности, который мы ответственно пополняли с файлов ЦБ и впоследствии у прочих поставщиков – около 60 тысяч.

Количество недействительных паспортов, которые можно скачать у ФМС по ссылке http://services.fms.gov.ru/info-service.htm?sid=2000 – около 90 миллионов.

Осознав разницу, пришли к выводу, что проверки паспортов клиентов, которые мы сейчас делаем, весьма не полные.

Конвертировали файл из ФМС в формат Pervasive, чтобы до данных был легкий и быстрый доступ из RSL, написали процедуры проверки. Сделали где нужно проверку. Выполняется полная проверка около минуты, хотя у нас ооочень много счетов.

Предлагаю в примере макросы с процедурами, которые можно протестировать как есть, и модифицировать под себя.

При подстройке макросов учитывайте местоположение файла psp_bad.dbt. Рекомендуется вынести этот файл из dbfile и даже корневого каталога RSBANK, поскольку реальный файл со всеми паспортами будет состоять из 4-х частей и занимать почти 8 гигов. Зачем его включать в резервное копирование вместе с боевыми данными RS?

Полный файл psp_bad.dbt я заархивировал и положил на https://yadi.sk/d/SNI8KOG6bexVH

Данные конвертированы из одного формата в другой элементарным способом, но в связи с огромным их количеством это занимает довольно много времени (конвертор работает весь день). Поэтому рекомендую воспользоваться уже готовыми файлами.






Текст примера

     err=Test_PSP_clienta(cli.client);

//или

   if (not(testFMS(pasp_ser_num)))
     err="Паспорт "+pasp_ser_num+" найден в списке недействительных в ФМС";
   end;