При импорте платежа из файла выгрузки системой автоматически проводится попытка автоматической привязки платежа к страховому договору. Для выполнения данной задачи система вначале пытается определить тип платежа, и если выясняется, что тип — "страховая премия", то дальше система пытается определить подразделение, к которому относится платеж, а также номер договора, на который платеж должен быть распределен. После определения системой номер договора сохраняется в отдельном поле платежа "Идентификатор объекта".
Если при импорте в систему платежа договор, на который платеж должен быть распределен, еще не введен в систему, то распределение будет автоматически выполнено в момент ввода договора в систему и перехода в статус "Заключен" (подробнее см. раздел Автоматическая привязка платежей к договорам при вводе договора).
1.Платежи, связанные с протоколом, автоматическая привязка платежей для которого еще не завершена, не видны пользователям, и не доступны для ручного распределения. На карточке протокола со статусом, отличным от "Обработан", не отображается кнопка перехода на список платежей (когда нет выписок). Если в протоколе есть выписки, переход на список выписок из протокола, находящего в статусе "Привязка платежей" не скрывается, однако, с карточки выписки, относящейся к протоколу в таком статусе, переход на список платежей не доступен. Если платеж, обработка протокола которого еще не завершена, был присоединен к договору, на карточке договора в графике оплаты страховых премий информация о нем отображается, однако, не доступна ссылка перехода на карточку платежа. Аналогичным, образом, информация о привязанном платеже, обработка протокола которого еще не завершена, будет видна в других местах (например, на карточке требования), но не будет ссылки перехода на платеж. 2.Автоматическая привязка платежей в валюте, отличной от UAH, не выполняется 3.В истории распределения платежа пользователем, распределившим платеж, автоматически устанавливается технический контрагент FRONT-OFFICE (SYS_USER) |
Для начала система пытается определить тип платежа, анализируя строку "Назначение платежа". Назначение платежа указывается в особом формате.
Пример назначения платежа: /=01~Страховий платіж без ПДВ~BC-0263003~50~07.04.2010~1111111118~Кортнев Артем Иванович=/.
Прямыми признаком того, что платеж является страховой премией, являются символы "01" или "02" в начале строки назначения платежа (после первых двух знаков-разделителей: первый "/", "\" или "-", второй "=").
1Если данные символы ("01" или "02") в назначении платежа присутствуют, то система определяет номером договора подстроку между вторым и третьим символами "~":
•Если удалось таким образом определить номер договора, то система перекодирует его в соответствии с таблицей перекодировки символов. После перекодировки номер договора проверяется системой на корректность — он должен соответствовать одной из масок: NNNN\(/-)NNN\(/-)NNNNNN, NNN/(\-)NNNNNNN, СС/(\-)NNNNNNN). Если номер корректен, то система записывает его в поле "Идентификатор объекта" платежа и переходит на шаг поиска такого договора в системе среди существующих договоров для выполнения привязки к нему платежа и определения подразделения платежа. Если номер договора некорректен, то система продолжит поиск номера договора в назначении платежа с помощью так называемых "масок"
•Если не удалось таким образом определить номер договора, то система попытается определить подразделение платежа также на основании назначения платежа. Если в назначении платежа между третьим и четвертым символами "~" указан код, то он определяется как код подразделения, к которому будет относиться данный платеж. Тогда данное подразделение устанавливается системой в платеже. Затем система продолжит поиск номера договора в назначении платежа с помощью так называемых "масок"
2Если данных символов ("01" или "02") в назначении платежа система не находит, или определенный между вторым и третьим символами "~" номер не прошел проверку на корректность, то система попытается определить искомые значения (вид платежа и подразделение платежа) с помощью использования "масок". Для начала система попытается в полном тексте назначения платежа найти номер договора по таким трем "маскам":
NNNN\(/-)NNN\(/-)NNNNNN,
NNN/(\-)NNNNNNN,
СС/(\-)NNNNNNN,
где N - цифровой символ, C - буквенный символ, /,\,- конкретные символы, которые могут быть указаны как разделители.
Если произошло совпадение какой-то последовательности символов из назначения платежа с одной из "масок", то система принимает эту последовательность символов за номер договора и, следовательно, определяет вид платежа как "страховая премия". Затем выполняется преобразование символов номера договора в соответствии с таблицей перекодировки символов. Номер записывается в поле "Идентификатор объекта" платежа и выполняется поиск договора в системе:
1Если поиск договора среди существующих в системе был успешным, то определяется подразделение платежа, как "подразделение заключения договора" из параметров найденного договора, и выполняется привязка платежа к данному договору
Если поиск договора среди существующих в системе был не успешен, и если найдена подстрока в назначении платежа в соответствии с первой "маской" (NNNN\(/-)NNN\(/-)NNNNNN), то:
1.1 если в блоке NNN\(/-)NNNNNN первый символ не равен "1", то следующие два символа являются кодом подразделения платежа. Тогда, подразделение платежа будет установлено по коду подразделения из номера договора
1.2 если в блоке NNN\(/-)NNNNNN первый символ равен "1", то символы после разделителя (NNNNNN) являются номером бланка, а символы до этого разделителя (NNNN\(/-)NNN) – номером серии. Тогда, будет выполняться поиск бланка с полученной серией и номером. Если соответствующий бланк будет найден в статусе "Распределен", то будет определен код подразделения платежа на основании подразделения, в котором находится текущий владелец бланка
1.3 если код подразделения платежа все равно не определен, то система попытается определить эти данные с помощью справочника идентификаторов платежей
2Если поиск договора среди существующих в системе был не успешен, и если найдена подстрока в назначении платежа в соответствии со второй или третьей "масками", то:
2.1 в данном случае символы после разделителя (NNNNNN) являются номером бланка, а символы до этого разделителя (NNN либо СС) – номер серии. Тогда, будет выполняться поиск бланков с полученными серией и номером, причем, для "масок" XXX/(\-)XXXXXX или XXX/(\-)XXXXXXX при поиске серии бланка будут искаться серии, которые начинаются с символов ХХХ из номера договора, но при этом длина серии может быть больше, чем три символа. Если соответствующий бланк находится в статусе "Распределен", то будет определен код подразделения платежа на основании подразделения, в котором находится текущий владелец бланка
2.2 если код подразделения все равно не определен, то система попытается определить эти данные с помощью справочника идентификаторов платежей
Если ни один из вышеуказанных способов не позволит определить искомые значения платежа (вид и подразделение), то система попытается определить эти данные с помощью справочника идентификаторов платежей.
Если к моменту обращения к справочнику идентификаторов платежей получилось определить одно из искомых значений (вид платежа или подразделение платежа), то по результатам работы со справочником это значение не изменится.
|
Для успешного выполнения автоматической привязки платежей к договорам и подразделениям на этапе импорта выписки платежей системой должны быть корректно идентифицированы названия, которые визуально не отличаются в различных языках, но имеют разное кодовое значение (например, написание серии бланков "BC").
Для согласования названий в системе создана специальная таблица перекодировки символов, в которой задаются и отображаются выполняемые системой преобразования для каждого символа. Данная таблица содержит представления символов в виде пары: "символ" (его цифровой код) = "представление" (цифровой код представления) (см. рис.).
Для того, чтобы добавить новую перекодировку символа, следует перейти к таблице перекодировки символов по ссылке в навигационном меню "Настройки" — "Параметры" — "Справочники" — "Нормализация символов" и нажать в функциональном меню кнопку "Добавить".
В таблицу автоматически добавится строка (см. рис.) для ввода символа, который следует перекодировать (слева от знака "="), и его представления, т.е. перекодировки (справа от знака "="). При вводе символа или перекодировки в скобках автоматически отобразится их цифровой код.
Для сохранения введенной перекодировки в таблице следует нажать расположенную рядом отметку
После сохранения перекодировки в ее строке вместо зеленой галочки отобразится иконка
Если для перекодирования будет введен символ, который уже находится в таблице, то система выдаст соответствующее сообщение, т.е. повторно перекодировать один и тот же символ нельзя. Кроме того, нельзя перекодировать цифры, в данном случае система, также, выдаст соответствующее сообщение.
Для ускорения нахождения в таблице символа или перекодировки можно воспользоваться поиском (блок "Поиск"). После ввода значения в поля поиска система автоматически находит их в таблице и выделяет зеленой рамкой.
|
Справочник "Идентификаторы платежей" предназначен для определения вида платежа и подразделения платежа по входящей в назначении платежа комбинации символов.
Для работы со справочником следует перейти в навигационном меню по ссылке "Настройки" — "Параметры" — "Справочники" — "Идентификаторы платежей".
Все записи в справочнике расположены последовательно соответственно их приоритету (поле "Приоритет"). Приоритет — порядковый номер, в соответствии с которым последовательно анализируются строки справочника на предмет вхождения строки поиска в текст назначения платежа.
Приоритет назначается автоматически при создании (устанавливается последний по счету), при необходимости приоритет можно изменить по нажатию кнопки "Изменить". По нажатию данной кнопки откроется панель кнопок управления напротив каждой записи, по нажатию на которые записи могут быть перемещены вверх или вниз через один уровень, сразу через пять уровней, в самый вверх или в самый низ списка (чем выше запись в списке, тем больше у нее приоритет, и наоборот, чем ниже — тем меньше). Также, по нажатию иконки
Также, для каждой записи справочника определяется количество успешных поисков. Количество успешных поисков — целое число, отображающее количество успешных поисков для данной строки справочника, т.е. после каждого успешного поиска значение увеличивается на единицу. Данное поле необходимо для оптимизации набора элементов справочника администратором справочника.
Для добавления записи в справочник следует нажать в его функциональном меню кнопку "Добавить идентификатор" и заполнить поля формы ввода: •Строка поиска — указать комбинацию символов, по которой в назначении платежа будет выполняться поиск совпадений (может быть введено максимум 50 символов, при поиске учитываются пробелы) •Вид платежа — выбор значения из выпадающего списка (из перечня существующих в системе видов платежей). Данный вид будет установлен для платежа, в назначении которого будет найдена указанная в первом поле комбинация символов •Подразделение платежа — по нажатию кнопки "Выбрать" следует указать подразделение, которое будет установлено для платежа, если в назначении данного платежа будет найдена указанная в первом поле комбинация символов. После выбора отобразятся кнопки "Изменить" /"Отменить", с помощью которых подразделение можно изменить / очистить поле соответственно
После заполнения полей для сохранения записи в справочнике следует нажать в функциональном меню кнопку "Сохранить".
В функциональном меню справочника расположена кнопка "История", по нажатию на которую пользователь может просмотреть историю изменения справочника идентификаторов платежей.
|
После того, как определен номер договора в назначении платежа, он записывается в поле платежа "Идентификатор объекта", после чего выполняется поиск данного договора среди существующих в базе договоров: 1Если поиск договора успешен, то подразделением платежа устанавливается подразделение заключения найденного договора, и выполняется привязка платежа к договору. 2Если поиск договора не успешен, то система будет действовать по следующему принципу: 2.1 если формат номера договора соответствует "маске" XXXX/(\-)TCC/(\-)XXXXXX и символ "Т" не равен "1", то подразделение платежа определяется, исходя из кода подразделения номера договора (символы "СС") (см. примечание) 2.2 если формат номера договора соответствует "маске" XXXX/(\-)TCC/(\-)XXXXXX и символ "Т" равен "1", то это бланковый договор, тогда серия и номер бланка определяется как набор символов до и после второго разделителя (символа "/" или "\" или "-") соответственно. Если соответствующий бланк находится в статусе "Распределен", то код подразделения платежа определяется на основании подразделения, в котором находится текущий владелец бланка (см. примечание) 2.3 если формат номера договора соответствует "маскам" CC/(\-)XXXXXX или CC/(\-)XXXXXXX, XXX/(\-)XXXXXX или XXX/(\-)XXXXXXX, то это бланковый договор, тогда серия и номер бланка определяется как набор символов до и после разделителя (символа "/" или "\" или "-") соответственно. Для маски XXX/(\-)XXXXXX или XXX/(\-)XXXXXXX при поиске серии бланка будут искаться серии, которые начинаются с символов ХХХ из номера договора, но при этом длина серии может быть больше, чем три символа. Если соответствующий бланк находится в статусе "Распределен", то код подразделения платежа определяется на основании подразделения, в котором находится текущий владелец бланка (см. примечание). 2.4 если ни одно вышеуказанных условий не позволило определить подразделение платежа, то система попытается определить подразделение платежа на основании назначения платежа (подстрока между третьим и четвертым символами "~"). Если определить подразделение платежа таким образом не удастся, то система попытается определить его с помощью справочника идентификаторов платежей
Таким образом, в момент импорта платежа номер договора, извлеченный из назначения, сохраняется в отдельном поле платежа "Идентификатор объекта". Для унификации кодировок, предотвращения конфликтов при работе с названиями серий бланков в английской и русской раскладке (например, ВА), а также для унификации разделителя серии и номера (символы "-", "/", "\" и т.п.) данный "идентификатор объекта" будет преобразован в соответствии с таблицей перекодировки символов, заложенной в системе. Договор ищется в БД по перекодированному номеру, и если будет найден, то произойдет автоматическое распределение платежа на все пункты графика платежей договора, поочередно начиная с наиболее раннего, пока сумма платежа не будет исчерпана или не будут погашены все пункты графика платежей в договоре.
Если договор найден не будет, то автоматически выполнится "привязка" платежа к подразделению, которая осуществляется на основании двух параметров: •принадлежность бланка, номер которого указан в назначении •код подразделения
Привязка по номеру бланка проводится следующим образом: выделенный номер договора разделяется на серию и номер, и производится попытка найти бланк, соответствующий этим данным. Если бланк будет найден, и его статус "Распределен", то платеж будет привязан к подразделению (дирекции или ГО), в котором находится текущий владелец бланка. Если попытка найти бланк не была успешной, то система произведет попытку привязки платежа с подразделением по коду подразделения. Для этого система будет выполнять попытку найти код подразделения в номере договора, и если будет найдено подразделение с таким кодом, осуществится привязка. Если в результате поиска будет найдено одно единственное подразделение, то будет выполнена привязка платежа с ним, в обратном случае у платежа будет устанавливаться вместо подразделения значение "Не задано".
|
По аналогии с автоматической привязкой платежа на договор, возможно выполнение автоматической привязки платежа вида "страховая выплата" на приказы на выплату страхового возмещения (подробнее см. раздел руководства Автоматическая привязка платежей к страховым выплатам)
|