|
Если возможность в ДО 2.1 применить действие "Обработка" для нескольких процессов | ☑ | ||
---|---|---|---|---|
0
Momus
26.05.23
✎
15:08
|
Перед запуском определенных процессов необходимо выполнить одно и то же действие. Для этого в шаблоне процесса каждого добавил действие "Обработка" и там провожу определенные операции. Эта обработка одинакова для каждого из этих процессов. Можно ли как-то оптимизировать, чтобы не приходилось менять эту "обработку" в каждом шаблоне?
|
|||
1
Momus
26.05.23
✎
15:24
|
пока только один вариант на уме - это событие -> дополнительный обработчик бизнес-события. Но свои манипуляции хотелось бы сделать еще на этапе заполнения процесса
|
|||
2
Масянька
26.05.23
✎
15:26
|
(0) А нельзя это сакральное действие "Обработка" проводить для нужных видов документов?
|
|||
3
Масянька
26.05.23
✎
15:27
|
+ (2) Хотя, нет - разницы никакой...
А что за действие-то? |
|||
4
Momus
26.05.23
✎
15:29
|
(3) Изменить исполнителей по определенному алгоритму, одинаковому для кучи процессов
|
|||
5
Масянька
26.05.23
✎
15:43
|
(4) Зачем?
|
|||
6
Momus
26.05.23
✎
15:45
|
(5) потому что изначально исполнители не те наверно?
|
|||
7
Donkey_hot
26.05.23
✎
15:46
|
(0) А в общий модуль вынести алгоритм не вариант? В "обработке" оставить только вызов с необходимыми параметрами?
|
|||
8
Масянька
26.05.23
✎
15:47
|
(6) А зачем исполнители в документе?
У нас исполнители в процессах. |
|||
9
Donkey_hot
26.05.23
✎
15:48
|
(6) Плюс еще как вариант - автоподстановки.
|
|||
10
Momus
26.05.23
✎
15:50
|
(7) ну как вариант, да. В ДО просто столько фишек из коробки есть, мб есть и на мой случай
|
|||
11
Momus
26.05.23
✎
15:51
|
(9) их и использую, но проблема заключается в том, что количество исполнителей заранее неизвестно и зависит на самом деле от базы, интегрированной с ДО
|
|||
12
Масянька
26.05.23
✎
15:53
|
(11) Извините, что я вмешиваюсь... А нельзя в процессе по условию добавлять?
|
|||
13
Donkey_hot
26.05.23
✎
15:53
|
(10) Я подобную схему использовал в бизнес-событиях, в сам пользовательский обработчик только вызов, имя функции = имени события (для удобства), а всю логику в общий модуль расширения. Отлаживать проще, по крайней мере.
|
|||
14
Momus
26.05.23
✎
15:55
|
(12) не совсем понял о чем речь
|
|||
15
Momus
26.05.23
✎
15:58
|
(13) события не хочу использовать из-за блокировки данных, к тому же гораздо нагляднее, если вся логика процесса описана в шаблоне. В отдельный модуль вынести хорошая идея, жаль только изменять не очень удобно. Динамические обновления стараюсь не использовать, даже если меняется всего программный код
|
|||
16
Масянька
26.05.23
✎
15:59
|
(14) https://postimg.cc/nMp3FhH9 - последняя колонка (выделено синим условия (так выглядит - https://postimg.cc/v1DdStKM))
|
|||
17
Масянька
26.05.23
✎
16:00
|
+ (16) https://postimg.cc/v1DdStKM
|
|||
18
Momus
26.05.23
✎
16:05
|
(16) если я правильно понял, то в шаблоне у вас изначально есть определенный список согласующий лиц, в котором затем условием маршрутизации вы отсекаете лишних исполнителей?
|
|||
19
Momus
26.05.23
✎
16:08
|
(18) если это так, то такой вариант, увы, мне не подходит, т.к. список исполнителей заранее неизвестен
|
|||
20
Donkey_hot
26.05.23
✎
16:11
|
(15) Программный модуль в расширении обновлять это ИМХО совсем безопасная манипуляция, даже пользователям такое доверили. Зато можно точки останова ставить, а набитый в Предприятии код как отлаживать? Только через ЖР. В общем, я плюсОв наблюдаю больше. Решение за Вами, разумеется.
|
|||
21
Donkey_hot
26.05.23
✎
16:13
|
(20) А все-таки, действительно, пример того, что должно произойти. Исполнитель поменяться где должен? В этапе процесса?
|
|||
22
Momus
26.05.23
✎
16:14
|
(20) я понимаю, что безопасно) Такова политика предприятия, ибо после бездумных обновлений предыдущего программиста пришлось чистить кэш куче пользователей
|
|||
23
Масянька
26.05.23
✎
16:20
|
(19) Ты бы описали алгоритм...
В ссылке условие: если есть признак ЭЦП - идет (процесс) по ветке с Диадоком, если нет - идет (процесс) через тендерную площадку. |
|||
24
Масянька
26.05.23
✎
16:21
|
+ (23) Причем, это 6-ой этап комплексного процесса.
|
|||
25
Momus
26.05.23
✎
16:21
|
(23) ну а список-то исполнителей фиксированный?
|
|||
26
Масянька
26.05.23
✎
16:24
|
(25) Я не вижу разницы.
Задать условие: если что-то1 - исполнитель = Иванов, если что-то2 - Исполнитель = Сидоров, если что-то3 - Исполнитель = Печкин. |
|||
27
Momus
26.05.23
✎
16:24
|
(21) Исполнители определяются в интегрированной базе, моя задача в ДО назначить их исполнителями при создании документа. Исполнители в доп. реквизитах, которые прописаны в автоподстановках, но их количество нефиксированное: может и 1 исполнитель, а может и 10 быть в документе. Собственно суть обработки - это заменить исполнителей и убрать лишние задачи. Если, например, будет задача без исполнителя, которая никогда не стартанет (например, из-за условия маршрутизации), то автоматический старт невозможен.
|
|||
28
Momus
26.05.23
✎
16:24
|
(26) а если их может быть 100?
|
|||
29
Momus
26.05.23
✎
16:25
|
не прописывать же 100 условий...
|
|||
30
Donkey_hot
26.05.23
✎
17:56
|
(27) Назначить исполнителями в определенные этапы процесса, а лишние этапы удалить? И заполнить, видимо, при создании процесса, а не документа?
|
|||
31
Donkey_hot
26.05.23
✎
17:57
|
(30) Автоподстановка ведь и массив может возвращать. А ненужные можно вешать на служебного пользователя и выполнять автоматически. Это не то, чтобы рекомендация, так - варианты накидываю)
|
|||
32
Bigbro
26.05.23
✎
18:25
|
сделайте вызов функции в шаблоне процесса.
а сама функция пусть долбится к вашей интегрированной базе и получает там исполнителей, которых вы дальше уже будете в процессе использовать. через DMService или Rabbit - вроде проверенные варианты. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |