起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 614|回复: 0

如何获取当前环节的前驱活动环节列表

[复制链接]
发表于 2004-12-15 17:01:25 | 显示全部楼层 |阅读模式
通过过程模型(TProc)中环节(TProcUnit)的GetLeadingUnits方法,可以获取当前环节的前驱环节列表。
函数声明:function GetLeadingUnits(AUnits: TList; AInKinds: TProcUnitKinds; AStopKinds: TProcUnitKinds):Boolean;
命名空间:Business.Model.Flow
函数作用:获取满足条件流程环节的前趋环节,这里不是单一的上一个环节,而是所有符合条件的前趋环节。

参数说明:
1、返回值:布尔类型,表示是否有返回结果。
2、AUnits:返回符合条件的流程环节,每一个Item都是TProcUnit;
3、AInKinds:返回的流程环节应该包含的环节类型,此类型之外都是不返回的;
4、AStopKinds:找到哪一种类型的前趋环节结束。

procedure TMainForm.GetLeadingUnits();
var
  I: Integer;
  lUnits: TList;
begin
  lUnits := TList.Create;
  try
    FlowDDSH.FlowControl.CurrentProcUnit.GetLeadingUnits(lUnits,
      [TProcUnitKind.ukActivity], [TProcUnitKind.ukActivity]); // ukActivity表示活动环节
    AComboBox.Items.Add('上一活动环节列表');
    for I := 0 to lUnits.Count - 1 do
    begin
      AComboBox.Items.Add(TProcUnit(lUnits[I]).ID);
      AComboBox.Items.Add(TProcUnit(lUnits[I]).DisplayName);
    end;
  finally
    lUnits.Free;
  end;
  AComboBox.ItemIndex:=0;
end;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-5-5 11:58 , Processed in 0.044913 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表