Группа «Оркестратор» (Очереди)¶
Общая информация¶
Для корректной отработки действий по работе с очередями, необходимо использовать версию ROBIN Studio не ниже 2.9.0, редакция Enterprise.
Перед работой с действиями данной группы необходимо придерживаться алгоритма:
- Создать робота.
- Опубликовать его, как проект.
- Опубликовать готового робота.
Для публикации робота необходимо нажать на кнопку «Опубликовать проект робота»
Данная кнопка находится на верхней панели.
Будет открыто окно, где необходимо заполнить поле «Изменения в роботе» и выбрать группу с правом пользования. Далее, нажать кнопку «Опубликовать».
Робот успешно опубликован в хранилище.
Зайти в хранилище роботов и выбрать нужного, нажать на кнопку скачивания.
Нажать на кнопку «Открыть». Будет открыта схема робота.
Нажать на кнопку «Опубликовать как готового робота».
В открывшемся окне указать группу с правом пользования и изменения в роботе. Нажать кнопку «Опубликовать».
Будет отображено сообщение об успешной публикации готового робота. Действия по работе с очередями будут работать корректно.
Действия¶
В данном разделе описаны примеры использования к действиям группы «Оркестратор».
Добавить элемент/Add element¶
Пример использования
Задача: Есть процесс по обработке заявок, необходимо добавить новый элемент (заявку) в очередь сообщений Test1, группа - group1
Решение: воспользоваться действием «Добавить элемент».
Реализация:
- Перетащить на рабочую область действие «Добавить элемент» и настроить его параметры:
В поле «Группа» указать значение - group1. В поле «Очередь» указать значение «Test1». В поле «Значение» указать - «Тестовое значение» (на портале значение добавляемого элемента не отображается).
В поле «Теги» указать значение «проверка», нажав на кнопку в виде трех точек, а далее на кнопку
В поле «Приоритет» ввести значение «1».
При необходимости заполнить поля раздела «Результат» требуемыми типами переменных, для сохранения в них информации о добавляемом элементе.
- Запустить робота по кнопке «Старт» в верхней панели.
Результат:
Программный робот отработал успешно.
Элемент добавлен в указанную очередь.
Обновить элемент/Update element¶
Пример использования
Задача: существует процесс по обработке заявок, где в очереди Test1 существует элемент (заявка). Необходимо изменить тег элемента с значения «проверка» на «11111111» для обработки элемента в дальнейшем по новому тегу.
Решение: воспользоваться действием «Обновить элемент».
Реализация:
- Перетащить на рабочую область действие «Обновить элемент» и заполнить его параметры:
Заполнить поле «ID элемента» значением из колонки идентификатор (панель по управлению очередями, где пользователь заранее сам узнает ID). Так же, ID элемента можно получить с помощью действий: Добавить элемент, Получить элемент по условию
Заполнить поле «Теги» значением «11111111».
Далее, в открывшемся окне в поле значение ввести требуемое.
- При необходимости записи результатов действия, заполнить поля соответствующими типами переменных.
- Запустить робота по кнопке «Старт» в верхней панели.
- При необходимости поменять приоритет элемента (например, если требуется обрабатывать некоторые элементы в первую очередь) необходимо заполнить поле «Приоритет» требуемым значением (например, 1). Элементы, у которых приоритет выше, будут обработаны в первую очередь.
- Если элемент заблокирован на чтение и/или обновление и требуется его разблокировка, то необходимо заполнить поля: «Дата разблокировки на чтение» и/или «Дата разблокировки на обновление». Например, заявка заблокирована на чтение , но необходимо отключить ее блокировку (позволить роботу видеть заявку в дальнейшем) после определенной даты и времени.
Таким образом можно по отдельности обновлять или устанавливать значение элемента или его приоритет. А также разблокировать элемент на чтение и запись с учетом определенной даты и времени.
Результат:
Программный робот отработал успешно.
Тег элемента успешно обновлен.
Получить коллекцию элементов/Get a collection of elements¶
Пример использования
Задача: существует процесс, где имеется очередь с элементами (заявками), необходимо получить коллекцию данных элементов со статусом «Новый» для дальнейшей выгрузки в отчет и проведения аналитики по обработке заявок.
Решение: воспользоваться действием «Получить коллекцию элементов».
Реализация:
- Перетащать на рабочую область действие «Получить коллекцию элементов» и заполнить его параметры:
поле «Группа» заполнить значением «group1»; поле «Очередь» заполнить значением «Test1»; поле «Статус» заполнить значением «Новый»; поле «Правило для количества элементов» заполнить значением «Все».
- Создать переменную «Коллекция» и указать ее в поле «Коллекция словарей».
- Для получения значений полученных элементов коллекции (если это необходимо) можно воспользоваться действием «Получить значение по индексу». Например: элемент по индексу =2. Значение этого элемента это словарь. Затем, необходимо по ключу обратиться к конкретной записи этого словаря. Например, если мы хотим получить именно значение данного элемента, то необходимо обратиться по ключу value. (Действие «Получить значение»).
- Запустить робота по кнопке «Старт» в верхней панели.
- Если необходимо получить коллекцию элементов с определенными тегами, то необходимо заполнить поле «Теги», указав названия тегов элементов. (Например, получение заявок, содержащих определенные теги)
- Если необходимо получить коллекцию элементов с определенными приоритетами (например, получение заявок с приоритетами с 1 до 3), то следует заполнить поля «Min. приоритет» и «Max. приоритет» указав значения 3 и 1 соответственно.
- Если необходимо получить коллекцию элементов с группировкой по дате создания (например, с 12.08.2022 4:00 по 14.08.2022 4:00) необходимо указать даты и время в соответствующих полях: «Min.дата и время создания», «Max. дата и время создания» (например, получение заявок, созданных в определенном интервале времени).
- Если необходимо получить коллекцию элементов с группировкой по дате обновления (например, 15.08.2022 5:00 по 17.08.2022 5:00) необходимо указать даты и время в соответствующих полях: «Min.дата и время обновления», «Max. дата и время обновления» (например, получение заявок, обновленных в определенном интервале времени).
- Если необходимо необходимо получить коллекцию словарей уже отсортированную (например, по увеличению приоритета заявок), то необходимо заполнить параметр «Сортировка».
- Если необходимо завершить обработку элемента (например, требуется перевести заявку в статус «Обработан» и сделать ее недоступной для роботов), то следует установить чек-бокс «Завершить обработку элемента» = true.
- Если необходимо заблокировать элемент на обновление и/или чтение (например, есть заявки, которые должны быть заблокированы на обновление и/или чтение, т.е робот в дальнейшем не сможет их видеть или/и редактировать), то следует установить чек-бокс в полях: «Заблокировать на чтение»/»Заблокировать на обновление».
Элемент очереди может быть заблокирован роботом (на чтение иили запись).
- только на чтение - когда элемент заблокирован на чтение, по-умолчанию также происходит его скрытие в очереди (скрытие для поиска), т.е. его нельзя будет получить действиями с поиском по условию; действием получения по ID можно будет «увидеть элемент», но робот зависнет на элементе в ожидании снятия блокировки (в зависимости от выставленного тайм-аута).
- только на запись - когда элемент заблокирован на запись (роботом или пользователем), другой робот не может изменить его значения.
- и на чтение, и на запись - соблюдаются одновременно два условия, описанных выше, то есть робот не сможет ни изменить элемент, ни прочитать его.
Результат:
Программный робот отработал успешно. Получена коллекция с тремя записями (элементами).
Получить элемент по ID/ Get element by ID¶
Пример использования
Задача: есть процесс по обработке заявок и существует элемент (заявка) в очереди. Необходимо заблокировать его на чтение и на обновление, так как далее с заявкой работать не нужно и робот не должен видеть ее в списке и обрабатывать. Так же, необходимо записать в переменные «Теги» и «Приоритет» значения элемента.
Решение: воспользоваться действием «Получить элемент по ID»
Реализация:
- Создать переменные «Коллекция» (тип коллекция») и «Число приоритетов» (тип число), в которые будут записаны требуемые по условию данные элемента.
- Перетащать на рабочую область действие «Получить элемент по ID».
- Настроить параметры действия:
Заполнить поле «ID элемента». Проверить чек-бокс = true в полях «Заблокировать на чтение», «Заблокировать на обновление».
- Заполнить поля «Теги» и «Приоритет» (раздел «Результаты»), ранее созданными переменными.
- Запустить робота по кнопке «Старт» в верхней панели.
Результат:
Программный робот отработал успешно. В переменные «Теги» и «Приоритет» записаны требуемые значения.
Элемент заблокирован на чтение и запись.
Получить элемент по условию/Get element by condition¶
Пример использования
Задача: существует процесс по обработке заявок и в очереди Test1 имеются элементы (заявки). Необходимо найти элемент (заявку) с приоритетом в интервале от 110 до 112, со статусом «Новый» ( вернуть первый элемент подходящий под данные условия). Так же применить параметры: тип сортировки- по уменьшению даты создания , заблокировать элемент на чтение и запись.
Решение: воспользоваться действием «Получить элемент по условию».
Реализация:
- Перетащать действие «Получить элемент по условию» и настроить его параметры:
поле «Группа» заполнить значением «group1»; поле «Очередь» заполнить значением «Test1»; поле «Статус» заполнить значением «Новый»; поле «Min. приоритет» заполнить значением «110»; поле «Max приоритет» заполнить значением «112»; поле «Тип сортировки» заполнить значением «По уменьшению даты создания»; проставить чек-боксы = true в полях «Заблокировать на чтение», «Заблокировать на обновление».
- При необходимости записи результатов действия в переменные заполнить соответствующие поля в разделе «Результат».
- Запустить робота по кнопке «Старт» в верхней панели.
- Если необходимо получить элементы с определенными тегами, то необходимо заполнить поле «Теги», указав названия тегов элементов. (Например, получение заявки, содержащую определенные теги)
- Если необходимо получить элементы с определенным приоритетом (например, получение заявок с приоритетом от 1 до 3), то следует заполнить поля «Min. приоритет» и «Max. приоритет» указав значения 3 и 1 соответственно.
- Если необходимо получить элементы с группировкой по дате создания (например, с 12.08.2022 4:00 по 14.08.2022 4:00) необходимо указать даты и время в соответствующих полях: «Min.дата и время создания», «Max. дата и время создания» (например, получение заявок, созданных в определенном интервале времени).
- Если необходимо получить коллекцию элементов с группировкой по дате обновления (например, 15.08.2022 5:00 по 17.08.2022 5:00) необходимо указать даты и время в соответствующих полях: «Min.дата и время обновления», «Max. дата и время обновления» (например, получение заявок, обновленных в определенном интервале времени).
- Если необходимо необходимо отсортированные элементы (например, по увеличению приоритета заявок), то необходимо заполнить параметр «Сортировка». Сначала будут найдены все подходящие элементы, а затем отсортированы; действие вернет первый элемент из отсортированного списка.
- Если необходимо завершить обработку элемента (например, требуется перевести заявку в статус «Обработан» и сделать ее недоступной для роботов), то следует установить чек-бокс «Завершить обработку элемента» = true.
- Если необходимо заблокировать элемент на обновление и/или чтение (например, есть заявка, которая должна быть заблокирована на обновление и/или чтение, т.е робот в дальнейшем не сможет ее видеть или/и редактировать), то следует установить чек-бокс в полях: «Заблокировать на чтение»/»Заблокировать на обновление».
Элемент очереди может быть заблокирован роботом (на чтение иили запись).
- только на чтение - когда элемент заблокирован на чтение, по-умолчанию также происходит его скрытие в очереди (скрытие для поиска), т.е. его нельзя будет получить действиями с поиском по условию; действием получения по ID можно будет «увидеть элемент», но робот зависнет на элементе в ожидании снятия блокировки (в зависимости от выставленного тайм-аута).
- только на запись - когда элемент заблокирован на запись (роботом или пользователем), другой робот не может изменить его значения.
- и на чтение, и на запись - соблюдаются одновременно два условия, описанных выше, то есть робот не сможет ни изменить элемент, ни прочитать его.
Результат:
Программный робот отработал успешно.
Данный элемент заблокирован на чтение и запись.
Разблокировать элемент/Unlock item¶
Пример использования
Задача: существует процесс по обработке заявок роботом, одна из заявок заблокирована и не доступна для чтения и изменения роботом, необходимо ее разблокировать.
Решение: воспользоваться действием «Разблокировать элемент».
Реализация:
- Перетащить действие «Разблокировать элемент» на рабочую область и настроить его параметры:
В поле «ID элемента» указать переменную, содержающую ID элемента, который нужно разблокировать. ID элемента можно посмотреть на панели по управлению очередями в колонке «Индентификатор», а также ID элемента можно получить с помощью действий: Добавить элемент, Получить элемент по условию. В полях «Отключить блокировку на чтение» и «Отключить блокировку на обновление» проставить чек-бокс = true.
- Запустить робота по кнопке «Старт» в верхней панели.
Результат:
Программный робот отработал успешно. Блокировки на чтение и на запись сняты.