﻿# Сравнение исходящего и входящего документов для антифрода

> [HTML Version](antifraud-compare-documents.html)

**(antifraud-compare-documents-1.png)**Графический элемент становится доступен в дизайнере бизнес-процессов после подключения [Модуля антифрод](antifraud-solution.md). Он позволяет с помощью искусственного интеллекта проверить подписанный со стороны контрагента договор на несогласованные изменения.

Полученная от контрагента отсканированная версия в формате **.pdf** сравнивается с изначально сформированным договором в формате **.docx**. Если в **.pdf**‑файле нет текстового слоя, при помощи ИИ выполняется его распознавание. В сравнении участвуют только распознанные фрагменты текста. Порог распознавания устанавливается в [настройках Модуля антифрод](antifraud-solution.md#set-up-module).

В результате работы блока формируется файл сравнения, в котором изменения выделены цветом. Результаты сопоставления сохраняются в контекстные переменные, и вы сможете использовать их в ходе процесса.

## Первичные настройки процесса

Для корректной работы** **перед настройкой блока **Сравнение исходящего и входящего документов** нужно заранее создать определённый набор свойств. Они указываются в настройках блока в полях, которые подразделяются на:

- **входные атрибуты** — в них передаются свойства, содержащие документы для сравнения;

- **выходные атрибуты** — сопоставляются со свойствами, в которых сохраняется результат работы блока.

Для упрощения настройки рекомендуем использовать названия, совпадающие с атрибутами из настроек блока.

1. **Добавление входных переменных.**

Добавьте в [контекст бизнес-процесса](process_context.md) переменные:

- **Исходный документ** (тип [Файлы](360009707032.md))** **— изначальный документ в формате **.docx**, с которым нужно сравнить полученный файл;

- **Входящий документ **(тип **Файлы**) — документ в формате **.pdf**, полученный от контрагента.

Обратите внимание, входные переменные нужно заполнить данными до того, как ход процесса дойдёт до шага **Сравнение исходящего и входящего документов**. Это делается с помощью других графических элементов. Например, файлы можно записать в контекст процесса из карточки документа с помощью блока [Присваивание](360020300571.md).  

2. **Добавление выходных переменных.**

Свойства для сопоставления с выходными атрибутами добавляются:

- в контекст бизнес-процесса — если результаты работы блока будут отображаться на формах задач и использоваться для определения дальнейших шагов процесса;

- в [контекст приложения](360028941112.md) — если данные нужно сразу записать в карточку документа. Чтобы свойства нужного приложения были доступны при сопоставлении атрибутов, в настройки процесса добавляется переменная типа **Приложение**, ссылающаяся на него.

Создайте следующие переменные, в которые запишется информация:

- **Документ результата сравнения** (тип **Файлы**) — файл с результатами сравнения, в котором добавленный текст выделен зелёным цветом, удалённый — красным, изменения в значениях переменных — синим;

- **Были ли найдены отличия в документах **(тип [Выбор «да/нет»](360009707032.md#yes_no)) — наличие изменений в полученном документе по сравнению с изначальной версией;

- **Ответ сервера AI **(тип [Строка](360009707032.md#string)) — текст ответа, полученного с сервера ИИ. Его может использовать администратор для анализа ошибок, возникших при обработке документа на сервере;

- **Статус запроса на сервер **(тип [Число](360009707032.md#number)) — код состояния HTTP, полученный с сервера ИИ. Переменная позволяет узнать успешность сравнения, поэтому её можно использовать для определения следующего шага процесса. Также на основе кода администратор может анализировать возникшие ошибки;

- **Статус задачи сравнения** (тип **Строка**) — успешность сравнения документов на сервере ИИ. Возможные значения: **SUCCESS** или **ERROR**. Переменную можно использовать для определения следующего шага процесса.

## Настройка блока

После создания переменных разместите блок **Сравнение исходящего и входящего документов** на схеме процесса и дважды нажмите на него. Выполните настройки на трёх вкладках: **Основное**, **Входные и выходные атрибуты**, **Обработка ошибок**.

### Вкладка «Основное»

Заполните основные настройки блока:

**(antifraud-compare-documents-2.png)**

- **Название** — введите название блока, которое будет отображаться на схеме процесса;

- **Название задачи **— блок **Сравнение исходящего и входящего документов **выполняется автоматически без назначения задачи на пользователя. Поэтому настраивать формирование названия задачи не требуется, и поле можно оставить пустым;

- **Присвоить выходные атрибуты в **— укажите, куда будет записываться результат исполнения блока:

	- **контекст процесса **— отметьте эту опцию, если вы создали переменные, в которые запишется результат работы блока, в контексте процесса;

	- **приложение **— выберите опцию, а затем в поле **Переменная\*** укажите приложение, добавленное в контекст процесса, в поля которого будет записан результат работы блока.

### Вкладка «Входные и выходные атрибуты»

На этой вкладке заранее созданные свойства связываются с настройками блока, которые делятся на:

- **входные атрибуты** — в них передаются свойства, хранящие данные для выполнения сравнения. Их нужно заполнить значениями до того, как процесс дойдёт до блока **Сравнение исходящего и входящего документов**;

- **выходные атрибуты** — сопоставляются со свойствами, в которые записывается результат работы блока.

Описание свойств и их типы приведены в разделе [«Первичные настройки процесса»](#initial-setup).

Сопоставление может выглядеть так:

**(antifraud-compare-documents-3.png)**

### Вкладка «Обработка ошибок»

Определите, по какой ветке направится ход бизнес-процесса при возникновении ошибки в работе блока, например, если модуль отключён. Также вы можете настроить оповещение пользователей об ошибке.

**(antifraud-compare-documents-4.png)**

- **Оповещение** — включите опцию и укажите пользователей, которым будет отправляться оповещение об ошибке в процессе. Вы можете выбрать пользователя, [группу](360007146071.md) пользователей, [элемент оргструктуры](360003861992.md), а также указать [контекстную переменную](process_context.md), например, инициатора процесса;

- **Прервать** — для корректной работы блока необходимо включить опцию, а затем в поле **Переход** указать, по какой ветке направится процесс в случае ошибки. Указанный в этих настройках переход будет отмечен на схеме процесса значком **(error-connector-icon.png).**

После завершения настройки нажмите кнопку **Сохранить**.