Insert(Index: Integer; StepGroup: IBProcessStepGroup);
Index. Индекс позиции, в которую добавляется группа шагов.
StepGroup. Группа шагов, которую необходимо добавить в коллекцию.
Метод Insert добавляет группу шагов в указанную позицию в коллекции.
Для выполнения примера в репозитории предполагается наличие процесса с идентификатором PROCESS. В процессе создан один этап, для которого включено использование какого-либо шлюза.
Добавьте ссылки на системные сборки: BPM, Metabase. Также добавьте ссылку на сборку, которая необходима для работы с процессами.
Sub UserProc;
Var
Mb: IMetabase;
MDesc: IMetabaseObjectDescriptor;
Process: IBProcess;
Stage: IBProcessStage;
StepGroup: IBProcessStepGroup;
Step_: IBProcessStep;
Begin
Mb := MetabaseClass.Active;
MDesc := Mb.ItemById("PROCESS");
// Получение структуры процесса
Process := BProcessCollection.EditByKey(MDesc.Key);
// Получение этапа и группы шагов по умолчанию
Stage := Process.Stages.Item(0);
// Создание новой группы шагов, шага для неё и вставка групп в первую позицию в этапе
StepGroup := New BProcessStepGroup.Create(Process);
Step_ := New BProcessManualTaskStep.Create("Ручное действие. Подготовительный этап", Process);
Step_.Description := "Оповещение всех участников о начале работы";
StepGroup.Steps.Add(Step_);
// Добавление группы шагов в этап
Stage.StepGroups.Insert(0, StepGroup);
// Сохранение изменений
Process.Save;
End Sub UserProc;
При выполнении примера для этапа будет создана новая группа шагов и новый шаг в ней. Данная группа будет помещена в первую позицию в этапе.
См. также: