Получить из очереди по фильтру

Робот получает элементы из очереди Оркестратора в соответствии с настроенным фильтром. Результат сохраняется в переменную.
Результат фильтрации сохраняется в переменную вывода – в свойство Элемент.
Получить и сразу занять элементы
Обратите внимание, что в свойствах компонента есть параметр Занимать. Активный параметр позволяет сразу же извлечь полученные элементы из очереди. Извлекать из очереди возможно только новые элементы (статус New) – то есть те, которые еще не занял ни один робот.
Если элемент извлечен, то другие роботы не смогут взять его в работу. Данный элемент перейдет из статуса New в статус InProgress. В дальнейшем только ваш робот сможет изменить состояние извлеченного элемента или удалить его из очереди.
Использование компонента без чекбокса Занимать не изменяет статус элемента в очереди.
Перед началом работы
- Требуется активное подключение к Оркестратору
- Элемент должен существовать в указанной очереди
Свойства
Описание общих свойств см. в разделе Свойства элемента.
Обязательным для заполнения является только свойство Очередь, остальные свойства настраиваются выборочно.
Вывод:
- Элемент [List<LTools.Enterprise.Model.QueueItem>] – название переменной, в которую запишется список элементов очереди, полученных по фильтру.
Процесс:
- Занимать [Boolean] – определяет, требуется ли извлекать из очереди полученные элементы. Возможные значения:
галочка отсутствует– элементы не нужно извлекать из очереди. В этом случае статус элементов, полученных по фильтру, не изменится. Значение по умолчанию.галочка установлена– будет получен список элементов, соответствующих фильтру, которые сразу извлекаются из очереди для обработки вашим роботом. Такие элементы перейдут из статуса New в InProgress и станут недоступны для обработки другими роботами.
- Кол-во [Int32] – определяет, какое количество элементов очереди вы хотите получить. Если не заполнено, вернется 1 элемент. Пример:
10. - Логика – настраивает логику поиска элемента по тегам. Доступные значения:
Or– будет учитываться один и более тегов. Значение по умолчанию.And– у элемента должны быть все перечисленные теги.
- Очередь* [String] – название очереди в Оркестраторе. Пример:
"Queque1". - Статус – фильтр по статусу элемента очереди. Возможные значения:
Any– статус элемента не важен. Значение по умолчанию.New– новый элемент.In progress– элемент извлечен из очереди определенным роботом, но еще не обработан.Success– элемент извлечен из очереди и успешно обработан.Error– элемент извлечен из очереди, но его обработка завершилась с ошибкой общего вида.Business Error– элемент извлечен из очереди, но его обработка завершилась с бизнес-ошибкой.
- Страница [Int32] – номер страницы очереди Оркестратора, на которой находится искомый элемент. Пример:
1. - Таймаут [Int32] – лимит времени операции (мс). Если по истечении лимита операция не выполнена, робот закончит работу с ошибкой. Таймаут по умолчанию составляет
5000мс (5 секунд). - Тэги [List<string>] – фильтр по тегам элемента очереди. Пример:
new List<string>() { "tag1", "tag2", "tag3" }. - Только свои [Boolean] – при установке галочки будут получены только те элементы, которые были добавлены в очередь с идентичной учетной записи, то есть тем же роботом.
- Фильтр [String] – фильтр очереди, указывается в виде регулярного выражения.
- Фильтр по значению [String] – фильтр по значению элемента, указывается в виде регулярного выражения. Пример:
"\w+". - *ID [String] - Идентификатор элемента.
- Удалить - Удалить после чтения.