Запуск экземпляра бизнес-процесса
Далее приведён пример кода скрипта ("Конструктор скриптов"), определённого типа карточки, в котором из существующего шаблона создаётся, а затем запускает экземпляр бизнес-процесса. Шаблон бизнес-процесса имеет одну переменную (типа Строка
), в которую передается отображаемое имя сотрудника, выполнившего запуск скрипта. Предполагается, что скрипт запускается из карточки типа "Документ".
private void Button_ItemClick(System.Object sender, DevExpress.XtraBars.ItemClickEventArgs e) (1)
{
Library library = new Library(base.Session); (2)
Process template = library.GetProcess(new Guid("00000000-0000-0000-0000-000000000000")); (3)
Process process = library.CreateProcess(template); (4)
process.InitialDocument = base.CardData.Id.ToString("B"); (5)
process.Variables[new Guid("00000000-0000-0000-0000-000000000001")].Value = (base.BaseObject as Document).MainInfo.Author.DisplayName; (6)
process.Start(base.Session.Properties["AccountName"].Value.ToString(), library.Dictionary, ExecutionModeEnum.Automatic, true); (7)
}
1 | Создание экземпляра БП на основе существующего шаблона с его последующим запуском. |
2 | Инициализация объекта для работы с библиотекой карточкой СУБП.
|
3 | Получение существующего шаблона бизнес-процесса . 00000000-0000-0000-0000-000000000000 — идентификатор шаблона бизнес-процесса. |
4 | Создание нового экземпляра бизнес-процесса. |
5 | Сохранение инициирующего документа. |
6 | Присвоение значения переменной бизнес-процесса. 00000000-0000-0000-0000-000000000001 — идентификатор переменной бизнес-процесса, может быть получен из шаблона БП при помощи утилиты Docsvision Explorer.
Поле "ID" в секции "Переменные" карточки БП, используемой в качестве шаблона. |
7 | Запуск экземпляра бизнес-процесса.
|
-
DocsVision.Workflow.Objects.dll
-
DocsVision.Workflow.Interfaces.dll
DocsVision.Workflow.Objects
:using DocsVision.Workflow.Objects;