Добрый день!
В ходе процесса создается счет ( элемент - "счет"),
При его сохранении запускается задача, потом еще одна задача,
В результате выполнения этой задачи появляется вопрос пользователю "оплачен ли счет".
Если ответ - да,
то необходимо снова открыть тот же самый счет и внести в него изменения - внести сумму оплаты, статус оплаты. И если у счета указан статус оплачен, то процесс продолжается дальше.
Вопрос состоит в том, каким образом открыть тот же самый счет для изменений, а не новый?
Окно "редактирование данных" я так понимаю не подходит, потому что результатом действия должен быть статус счета, а не "данные отредактированы".
Версия 3.3.1
Спасибо
Нравится
Здравствуйте, Дарья!
Для того, чтобы при повторном открытии окна, открывалась карточка счета, созданного ранее, а не нового, Вам нужно:
1. в первом элементе открытия окна создать атрибут RecordID и указать для него некоторый параметр диаграммы (Вам необходимо создать этот параметр и назвать его, например InvoiceID) - см. img001;
2. для второго элемента открытия окна создать аналогичный атрибут и указать для него тот же параметр - img002.
В результате, при вызове второго элемента открытия окна, в данном параметре будет храниться ID счета, карточку которого нужно открыть.
Инна Безверхняя,
II линия службы поддержки Terrasoft
Спасибо.
А скажите, пожалуйста, а в скрипте как-то можно создавать эти атрибуты, потому что использовался элемент "счет", а не открытие окна, и нет визуальной настройки атрибутов.
Здравствуйте, Дарья!
Да, этот функционал можно реализовать и при помощи скриптов, если Вы использовали элементы "Счет".
При этом, для первого элемента "Счет" Вам не нужно ничего менять, а вот для второго элемента "Счет" нужно выполнить следующие действия:
1. Создать для него обработчик события OnBeforeExecute (img003);
2. Прописать в этом обработчике следующий скрипт:
function Action5OnBeforeExecute(ActionItem) { var Diagram = GetDiagramByItem(ActionItem); var InvoiceID = WFGetParamValue(Diagram, 'InvoiceID'); WFSetParamValue(ActionItem, ActionItem.Name + 'InvoiceID', InvoiceID); WFSetParamValue(ActionItem, 'Continue', true); debugger; }
3. Подключить в скрипт диаграммы Вашего процесса скрипт scr_WorkflowUtils;
4. В скрипте wa_InvoiceActionScript в функции wa_InvoiceActionOnExecute добавить четвертый параметр на вызове функции ShowEditWindowEx:
ShowEditWindowEx('wnd_InvoiceEdit', Attributes, DefaultValues, false);
Инна Безверхняя,
II линия службы поддержки Terrasoft