Имя: Пароль:
1C
1С v8
ДО как отменить выполнение задачи ознакомление и отправить на повторное согласование?
,
0 Gorr
 
06.09.17
12:37
ДО 2.1.10. Если в задаче ознакомиться с результатами согласования (не согласовано), нажать кнопку  завершить согласование, то процесс завершится но предмет при этом согласован не будет. Как отменить неверное нажатие и отправить предмет на повторное согласование?
Интересно так же какие вообще существуют возможности корректировки процессов?
1 Fedor-1971
 
06.09.17
13:58
(0) посмотри на схему бизнес-процесса, если Завершить согласование его останавливает, то варианта два:
- либо сделать кнопку типа "Отправить на согласование", которая возобновит работу бизнесс-процесса
- либо делать новое согласование

По уму, там должна быть кнопка что-то типа "Отозвать на доработку" или просто "Доработка" предназначенная для ситуации  "Ой, я забыл(-ла) ..... Пока не согласовывайте"
2 Gorr
 
06.09.17
16:53
(1) Так там есть кнопка "согласовать повторно", но если нажать "Завершить согласование", все процесс завершается и больше никаких кнопок мы там не увидим.
Вопрос в том как отменить "нажатие" и возобновить процесс пустив его по другому направлению?

"По уму" там никакой кнопки не должно быть. Процесс и так не куда не движется пока не нажата одна из кнопок.
3 Fedor-1971
 
06.09.17
17:08
(2) ага,
нажали "согласовать" - согласующих 2: один в наличии, второй в отпуске - нужна кнопка отозвать на доработку или будем ждать выхода из отпуска?
"Завершить согласование" - сначала отправили на согласование, но по каким-то причинам решили вообще не согласовывать. Т.е. бизнес-процесс полностью останавливается (возобнови руками задачу для согласования и сам бизнес-процесс и всех делов)
"Согласовать повторно" - получили нечто на согласование, исполнитель согласовал, потом передумал и согласовал повторно, например, оставил комментарии или ещё чего (сегодня Да, завтра Нет)
4 Gorr
 
06.09.17
17:13
(3)
возобнови руками задачу для согласования и сам бизнес-процесс и всех делов
- Вопрос как раз в том как это сделать. Даже не сильно важно руками или программно. Важно понимать то, что нужно сделать с объектом, что бы он поменял свое состояние.
5 Fedor-1971
 
06.09.17
17:21
(4) последняя Задача.Выполнена=Ложь; БизнесПроцес.Завершен=Ложь; - именно в такой последовательности, если наоборот, бизнес-процесс определит отсутствие текущих задач и завершится автоматом
6 Gorr
 
06.09.17
17:22
Вообще, в литературе описаны только прямые процессы "только вперед" или как прервать процесс. о том как их сторнировать я ни слова не нашел
7 Fedor-1971
 
06.09.17
17:28
(6) в ЖКК про них неплохо написано (в плане что будет если выставить признаки завершения руками)
А зачем его сторнировать? Бизнес-процесс просто завершается, единственное, что желательно сделать - это выставить некий флаг завершения (или статус) типа "Норма" или "Отказан"
8 Genayo
 
06.09.17
17:56
(0) Посмотри, какие записи в какие регистры, задачи и бизнес-процессы происходят при нажатии этой кнопки. Потом подумай, сколько всего придется сделать, чтобы вернуть все назад. И пойми, почему сторнирования в ДО нет совсем.
9 Gorr
 
06.09.17
18:04
(8) то, что нет это еще ничего не значит. возможно появится позже. Как минимум в частных ситуациях это вполне возможно.
10 Genayo
 
06.09.17
18:18
(9) Такие случаи настолько редки, что ради них этого точно не сделают. Пока еще 1С не взяла курс на написание конфигураций для криворуких дебилов.
11 Fedor-1971
 
06.09.17
18:21
(8) по идее ничего страшного не произойдёт, БП просто станет на предыдущую точку перед закрытием и дальше пойдёт штатное согласование (и штатное разнесение информации). Возможно придётся вернуть несколько задач в живое состояние (тех кого обломили на согласовании) и опять же возможно появятся дублирующие статусы, если они есть(например, начат ДД.ММ.ГГГГ,  согласован ДД.ММ.ГГГГ, остановлен ДД.ММ.ГГГГ, согласован ДД.ММ.ГГГГ, закрыт ДД.ММ.ГГГГ)

(10) Типовые достаточно устойчивы даже к деятельности программеров, а пользователь что-то сильно погнуть не сможет (не, есть уникумы, тут не поспоришь)
12 Genayo
 
06.09.17
18:25
(11) Вы с документооборотом от 1С вообще работали? Там кроме задач и БП еще десятки вспомогательных регистров откатывать надо.
13 Fedor-1971
 
06.09.17
18:29
(12) зачем? они не рассчитаны на появление петель информации?
ТС попробует и нам, может быть, расскажет что получилось.
14 Genayo
 
06.09.17
18:33
(13) Затем, что иначе дальше все будет работать некорректно. А ТС и не попробует, и не расскажет. Видно, что теоретик.
15 Fedor-1971
 
06.09.17
18:44
(14) некорректно будет работать (отображать информацию) до утверждения, т.е. тот период времени пока бизнес-процесс не двинется по маршруту (нужно смотреть на схему, сколь он длителен). А коль прибежали с воплями "А-а-а верни всё взад" явно период будет коротким.

Так разрабатывают типовые тоже не глупые люди, если я додумался как сделать устойчивые к возобновлению бизнес-процессы, они то уж точно заложили такую возможность, только кнопки не выдали для широкой общественности
16 Gorr
 
07.09.17
09:50
(14) Понятно, что не все так просто. Как минимум нужно решить, что делать с задачами порожденными бизнеспроцессом в результате принятия неверного решения. С регистрами сведений как раз особой сложности я не вижу в отличии от ссылочных типов данных.
17 Bigbro
 
07.09.17
09:55
не нужно ничего стронировать. завершили один процесс, запустили новый, точно такой же по тому же шаблону но вручную удалив из него пройденные этапы. все.
самый простой и рабочий вариант.
18 пипец
 
07.09.17
09:56
(16) тут нюанс, если было МЕСТО остановленного и не согласованного бизнес процесса , по уму, ВСЕ порожденные задачи нужно или закрывать как ошибочные или как то иначе думать, но они ДОЛЖНЫ быть в наличии, потому что бизнес процесс имел место быть ... общая логика такая
ЗЫ если хотите удалять все нафинг - то это не документооборот а регистрация ПРАВИЛЬНЫХ решений
19 Bigbro
 
07.09.17
11:02
а полное удаление - муторная тема, там по всем регистрам надо лазить, результаты выполнения задач, этапы выполнения задач, инструментов для автоматической подчистки хвостов нет, вручную крайне неудобно это делать.