
Удаляет заявки из заданного объекта Queue и добавляет их к содержимому поступающей заявки-контейнера. Объект Queue может быть задан как графически, путем соединения его порта out с портом inPickup этого объекта Pickup, так и с помощью параметра Объект Queue (в случае одновременого использования обоих способов заявки будут извлекаться из объекта, указанного в параметре).
По прибытии заявки в порт in объект Pickup просматривает в цикле заявки, содержащиеся в очереди объекта Queue и выбирает оттуда заявки согласно выбранному в параметре Подбирать режиму: либо Все заявки из очереди, либо первые N заявок (Заданное количество (если доступно)), либо только те заявки, для которых выполняется заданное Условие. Вся операция занимает нулевое время.
Условие может зависеть как от добавляемой заявки, так и от партии заявок. Операция занимает нулевое время: как только партия заявок поступает в объект Pickup, она сразу его покидает.
Обратите внимание, что когда для заявки вычисляется Условие, проверяющее, следует ли извлечь ее из очереди, эта заявка все еще находится в очереди. На момент же выполнения Действия при подборе заявка уже удалена из очереди и добавлена в заявку-контейнер.
Приведем некоторые примеры условия выбора заявок:
true - из очереди будут извлечены все заявки
container.contents.size() <= maxSize - будут извлечены не более maxSize первых заявок
entity instanceof Cat and ((Cat)entity).age < 3 - только коты не старше 3 лет
Впоследствии Вы можете извлечь заявки из заявки-контейнера либо с помощью объекта Dropoff, либо (если при этом нужно будет удалить саму заявку-контейнер) - с помощью Unbatch. Если же Вам нужно просто группировать Ваши заявки, то, возможно, удобнее будет использовать для этого не Pickup, а Batch.