起步软件技术论坛-X3

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

将机构树的显示控制在当前用户所在机构

[复制链接]
发表于 2004-5-24 10:54:16 | 显示全部楼层 |阅读模式
procedure TMainForm.ShowOperatorInOrg;
var
  lContextCurrent: TContextCurrent;
  lOrgUnit: TOrgUnit;
  lBizNode: TBizNode;
  lBizURL: TBizURL;
begin

  // 取当前登陆者机构
  lContextCurrent := Business.Model.TContextCurrent.Create(Self.Context);
  try
    lOrgUnit := OrgSys.OrgSystem.GetUnit(lContextCurrent.Organ.ID, '', '');
    lBizURL := lOrgUnit.BizURL;  // 取得机构的URL
  finally
    lContextCurrent.Free;
  end;

  OrgTreeView1.StartWithNodes.Clear;  // 清除机构树

  // 找出机构对应节点作为树根
  lBizNode := BizTree.BizTreeStructure.FindNodeByBizURL(lBizURL);
  if lBizNode <> nil then
    OrgTreeView1.StartWithNodes.AddObject(lBizNode.GUID, lBizNode);

  OrgTreeView1.ReloadTree;
//只显示到岗位,在ReloadTree前加一句:
  OrgTreeView1.ShowOptions := OrgTreeView1.ShowOptions -[TBizObjectKind.boPersonMember];

//只显示到部门:
  OrgTreeView1.ShowOptions := OrgTreeView1.ShowOptions -
    [TBizObjectKind.boPositionMember, TBizObjectKind.boPersonMember];

end;
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-12-22 23:42 , Processed in 0.037431 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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