description |
---|
Peek queue |
Компонент извлекает элемент в статусе New из очереди Оркестратора. В ответе возвращается первый элемент, вошедший в очередь (принцип FIFO). Извлеченный элемент сохраняется в переменную. Переменная может быть разных типов — строка, объект или DataTable. Выбор переменной осуществляется на ваше усмотрение.
Элемент, который извлекли из очереди, автоматически переходит из статуса New в статус InProgress. Такой элемент готов для дальнейшей обработки роботом. Другие роботы больше не могут его извлечь, изменить или удалить. Подробнее о статусах элементов очереди можно узнать здесь.
Для успешной работы компонента должна быть настроена связь Студии и Оркестратора.
Символ *
в названии указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.
Свойство | Тип | Описание | Пример |
---|---|---|---|
Процесс: | |||
Очередь* | String | Название очереди. Должно совпадать с названием в Оркестраторе. Значение чувствительно к регистру | "Queue name" |
Статус | LTools.Enterprise.Model.QueueItemStates | Определяет, следует ли извлекать из очереди элемент, добавленный повторно (в ответ на возникновение ошибки). Это значит, что если в настройках очереди включен параметр «На какие ошибки элемент должен ставиться в очередь повторно» и задано количество попыток, то в этом свойстве вы можете указать, должен ли робот извлекать повторные элементы. Обратите внимание, что в очереди Оркестратора все повторные элементы будут иметь статус New. Список значений: 1) New — извлечь только тот элемент, который ни разу не повторялся. Значение по умолчанию. 2) Error — извлечь элемент, который был повторен 1 раз. 3) Repeated Error — извлечь элемент, который повторно ставился в очередь более 1-го раза. 4) Any — извлечь любой элемент в статусе New, вне зависимости от того, был он повторен или нет |
|
Таймаут | Int32 | Лимит времени операции (мс). Если по истечении лимита операция не выполнена, робот закончит работу с ошибкой | 5000 |
Вывод: | |||
Результат | String | Строковая переменная для хранения полученных данных | |
Элемент | LTools.Enterprise.Model.QueueItem | Переменная для хранения элемента очереди в виде объекта | |
Таблица | DataTable | Переменная для хранения полученных данных в виде таблицы |
Оркестратор предоставляет возможность настроить реакцию на невозможность извлечь элемент по FIFO. Реакция настраивается в следующих параметрах очереди обмена данными:
- Реакция на невозможность извлечения элемента по FIFO;
- Кол-во попыток при извлечении элемента по FIFO.
Ознакомьтесь с данными параметрами, чтобы использовать подходящий алгоритм обработки очереди по FIFO.
Ниже приведен пример использования элемента в процессе с типом Только код (Pure code):
{% tabs %} {% tab title="C#" %}
object ret = LTools.Enterprise.OrchestratorApp.PeekQueue(wf, "queue");
{% endtab %}
{% tab title="Python" %}
ret = LTools.Enterprise.OrchestratorApp.PeekQueue(wf, "queue")
{% endtab %}
{% tab title="JavaScript" %}
var ret = _lib.LTools.Enterprise.OrchestratorApp.PeekQueue(wf, "queue");
{% endtab %} {% endtabs %}
- Изменить статус в очереди — присваивает элементу финальный статус обработки.
- Удалить из очереди — удаляет элемент из очереди.