Ожидать сообщения из очереди

Wait queue

Компонент ожидает появление нового элемента в очереди обмена данных. При появлении элемента, робот извлечет его из очереди Оркестратора и сохранит в переменную. Извлеченный элемент перейдет из состояния New в InProgress. Это означает, что он будет доступен вашему роботу для дальнейшей обработки в рамках сценария автоматизации. Подробнее о статусах элемента см. здесь.

Если во время выполнения компонента очередь окажется пустой, то робот будет опрашивать очередь в течение времени, заданного в свойстве Time. Это отличает данный компонент от других способов извлечения элемента, например, от компонента Получить из очереди.

Свойства

Символ * в названии свойства указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.

Переменная, в которую будет записан элемент, может быть в виде объекта, таблицы или строки. Тип данных переменной определяется только вашим выбором.

Свойство
Тип
Описание

Процесс:

Очередь*

String

Название очереди в Оркестраторе. Пример: "PrimoTestQueue"

Time

Int32

Период опроса очереди в миллисекундах. По умолчанию 1000. С версии 1.24.8 таймаут по умолчанию составляет 30000 мс.(30 секунд). Свойство переименовано → Период

                |

| Вывод: | | | | Таблица | DataTable | Название переменной, которая будет хранить полученный элемент очереди в виде таблицы | | Результат | String | Название переменной, которая будет хранить полученный элемент очереди в виде строки | | Элемент | LTools.Enterprise.Model.QueueItem | Название переменной, которая будет хранить полученный элемент очереди в виде объекта |

Только код

Пример использования элемента в процессе с типом Только код (Pure code):

//Свойства элемента:
//wf: [LTools.Common.Model.WorkflowData] ссылка на вызывающий алгоритм
//queue - Очередь: [String] Имя очереди
//robot - Статус элемента
object ret = LTools.Enterprise.OrchestratorApp.PeekQueue(wf, "PrimoTestQueue", LTools.Enterprise.Model.QueueItemStates.Any);
		
//Вывод в лог
LTools.Workflow.PrimoApp.AddToLog(wf, "Полученное значение из очереди - " + ret.ToString(), LTools.Enums.LogMessageType.Info);

Дополнительно

Last updated