用 GetSuccedentUnits 函数
procedure GetSuccedentUnits(AUnits: Business.System.TList; AInKinds: TProcUnitKinds; AStopKinds: TProcUnitKinds); overload;
procedure GetSuccedentUnits(AUnits: Business.System.TList; AInKinds: TProcUnitKinds; AInclude: Boolean); overload;
procedure GetSuccedentUnits(AUnits: Business.System.TList; AInKinds: TProcUnitKinds; AStopUnit: TProcUnit); overload;
以下是我曾经做的一个例子,找到当前节点后续的条件环节和条件分支环节
procedure TMAINFORM.ShowProcConditions;
var
i: Integer;
lUnits: TList;
begin
lUnits := TList.Create;
try
clbConditions.Clear;
FlowBroker1.FlowControl.CurrentProcUnit.GetSuccedentUnits(lUnits, [TProcUnitKind.ukConditionBranch, TProcUnitKind.ukCondition], [TProcUnitKind.ukActivity]);
for i:=0 to lUnits.Count-1 do
clbConditions.AddItem(TProcUnit(lUnits).DisplayName, lUnits);
finally
lUnits.Free;
end;
end; |