Actions. Часть 1 - Распознавание приходной накладной
Last updated
Last updated
Рассмотрим пример робота, который является первой частью проекта и демонстрирует работу с Действиями в Оркестраторе, как это выглядит на стороне Оркестратора можно посмотреть здесь. На этом этапе робот распознает данные из pdf-документа “Заказ поставщику 1.pdf”, после чего полученные данные задаются в качестве параметров задачи и данная задача создается в указанной очереди ($QueueGuid).
При создании задачи указывается тег "1CNew" ($TaskTag). Также в параметрах задачи указывается ссылка на загруженный в хранилище pdf-файл ($StorageGuid).
Первая часть проект робота состоит из двух диаграмм и pdf-файла.
Таким образом, если описывать пошагово, то данный робот работает следующим образом:
Загружает в указанную папку, в хранилище Оркестратора, файл.
Запускает диаграмму “РаспознаваниеДанных” .
Создает в Оркестраторе задачу и добавляет ее в указанную очередь.
Основная диаграмма проекта выглядит так (для удобства блоки диаграммы пронумерованы):
Блок “Старт” (с этого блока начинается любая диаграмма).
Блок “Storage. Создать файл” создает pdf-файл в выбранной группе файлов. Для данного блока указаны следующие свойства:
GUID/Имя группа файлов (GUID группы файлов (папки) в Оркестраторе, в который будет загружен распознанный pdf-документ);
Имя файла;
Путь к файлу (путь к файлу на диске).
Блок “Процесс” позволяет создавать сценарии, состоящие из нескольких диаграмм. Выполнение сценария продолжится с блока “Старт” указанной диаграммы проекта. Выполнение сценария вернется к текущему блоку и продолжится в текущей диаграмме, как только будет достигнут блок “Конец” во внешней диаграмме. Для блока “Процесс” указано свойство “Имя диаграммы” (имя файла диаграммы, в которой продолжится выполнение сценария).
Блок “Добавить задачу в очередь” создает задачу и добавляет ее в очередь. Для данного блока указаны следующие свойства:
GUID/Имя очереди (GUID очереди в Оркестраторе, в которую будет добавлена задача).
Название (название задачи, которая будет добавлена в выбранную очередь в Оркестраторе);
Параметры (параметры задачи, которые будут заданы после распознавания данных из pdf-файла);
Приоритет (приоритет выполнения задачи);
Список тегов (теги добавляемой в очередь задачи);
Время ожидания (время ожидания ответа от сервера в секундах).
Блок “Конец” (этим блоком завершается работа сценария или возврат диаграммы подпроцесса в основной процесс).
Диаграмма “РаспознаваниеДанных”
Блок “Старт” (с этого блока начинается любая диаграмма).
Блок “Распознать по шаблону” позволят распознать документ по шаблону, заранее созданному в Шаблонизаторе. В данном блоке указаны следующие свойства:
Путь к файлу;
Путь к файлу шаблона (путь к файлу шаблона для распознавания).
Блок “Присвоить значение переменной” устанавливает новые значения для одной или нескольких переменных. В данном случае в свойствах указаны два значения, которые необходимо присвоить переменным.
В данном случае указанные переменные – это значение ячеек “Поставщик” и “Заказ”. Переменной “Поставщик” присваивается значение из словаря атрибутов по ключу "Исполнитель". Переменной “Заказ” присваивается значение из ключа "Заказ".
Блок “Цикл для каждого” циклично перебирает все строки таблицы данных.
Блок “Лог” позволяет выводить в лог произвольные сообщения и/или значения переменных в процессе работы сценария робота. В данном случае используются три таких блока, для них указано свойство “Значение” (для каждого из блоков свое) и уровень сообщения при отправке лога в Оркестратор. В кавычках указана текстовая константа, а имя переменной начинается с символа $. указанного с помощью переменной. Т.е., в данном случае, в лог робота записываются сообщения о распознании данных о “Поставщике”, “Заказе” и “Товарах”.
Блок “Присвоить значение переменной” устанавливает новые значения для одной или нескольких переменных. В данном случае, берутся значения колонок и присваиваются их переменным.
Блок “Добавить строку” позволяет добавить строку в таблицу данных. В данном случае указаны следующие свойства:
Таблица (таблица данных, в которую добавляется строка);
Значения (список значений новой строки);
Номер строки (возвращает номер добавленной строки, нумерация начинается с 0).
Блок “Конец” (этим блоком завершается работа сценария или возврат диаграммы подпроцесса в основной процесс).