При внедрении Directum RX Intelligence в договорной работе заказчики сталкиваются с проблемой нешаблонного формата договорных документов разных контрагентов. Зачастую договор заключается по типовому формату контрагента, что приводит к невозможности корректной работы распознавания и извлечения фактов для заполнения реквизитов.
Часть реквизитов может быть в табличной части, часть – отображена в неожиданном для системы формате (сумма не прописью).
Переразметка и дообучение системы занимает значительное количество времени и сил сотрудников.
Значительно ускорить процесс может применение ГенИИ. Однако, найденные ГенИИ значения того или иного реквизита невозможно сразу внести в карточку, т.к. выходной формат скрипта – строка.
Для нивелирования данной сложности разработана группа универсальных функций обработки строк.
|
Название функции |
Описание |
Контекст функции |
Возвращаемый тип |
|
Поиск записей справочника по вхождению имени |
Возвращает коллекцию записей указанного справочника по признаку вхождения строки в отображаемое имя записи. |
Справочник (Сведения о справочнике) |
Коллекция [Справочник (Справочник)] |
|
Поиск записей справочника по совпадению имени |
Возвращает коллекцию записей указанного справочника по признаку полного совпадения строки с отображаемым именем записи. |
Справочник (Сведения о справочнике) |
Коллекция [Справочник (Справочник)] |
|
Подстрока по разделителю |
Возвращает первую подстроку, следующую до разделителя. |
Строка |
Строка |
|
Подстрока по разделителю и ее порядковому номеру. |
Возвращает подстроку по разделителю и ее порядковому номеру. |
Строка |
Строка |
|
Преобразовать в вещественное число |
Возвращает вещественное число, преобразованное из строки. |
Строка |
Вещественное число |
|
Преобразовать в дату |
Возвращает текущую дату, преобразованную из строки. |
Строка |
Дата |
|
Преобразовать в логическое значение |
Возвращает логическое значение, преобразованное из строки "Да", "Истина", "True" либо "Нет", "Ложь", "False" в логическое Истина либо Ложь соответственно. |
Строка |
Логическое |
|
Преобразовать в целое число |
Возвращает целое число, преобразованное из строки. |
Строка |
Целое число |
Функция «Преобразовать в целое».
В качестве входящего параметра получает строковое значение, преобразует строку в целое число. Используется для заполнения реквизитов порядкового номера и прочих кастомных реквизитов.
Пример использования:
Промптом задаем обработку текста договора по блоку Условия оплаты, указываем в качестве возвращаемого вывода целое число количества дней отсрочки платежа. Функцией «Преобразовать в целое число» заполняем целочисленный параметр процесса и изменяем реквизит Дней отсрочки платежа в карточке договора.


Функция «Преобразовать в вещественное число».
В качестве входящего параметра получает строковое значение, преобразует строку в дробное число. Используется для заполнения реквизитов суммы, суммы НДС и аналогичных им.
Пример использования:
Промптом задаем обработку текста договора по блоку Условия оплаты, указываем в качестве возвращаемого вывода дробное число суммы НДС. Функцией «Преобразовать в вещественное число» заполняем вещественный параметр процесса и изменяем реквизит Сумма НДС в карточке договора.


Функция «Преобразовать в дату».
В качестве входящего параметра получает строковое значение в различных форматах: ДД.ММ.ГГ; ДД/ММ/ГГ; ДД/ММ/ГГГГ и т.п. Преобразует в дату в формате ДД.ММ.ГГГГ. Используется для заполнения реквизитов: Действует с, Действует по.
Пример использования:
Промптом задаем обработку текста договора по блоку Сроки действия договора, указываем в качестве возвращаемого вывода дату окончания действия в нужном формате написания. Функцией «Преобразовать в дату» заполняем параметр процесса и изменяем реквизит Действует по в карточке договора.


Функция «Преобразовать в логическое».
В качестве входящего параметра получает строковое значение Да/Нет и близкие ему по смыслу. Возвращает ИСТИНА/ЛОЖЬ. Используется для заполнения логических реквизитов.
Пример использования:
Промптом задаем обработку текста договора по блоку Сроки действия договора, указываем в качестве возвращаемого вывода «Да», если присутствуют формулировки об автоматической пролонгации договора. Функцией «Преобразовать в логическое» заполняем логический параметр процесса и изменяем реквизит Автоматическая пролонгация в карточке договора.


Функция «Подстрока по разделителю».
В качестве входящего параметра получает строковое значение и значение разделителя. Возвращает фрагмент входящей строки до разделителя. Используется вместо функции «Подстрока от начала» при отсутствии фиксированного значения требуемой подстроки.


Функция «Подстрока по разделителю и номеру».
В качестве входящего параметра получает строковое значение, значение разделителя и номер подстроки. Возвращает указанный фрагмент входящей строки. Используется для пошагового разделения строки на подстроки (например, в рамках цикла обработки).


Если в качестве промпта задать список условий/правил для договорного документа, указав в качестве выходного результата перечисление ответов в формате «Да»/«Нет» с разделителем, можно продолжить преобразование полученной «коллекции» подстрок в логические параметры, направляющие процесс по нужной ветке в зависимости от комбинации их значений.
Функция «Поиск по имени» и Функция «Поиск по вхождению в имя».
В качестве входящего параметра получает контекст используемого справочника и строковое значение полного или частичного значения имени записи справочника. Возвращает коллекцию объектов выбранного в качестве контекста справочника.

С помощью данной функции можно заполнить любое ссылочное значение карточки справочника.
Примеры использования:
Пример 1. Промптом задаем выделение категории договорного документа по тексту Предмета договора в тексте документа. В качестве вывода запрашиваем значение из конкретного списка с критериями выбора. Полученное значение категории используем для поиска по справочнику Категории договоров.
Из полученной коллекции забираем «первый элемент» в качестве параметра процесса и изменяем свойство Категория для обрабатываемого договора.



Пример 2. Промптом задаем выделение валюты оплаты договорного документа по тексту Условий договора в тексте документа. В качестве вывода запрашиваем значение из конкретного списка с критериями выбора. Полученное значение наименования валюты используем для поиска по справочнику Валюты.
Из полученной коллекции забираем «первый элемент» в качестве параметра процесса и изменяем свойство Валюта для обрабатываемого договора.



Полученные параметры используем для заполнения карточки документа.


Использование подборки универсальных функций обработки строковых значений позволяет сократить трудозатраты на дообучение моделей Ario и использовать интеллектуальные возможности для заполнения реквизитов, традиционно заполняемых сотрудниками, например: категория договора, статья затрат, подразделение.
Пакет разработки с универсальными функциями может быть предоставлен по запросу.
Это просто супер!
Я теперь ссылку на эту статью буду заказчикам отправлять)
Авторизуйтесь, чтобы написать комментарий