Передача параметров в БП при его запуске из другой карточки
Добый день!
Нашел на форуме как запустить БП из другой карточки
Но к сожалению может плохо искал незнаю как мне передать несколько параметров в БП
То есть существует раздел запросы я содаю новый запрос и после сохранения нового запроса в базу должен запускаться БП (Задача) и автоматом проставляться некоторые поля которые указаны в карточке запроса откуда я вызываю БП. Как их можно передать ?
var WorkflowUSI = 'Workflow\\Diagrams\\wd_AgreementDemand';
var Now = new Date(System.Now()).getVarDate();
var ID = WorkflowEngine.StartWorkflow(WorkflowUSI, Now);
Нравится
Посмотрите скрипт scr_WorkflowUtils на предмет реализованных функций.
Также можно для запуска использовать scr_WorkflowUtils.WFStartByID(ID процесса, Массив названий параметров, Массив значений параметров)
var ParamNames = ['DemandID']; var ParamValues = [DemandID]; var Params = WFArrayToParams(ParamNames, ParamValues); var ID = WorkflowEngine.StartWorkflow(WorkflowUSI, Now,Params);
их потом вызывать надо или
ParamNames - должны соответсвовать названиям в dataset моего БП?
Вопрос решен
получение параметров идет через методы элементов БП
function NewDemandOnBeforeExecute(ActionItem) { var ParentDiagram = ActionItem.ParentItems.ParentDiagram; var DemandID = WFGetParamValue(ParentDiagram, 'DemandID'); var OwnerID = WFGetParamValue(ParentDiagram, 'OwnerID'); var AccountID = WFGetParamValue(ParentDiagram, 'AccountID'); var ContactID = WFGetParamValue(ParentDiagram, 'ContactID'); if (!IsEmptyValue(DemandID)){ WFSetParamValue(ActionItem, 'DemandID', DemandID, 0); WFSetParamValue(ActionItem, 'AccountID', AccountID, 0); WFSetParamValue(ActionItem, 'OwnerID', OwnerID, 0); WFSetParamValue(ActionItem, 'ContactID', ContactID, 0); AccountID } }
в продолжение темы как можно обратиться к визуальному элементу зная его Dataset
PS нужно сделать поле IsEnabled =true
из самого датасета, если вы перед этим не добавили ему в атрибуты ссылки и без всяких извращений - не получится
имея ссылку на конкретный экземпляр dlData - запросто (dlData.ParentWindow)