Получить ресурс по условию Версия 7 (Java)

Группа действий: Оркестратор Подгруппа Очередь ресурсов


Описание

Действие выполняет поиск ресурсов по указанным условиям и возвращает первый подходящий ресурс. Если нужный ресурс не найден, действие ожидает его появления в течение установленного тайм-аута

Иконка действия


Параметры

Входные параметры

Очередь ресурсов                Название очереди ресурсов, в которой нужно искать ресурс.

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

Статус                                     Статус, который должен иметь ресурс. 
                                                           Поле с выпадающим списком значений:

Мин. приоритет                     Наименьшее значение приоритета, который может быть у ресурса. Вместе со значением из поля «Макс. приоритет» составляет диапазон поиска по приоритету.

Макс. приоритет                    Наибольшее значение приоритета, который может быть у ресурса. Вместе со значением из поля «Мин. приоритет» составляет диапазон поиска по приоритету.

Мин. дата создания               Наименьшее значение даты создания ресурса. Вместе со значением из поля «Макс. дата создания» составляет диапазон поиска по дате создания.

Макс. дата создания              Наибольшее значение даты создания ресурса. Вместе со значением из поля «Мин. дата создания» составляет диапазон поиска по дате создания.

Мин. дата обновления          Наименьшее значение даты последнего обновления ресурса. Вместе со значением из поля «Макс. дата создания» составляет диапазон поиска по дате обновления.

Макс. дата обновления         Наибольшее значение даты последнего обновления ресурса. Вместе со значением из поля «Мин. дата создания» составляет диапазон поиска по дате обновления.

Тип сортировки                     Тип сортировки найденных ресурсов. Действие сортирует найденные ресурсы и возвращает только первый ресурс из отсортированных.
                                                           Это поле в виде выпадающего списка со значениями:

Если выбрано значение "Без сортировки", будет возвращено значение первого найденного ресурса, подходящего под условия поиска.
При выборе конкретного типа сортировки, сначала будут найдены все ресурса, соответствующие указанным условиям поиска. Затем эти ресурсы будут отсортированы с учетом выбранного типа сортировки, и роботу будет возвращен 1й ресурс из отсортированного списка. 
Выбранный тип сортировки по приоритету, дате создания или дате обновления не учитывается, если во входных параметрах действия было указано конкретное значение приоритета, даты создания или даты обновления, соответственно.

Запретить чтение                  Если значение "true", действие заблокирует найденный ресурс на чтение и скроет его в очереди. Другие роботы не смогут найти скрытый ресурс при поиске
                                               по условию.

Запретить запись                   Если значение "true", действие заблокирует найденный ресурс на запись для других роботов.

Если значение параметра = true, т.е. нужно будет блокировать ресурс, действие будет искать только среди ресурсов, которые не имеют блокировки на запись, даже если он подходит под указанные условия поиска. Реализован такой вариант, чтобы не "зависать" на заблокированном ресурсе, когда в очереди могут быть другие "свободные" ресурсы.
Если блокировать на запись не надо, действие ищет в том числе и среди ресурсов, которые имеют блокировку на запись.

Завершить обработку          Если значение "true", действие получит значение и параметры ресурса, а затем изменит его статус на "Обработан". С этим статусом ресурс будет скрыт для роботов,
                                               даже при поиске по его идентификатору

Со стороны роботов такой статус у ресурса будет словно удаление ресурса, т.к. они больше не смогут найти этот ресурс. Причем не найдет даже тот робот, который сам же и выполнил это действие. Однако ресурс до сих пор будет в очереди, его сможет найти пользователь вручную через интерфейс Оркестратора.

Тайм-аут, мс                          Время ожидания появления в очереди подходящего ресурса. Если указано "-1", действие будет ждать бесконечно долго. Задается в миллисекундах.

Выходные параметры

  1. Теги - Коллекция строк, в которой каждый элемент - это отдельный тег ресурса.
  2. Приоритет - Приоритет ресурса среди других ресурсов очереди.
  3. Статус - Статус ресурса, который он имел до начала работы действия.
  4. Дата создания - Дата и время создания ресурса.
  5. Дата обновления - Дата и время последнего обновления ресурса.
  6. Значение - Значение ресурса.
  7. Идентификатор - Уникальный идентификатор ресурса.

