Прежде чем перейти к паттерну групповой обработки, смоделируем оформление разрешительной документации.
Сложность здесь в том, что товарные позиции заказа и разрешительные документы связаны как многие-ко-многим: для одной товарной позиции может потребоваться несколько разрешительных документов и наоборот, несколько товарных позиций могут закрываться одним и тем же разрешительным документом.
Схема, предусматривающая такие возможности –
Рис. 3. Асинхронное оформление разрешительной документации
Комментарии к схеме:
- Работа над разрешительными документами запускается параллельно с обработкой товарных позициях в цикле по объектам – по экземпляру подпроцесса на каждый документ.
- Событие-условие «Работа над разрешительными документами завершена» срабатывает, когда по всем разрешительным документам, требуемым для данной товарной позиции, есть какой-то результат (положительный или отрицательный).
