Ошибка закрытия Бизнес-Процесса
Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.
Доступ к форуму партнерам «1C-Рарус» по дистрибуции предоставляется на сайте
rarus-soft.ru
Читают тему
Помогите решить такую проблемму: есть модифицированный БП типа "ПРодажа." (описание выкладывал ранее в своих постах). в нем есть разветвление и использование вложенных БП типа "Договор".
Проблема собственно в том, что система не корректно отрабатывает завершение вложеного БП, и несмотря на то, что все нужные задачи из него выполены, не дает пользователю следующую задачу из главного БП, в моем случае "завершение". Подскажите, можно ли как-то принудительно завершить правильно БП "Продажа", или запустить задачу "Завершение" ?
БП "Продажа"
вложенный БП Договор создавали сам? или используется стандартный?
После всех вложенных БП нужно создать "Точку условия" типа договор подписан или нет, а уже потом на завершение. Попробуйте, отпишите результат пожалуйста, а то уже самому интересно
ТочкаМаршрутаПередСозданиемЗадач, ТочкаМаршрутаПриСозданииЗадач, ТочкаМаршрутаПриСозданииВложенныхБизнесПроцессов, ТочкаМаршрутаПриВыполнении.
Если их нет, то создайте и попробуйте еще раз свой БП, если не заработает, то уже после этого попробуйте создать новую точку.
В БП "Договор" как видите есть 2 независимых ветки. Эти задания делають всегда разные люди, кроме того на основе даного шаблона есть несколько видов БП. Один из вариантов, когда точки "Закриття документів" и "Контоль закриття документів" отключены.
Ошибка проявляеться, если мы пробуем закрывать задачу "Генерація", когда паралельная ветвь уже выполнена полностью, т.е. закрыты задачи "Оплата", "Податкова накладна", "Договір". В результате после того, как я мы 3 раза пробуем закрыть задачу "Генерація", оно ее чисто визуально закрывает, но задачу "Заершение" из материнского БП не создает. И текущим этапом вре равно считается "Генерація".
Мы нашли временный выход ситуации, но он не совсем корректен - если при закритии "Генерации" вываливается ерор, мы просто завершаем БП на текущем этапе успехом.
Ваше сообщение я передал разработчику, отвечающему на бизнес-процессы.
Он постарается сегодня воссоздать Вашу схему и проверить.
Откатитесь на предыдущую задачу и после этого сможете досрочно завершить БП
----------------
По поводу карты - разработчик создал такую же схему и обнаружил ошибку в коде. Ошибка возникала именно из наличия в карте ветки с двумя параллельными вложенными БП. Эта ошибка будет исправлена в ближ. релизе CRM 1.4
Но возможно у Вас несколько другая ошибка, потому что до исправления описанной выше ошибки разработчик не смог даже создать БП, а у Вас похоже он создается.
Поэтому нам необходимо знать, какой у Вас релиз CRM.
Вы ведь работаете в украинской локализации, и там до сих пор версия 1.3, а не 1.4? Тогда это большая проблема, поскольку изменения касались кода в защищенном общем модуле и защищенного кода, расположенного в DLL. Вы сами не сможете ничего исправить....
Единственное, Вы можете выслать cf-файл Вашей конфигурации, возможно мы сможет посоветовать как обойти проблему без изменений в защищенном коде, какой то "костыль" поставить.
Заодно проверим - у Вас такая же ошибка как в 1.4 или что-то другое.
Можно выложить через какой-нибудь обменник типа Dropbox или Народ-диск и ссылку мне в личку.
Получил Вашу конфигурацию.
Как я вижу, Вы добавили точи действия перед точками вложенных бизнес-процессов (в ветках разделения).
В таком варианте у Вас работает бизнес-процесс?
Да работает, только данные точки не задействованы - они фиктивные.
Можно в шаблоне маршрута эти точки отключить, задачи по этим точкам хоть и буду создаваться, но сразу выполненными и не будут отображаться в списке задач.
Можно в шаблоне маршрута эти точки отключить, задачи по этим точкам хоть и буду создаваться, но сразу выполненными и не будут отображаться в списке задач.
Так у меня так оно и работает. Проблема собственно в не в этом - а в том, что неправильно орабатывает обработчик завершения вложенного БП, если первой завершена правая ветвь вложенного БП "Договор".
неправильно орабатывает обработчик завершения вложенного БП, если первой завершена правая ветвь вложенного БП "Договор"
1. Я в Вашей конфигурации запустил БП "Продажа", при выполнении первой задачи выбрал вариант "ПЗ + УСЦ",
сформировались 2 вложенных БП.
2. Пошел выполнять правую ветку вложенного начиная с Оплаты, далее левую.
3. аналогично выполнил вложенный БП в левой ветке БП "Продажа"
в результате у меня создалась задача с этапом "Завершение".
Что-то я наверное не понимаю.
1. Создайте 2 пользователя
2. В адресации БП одного пользователя "припишите" в отдел "Бухгалтерия", второго в "Отдеж продаж"
3. Точкам "Генерация" и "Завершение" исполнителем ставите "Отдел продаж"
4. Точки "Оплата", "Податкова накладна" и "Договір" исполнитель - "Бухгалтерия"
5. Точки "Закриття документів", "Контроль закриття документів" деактивируйте как ненужные в шаблоне.
Дальше создайте БП, желалательно на основании события. Закройте задачу "Рахунок".
Потом возьмите к исполнению задачу "Генерация" но не закрывайте ее. Войдите в систему под другим пользователем и пройдите по ветке "Оплата" до конца. Потом опять поменяйте пользователя и попробуйте закрыть задачу "Генерация".
Если не проявиться, могу показать у себя на машине через TeamViewer.
Начала вываливаться ошибка при попытке завершения задачи "Генерация". (была ли у Вас такая ситуация?),
Выяснил, что если в карте маршрута для этой точки в обработчике события "При выполнении" вернуть процедуру "ТочкаМаршрутаПриВыполнении" (вместо процедуры "ВиконанняГенерації"), то перестает падать и нормально завершается вложенный БП.