Настройки

Свойство

Описание

Тип данных

Пример заполнения

Обязательность заполнения

Значение по умолчанию

Входные параметры

 

 

 

 

 

Очередь ресурсов

Название очереди ресурсов, в которой нужно искать ресурс.

Robin.String


Да


Теги

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

Robin.Collection


Нет


Статус

Статус, который должен иметь ресурс.

Robin.String


Да

Новый или В работе

Мин. приоритет

Наименьшее значение приоритета, который может быть у ресурса. Вместе со значением из поля «Макс. приоритет» составляет диапазон поиска по приоритету.

Robin.Numeric


Нет


Макс. приоритетНаибольшее значение приоритета, который может быть у ресурса. Вместе со значением из поля «Мин. приоритет» составляет диапазон поиска по приоритету.Robin.Numeric
Нет
Мин. дата созданияНаименьшее значение даты создания ресурса. Вместе со значением из поля «Макс. дата создания» составляет диапазон поиска по дате создания.Robin.DateTime
Нет
Макс. дата созданияНаибольшее значение даты создания ресурса. Вместе со значением из поля «Мин. дата создания» составляет диапазон поиска по дате создания.Robin.DateTime
Нет
Мин. дата обновленияНаименьшее значение даты последнего обновления ресурса. Вместе со значением из поля «Макс. дата создания» составляет диапазон поиска по дате обновления.Robin.DateTime
Нет
Макс. дата обновленияНаибольшее значение даты последнего обновления ресурса. Вместе со значением из поля «Мин. дата создания» составляет диапазон поиска по дате обновления.Robin.DateTime
Нет
Тип сортировкиТип сортировки найденных ресурсов. Действие сортирует найденные ресурсы и возвращает только первый ресурс из отсортированных.Robin.String
НетПо уменьшению приоритета
Запретить чтениеЕсли значение "true", действие заблокирует найденный ресурс на чтение и скроет его в очереди. Другие роботы не смогут найти скрытый ресурс при поиске по условию.Robin.Boolean
НетFalse
Запретить записьЕсли значение "true", действие заблокирует найденный ресурс на запись для других роботов.Robin.Boolean
НетFalse
Завершить обработкуЕсли значение "true", действие получит значение и параметры ресурса, а затем изменит его статус на "Обработан". С этим статусом ресурс будет скрыт для роботов, даже при поиске по его идентификатору.Robin.Boolean
НетFalse
Тайм-аут, мсВремя ожидания появления в очереди подходящего ресурса. Если указано "-1", действие будет ждать бесконечно долго. Задается в миллисекундахRobin.Numeric
Нет0

Выходные параметры

 

 

 

 

 

Теги

Коллекция строк, в которой каждый элемент - это отдельный тег ресурса.

Robin.Collection


 

 

Приоритет

Приоритет ресурса среди других ресурсов очереди.

Robin.Numeric


 

 

Дата создания

Дата и время создания ресурса.

Robin.DateTime


 

 

Дата обновления

Дата и время последнего обновления ресурса.

Robin.DateTime


 

 

Значение

Значение ресурса.

Robin.Object


 

 

ИдентификаторУникальный идентификатор ресурса.Robin.String


Особые условия использования

Отсутствуют

Пример использования 

Задача

Существует процесс, где имеется очередь ресурсов, необходимо получить приоритет первого подходящего ресурса со статусом "Новый".

Решение

Воспользоваться действием "Получить ресурс по условию", "Сообщение в лог". 

Реализация

  1. Перетащить на рабочую область действие "Получить ресурс по условию" и заполнить его параметры: 
    1. Поле "Очередь ресурсов" - Указать название очереди ресурсов, в которой нужно искать ресурс;
    2. Поле "Статус" - Указать статус, который должен иметь ресурс. В данном примере указываем статус "Новый";


  2. Перетащить на рабочую область действие "Сообщение в лог" и заполнить его параметры:
    1. Поле "Сообщение" - указываем приоритет полученный в результате действия "Получить ресурс по условию".


  3. Запустить робота по кнопке "Старт" в верхней панели. 


Результат

Программный робот отработал успешно. 

Получен приоритет первого подходящего ресурса со статусом "Новый". Сообщение выведено в лог.