Проблема с обработкой одного сигнала в нескольких бизнес-процессах
Добрый день, подскажите, пожалуйста, как решить такую проблему. У нас имеется несколько бизнес-процессов, в которых совпадают начальные сигналы (сигнал срабатывает при добавлении записи в таблицу).
После обработки сигнала, в бизнес-процессах стоит блок чтение данных из таблицы, в которую добавилась запись. И периодически возникают ситуации, когда чтение данных работает в одном процессе, а в других - чтение данных возвращает, что нет такой записи.
Хотя id добавляемой записи передается во все бизнес-процессы по сигналу.
Я пробовала убрать блок чтение записи, и после срабатывания сигнала, у меня вызывался скрипт, где я делала селект по id добавляемой записи, и селект возвращается пустой.
Такой проблемы не наблюдается, если сигнал на добавление записи используется только в одном бизнес-процессе.
Нравится
Ну, здесь очевидным кажется свести все процессы в один, а дальше запускать существующие процессы как подпроцессы.
Татьяна,
Ну так у вас и получится - пришел сигнал, после чего запустилось N параллельных и последовательных подпроцессов. Т.е. будет один высокоуровневый процесс со стартовым сигналом и списком запускаемых процессов, а большие процессы вы запускаете из него.
Александр,
да, я вас поняла. У нас каждый бизнес-процесс является объединением множества событий. Пример во вложении. Если использовать ваше решение, то необходимо разделить бизнес-процесс на части, чего мы хотим избежать. Возможно, я что-то неправильно поняла
Татьяна,
Понял. Тогда дальше сказать тяжело - надо смотреть на совокупность процессов в целом. Но вообще в любой разработке дробление на более мелкие независимые части является хорошей практикой) Попробуйте обратиться к своему CSM менеджеру, может быть что-нибудь хорошее подскажет, увидев ваши процессы целиком.
Татьяна, возможно даже лучше будет обратится не к CSM, а сразу в техническую поддержку Terrasoft.