Привет всем! Если что в продукте пропустил - не бейте сильно, у нас +40. Вопрос - есть правило автостарта процесса "Короткая продажа" по правилу "запись контрагента", после этого создается 1-я задача процесса "Выяснить потребности...". Как можно реализовать передачу ID сохраненного контрагента параметры диаграммы? Ну собственно хочется, чтобы в задаче он был указан...
Нравится
При автостарте у процесса появляется два новых параметра:
- AutoDatasetUSI - тут в Вашем случае ds_Account
- AutoID - тут ИД нового контрагента.
Надо модифицировать обработчик wa_TaskActionScript.wa_TaskActionOnExecute таким образом, чтобы он обрабатывал эти параметры и "пробрасывал" их в задачу.
Валерий, я не понял. У wa_Task в скрипте этот параметры есть (AccountID). Можно ли создать параметр диаграммы AutoID (строка), добавить параметр в wa_Task (AccountID) и свзять их. Или глупость написал?
Попробуйте так - в wa_TaskActionScript, в конце функции wa_TaskActionOnExecute перед строкой:
ShowEditWindowEx('wnd_TaskEdit', Attributes, DefaultValues)
добавить такой код:
var DiagramParams = ActionItem.ParentItems.ParentDiagram.Parameters; if ((DiagramParams.ItemsByName('AutoID') != null) && (DiagramParams.ItemsByName('AutoDatasetUSI') != null)) { if (DiagramParams.ItemsByName('AutoDatasetUSI').Value == 'ds_Account') { DefaultValues('AccountID') = DiagramParams.ItemsByName('AutoID').Value; } }
Это вроде нормально должно, НО! Хочется некоей универсальности. Иначе мне придется переписать все wa :( а почему нельзя сделать связями параметров-то?
Ваш вариант тоже может получиться, попробуйте (у меня нет возможности сейчас проверить)
Протестировал. Универсальность есть, просто заводим строковый параметр AutoID, значение в него попадет при автостарте.
Естественно, что если процесс запущен по контрагенту, то система передаст GUID контрагента, если по документу, то его GUID.