起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 315|回复: 11

[搞定]X3上取当前登陆者的机构ID出错!!**

[复制链接]
发表于 2006-8-16 09:37:46 | 显示全部楼层 |阅读模式
如下图,我想获取当前登陆者的机构ID, 当执行到下图所示的位置上就弹出错误信息!!!  从变量跟踪可知:登陆者ID已经取到了。就是取机构ID时出错。
但在老平台上没有一点问题的!!

另外我也试过通过组织机构表达式来获取当前登陆者的机构ID,但得到的是 Orgerson 本来应该得到 Org:ROOTQCDLKJYXGS.ogn
组织机构表达式获取代码如下:

procedure TYSTZ.FormDocCreate(Sender: TObject);
var
  lContextCurrent: TContextCurrent;
  XMID: string; //登陆者ID
  Tmp : string;
  URLs: TStringList;
  I   : Integer;
begin
  lContextCurrent := TContextCurrent.Create(Self.Context);
  try
    XMID := lContextCurrent.Operator.ID;
  finally
    lContextCurrent.Free;
  end;
  URLs := TStringList.Create;
  try
    Tmp := Org.OrgExpr.OrgParent(Org.OrgExpr.OrgKey('','',XMID),
                                 Org.OrgExpr.OrgCondition('*.OGN;*.DPT','',''),
                                 True,False);
    Org.OrgSys.OrgSystem.GetBizURLsByOrgExpr(Tmp,URLs);
    Tmp := '';
    for I := 0 to URLs.Count - 1 do
        Tmp := Tmp +URLs[I];
  finally
    URLs.Free;
  end;
end;

error.jpg

39.8 KB, 下载次数: 216

回复

使用道具 举报

 楼主| 发表于 2006-8-16 10:28:54 | 显示全部楼层
怎么没有反映啊
回复 支持 反对

使用道具 举报

发表于 2006-8-16 10:45:21 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-16 11:50:33 | 显示全部楼层
一样出错!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-16 12:01:09 | 显示全部楼层
出错信息和上面相同
回复 支持 反对

使用道具 举报

发表于 2006-8-16 12:09:28 | 显示全部楼层
你这个窗体所在功能的隔离级设置成了全局吗?或者这个窗体是自定义界面方案的主窗体?

你试试用在“ 业务模型\系统空间\系统运行库\系统核心库”中
   TSystemCore.Operator
看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-16 13:24:49 | 显示全部楼层
已经设为全局隔离级别,仍然不行.
TSystemCore.Operator得不到到当前人员的部门,机构信息.

你们那里行通过上面代码能不能取到机构ID,,如果取到的话,就是我们这边的问题,因为我们这里的两个服务器我都试了,都取不到机构ID,都报同一错误信息.
回复 支持 反对

使用道具 举报

发表于 2006-8-16 15:22:51 | 显示全部楼层
TYSTZ是不是主界面窗体?
在主界面中以及隔离级设置成全局的功能中,要获取当前操作员信息必须使用以下方法:
  TSystemCore.Operator.Positions[0].PersonMember.ID  //当前操作者ID
    TSystemCore.Operator.Positions[0].PositionMember.ID  //当前操作者岗位ID
    TSystemCore.Operator.Positions[0].PositionMember.Parent.ID  //当前操作者部门ID
  TSystemCore.Operator.Positions[0].PositionMember.Parent.Parent.ID //当前操作者机构ID
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-16 15:52:20 | 显示全部楼层
[错误]Biz:\COLLABORATION\TZ\TZXX.INFO.DIR\YSTZ.FormDoc.pas(48, 45): Undeclared identifier "ositions"

根本就没有 Positions 这个属性
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-16 17:25:49 | 显示全部楼层
不要回答了,我自己查表.
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-16 03:51 , Processed in 0.041024 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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