|
Бизнес-процесс и РБД | ☑ | ||
---|---|---|---|---|
0
RolandGrey
17.05.16
✎
10:41
|
всем хорошего кофе/чая и настроения :)
ситуация такая - есть бизнес-процесс, есть рбд. задачи ушли в узлы, там выполнились. Соответственно выполненные задачи пришли в центр, но бп не перешел на следующий этап. как это пофиксить, кто сталкивался? |
|||
1
Cyberhawk
17.05.16
✎
10:43
|
Так БП тоже передавай из узлов в центр
|
|||
2
RolandGrey
17.05.16
✎
10:51
|
(1) очевидный вариант, но он не подходит.
хотелось бы обойти. |
|||
3
RolandGrey
17.05.16
✎
10:52
|
и с другой стороны не факт что будет лучше:
придет 3 копии бп с разными выполненными задачи в центр и нефакт что там он прочухается и пойдет дальше. |
|||
4
aleks_default
17.05.16
✎
10:59
|
(2) в (1) единственно правильный вариант.
БП может быть изменен, удален, и т. п. Все эти изменения также должны мигрировать. |
|||
5
Cyberhawk
17.05.16
✎
11:02
|
"придет 3 копии бп с разными выполненными задачи в центр" // Если у тебя каждый раз разная последовательность выполнения каких-то трех задач приводит в итоге каждый раз к разному состоянию БП, то что-то у тебя не так с БП...
|
|||
6
Cyberhawk
17.05.16
✎
11:03
|
Если хочешь тотального контроля, то обменивайся не задачами этого БП, а отстраненными от БП сущностями (например, задачами без привязки к БП), а при приезде этих отработанных задач в центр уже дергай выполнение реальных (связанных с картой БП) задач...
|
|||
7
RolandGrey
17.05.16
✎
11:05
|
не, стоп.
есть стадия бп - 3 параллельные задачи для 3 узлов, после выполнения которых бп должен пойти дальше. сейчас эти задачи приходят в центр выполненными, но бп не двигается дальше сам. Приходится дергать вручную. (6) интересная идея |
|||
8
Cyberhawk
17.05.16
✎
11:09
|
(7) Ну ты же понимаешь, что в каждом из узлов БП не пройдет через точку слияния, т.к. будет выполнена только одна из трех задач.
А чтобы в центре БП пошел дальше, нужно выполнить последнюю задачу там. При загрузке этих всех задач в режиме загрузки (ОбменДанными.Загрузка = Истина) у тебя БП и не сдвигается... |
|||
9
Cyberhawk
17.05.16
✎
11:10
|
В общем, либо загружай задачи в центр не в режиме загрузки, либо автозадание какое-нибудь повесь, чтобы оно шерстило определенные задачи на предмет выполнения и двигало БП дальше
|
|||
10
aleks_default
17.05.16
✎
11:11
|
(6) если задача без привязки к БП, то как он поймет какой БП они должны двигать? Делать параллельную связь задачи с БП?
<придет 3 копии бп с разными выполненными задачи в центр и нефакт что там он прочухается и пойдет дальше.> И что? Это будет не три копии БП а три этапа состояния БП. Все равно в итоге сохранится только последнее изменение. Если конечно обмен правильно обрабатывает коллизии. |
|||
11
RolandGrey
17.05.16
✎
11:17
|
(9) насчет режима загрузки очень интересно.
Надо попробовать будет. И кстати когда в целях эксперимента в центре дернул на выполнение каждую из 3 выполненных задач - кусок после слияния затроился. Что как бы говорит и том что можно дернуть любую задачу? |
|||
12
Cyberhawk
17.05.16
✎
11:18
|
"кусок после слияния затроился" // Потому что естественным путем ты не достигнешь такого состояния, какое было после загрузки трех выполненных задач в режиме загрузки...
|
|||
13
Cyberhawk
17.05.16
✎
11:20
|
"можно дернуть любую задачу?" // Смотря что у тебя там повешено на каждую из задач - возможно, в какой-то из них будет специфичный для интерактивного выполнения код, который в узле не выполнился, а в центре - должен.
Поэтому "подергать" нужно все задачи, что прилетают из узлов |
|||
14
aleks_default
17.05.16
✎
11:22
|
(9) ну и получишь увеличение времени обмена на время выполнения задачи.
|
|||
15
aleks_default
17.05.16
✎
11:22
|
короче, вы я так понял любители геморроя
|
|||
16
Cyberhawk
17.05.16
✎
11:25
|
(14) Ну, если уж хочется красиво и без задержек в обмене, то вроде уже описал ранее - обмениваться не самими задачами, а объектами-маркерами-сигнализаторами. Отвечая на (10), то конечно маркер нужно будет связывать с реальной задачей, а после обмена шерстить маркеры и дергать реальные задачи
|
|||
17
RolandGrey
17.05.16
✎
11:25
|
(13) после слияния просто создаются новые задачи - и создалось 3 набора этих задач. На сами задачи по выполнению ничего не навешено.
|
|||
18
Cyberhawk
17.05.16
✎
11:26
|
Ну, либо обмен задачами еше вынести в отдельный план обмена для исключения влияния ошибок при загрузке на другие обменивающиеся объекты
|
|||
19
Cyberhawk
17.05.16
✎
11:29
|
(17) Ну вот это и есть косяк, некритичный, конечно - ведь БП ведет себя согласно схеме и при выполнении последней из задач он создает следующие задачи.
Чтобы такого не было, нельзя сначала записывать в режиме загрузки три выполненные задачи, а потом их уже еще раз выполнить - контролируй при загрузке все самостоятельно. Как враиант - если это последняя задача перед точкой слияния, то выполняй только ее... |
|||
20
Cyberhawk
17.05.16
✎
11:29
|
*если это последняя _выполненная_
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |