起步软件技术论坛-X3

 找回密码
 立即注册
搜索
123
返回列表 发新帖
楼主: YZQH

【搞定】求助:界面显示问题**

[复制链接]
发表于 2007-5-14 08:42:47 | 显示全部楼层
function TNEWSPLACARD_NAVINFO.GetFilter: string;
var
  lPerson,lPosition,lDept,lorg: string;
  lFilter: string;
  lNow: Double;
begin
  lNow := Business.Data.SysSrv.SysService.Time;
  lPerson := TContextUtils.GetOperator(Context).ID;

//  lPosition := TContextUtils.GetOperatorPosition(context).PositionID;
  lPosition := SystemCore.TSystemCore.Operator.DefaultPosition.PositionID ;
//  if not Assigned(lPosition) then
  if lPosition = '' then
  lPosition := SystemCore.TSystemCore.Operator.Positions[0].PositionID ;

  lDept := TContextUtils.GetDept(context).ID;

  lorg := GetOgrn.ID;
回复 支持 反对

使用道具 举报

发表于 2007-5-14 09:53:23 | 显示全部楼层
function TNEWSPLACARD_NAVINFO.GetFilter: string;
var
  lPerson,lPositionID,lDept,lorg: string;
  lPosition: TOperatorPosition;
  lFilter: string;
  lNow: Double;
begin
  lNow := Business.Data.SysSrv.SysService.Time;
  lPosition := SystemCore.TSystemCore.Operator.DefaultPosition;
  if not Assigned(lPosition) then
    lPosition := SystemCore.TSystemCore.Operator.Positions[0];

  lPerson := TContextUtils.GetOperator(lPosition.Context).ID;
  lPositionID := TContextUtils.GetOperatorPosition(lPosition.Context).PositionID;
  lDept := TContextUtils.GetDept(lPosition.Context).ID;

  lorg := GetOgrn.ID;
回复 支持 反对

使用道具 举报

发表于 2007-5-14 10:33:06 | 显示全部楼层
已经通过远程协助看了,原因是
  lPosition := TContextUtils.GetOperatorPosition(context).PositionID;
  lPosition := SystemCore.TSystemCore.Operator.DefaultPosition.PositionID ;
原来是注销掉的被你们给放开了,GetFilter函数原来的代码是这样的
function TNEWSPLACARD_NAVINFO.GetFilter: string;
var
  lPerson,lPosition,lDept,lorg: string;
  lFilter: string;
  lNow: Double;
begin
  lNow := Business.Data.SysSrv.SysService.Time;
  lPerson := TContextUtils.GetOperator(Context).ID;

  {lPosition := TContextUtils.GetOperatorPosition(context).PositionID;
  lDept := TContextUtils.GetDept(context).ID;}

  lorg := GetOgrn.ID;

  lFilter := ' ftype = ''NEWSPLACARDDEAL'' ';
  if SysUtils.SameText(sdsTask.Connection.Meta.DataProvider, Business.Data.BizSchemaTypes.cDriver_ORACLE) then
  begin
    lFilter := lFilter + SysUtils.Format('and TTask.FPLANSTARTTIME <= TO_DATE(''%s'', ''YY-MM-DD HH24:MI:SS'')',
                             [SysUtils.FormatDateTime('yyyy-mm-dd hh:mm:ss', lNow)]);
    lFilter := lFilter + SysUtils.Format('and TTask.FPLANFINISHTIME >= TO_DATE(''%s'', ''YY-MM-DD HH24:MI:SS'')',
                             [SysUtils.FormatDateTime('yyyy-mm-dd hh:mm:ss', lNow)]);
  end
  else
  begin
    lFilter := lFilter + SysUtils.Format('and TTask.FPLANSTARTTIME <= ''%s''',
                             [SysUtils.FormatDateTime('yyyy-mm-dd hh:mm:ss', lNow)]);
    lFilter := lFilter + SysUtils.Format('and TTask.FPLANFINISHTIME >= ''%s''',
                             [SysUtils.FormatDateTime('yyyy-mm-dd hh:mm:ss', lNow)]);
  end;
  {lFilter := lFilter + 'and (TTASK.FGUID IN '+
                '     (SELECT TTASKMESSAGE.FTASKGUID '+
                '         FROM TTASKMESSAGE '+
                '        WHERE (TTASKMESSAGE.FSTATE IN '+
//                '              (''tmsSend'', ''tmsReceived'', ''tmsProcessing'')) '+
                '               (''tmsFinished'')) '+
                '          AND (((TTASKMESSAGE.FRDEPT = '''+lDept+''') AND '+
                '              (TTASKMESSAGE.FRPOSITION = '''+lPosition+''') AND '+
                '              (TTASKMESSAGE.FRPERSON = '''+lPerson+''')) or '+
                '              ((TTASKMESSAGE.FRDEPT = '''+lDept+''') AND  '+
                '              (TTASKMESSAGE.FRPOSITION = '''+lPosition+''') AND '+
                '              (TTASKMESSAGE.FRPERSON is null)) or '+
                '              ((TTASKMESSAGE.FRDEPT = '''+lDept+''') AND '+
                '              (TTASKMESSAGE.FRPOSITION is null) AND '+
                '              (TTASKMESSAGE.FRPERSON is null)) or '+
                '              ((TTASKMESSAGE.FRDEPT is null) AND '+
                '              (TTASKMESSAGE.FRPOSITION is null) AND '+
                '              (TTASKMESSAGE.FRPERSON is null) AND '+
                '              (TTASKMESSAGE.FROGN = '''+lorg+''')))) '+
                '  or (TTASK.FGUID IN '+
                '     (SELECT T1.FGUID '+
                '         FROM TTASK T1 '+
                '        WHERE (T1.FSTATE IN (''tsStarted'', ''tsProcessing'')) '+
                '          AND ((T1.FSDEPT = '''+lDept+''') AND (T1.FSPOSITION = '''+lPosition+''') AND '+
                '              (T1.FSPERSON = '''+lPerson+'''))))) ';}
  lFilter := lFilter + 'and (TTASK.FGUID IN '+
                '     (SELECT TTASKMESSAGE.FTASKGUID '+
                '         FROM TTASKMESSAGE '+
                '        WHERE (TTASKMESSAGE.FSTATE IN '+
                '               (''tmsFinished'')) '+
                '          AND (TTASKMESSAGE.FRORGURL IN ('+DoGetQueryURLStr(PersonMemberAndParentURLs)+') or '+
                '              (TTASKMESSAGE.FRORGURL in (''\ROOT\_UNEXIST_.OGN\.DPT\.PTM\.PSM'',''\ROOT\_UNEXIST_.OGN\.DPT'') and TTASKMESSAGE.FROGN = '''+lorg+''' )) ) '+
                '  or (TTASK.FGUID IN '+
                '     (SELECT T1.FGUID '+
                '         FROM TTASK T1 '+
                '        WHERE (T1.FSTATE IN (''tsStarted'', ''tsProcessing'',''tsFinished'')) '+
                '            and  (T1.FSPERSON = '''+lPerson+''')))) ';
  Result := lFilter;
end;
回复 支持 反对

使用道具 举报

发表于 2007-5-14 11:13:38 | 显示全部楼层
谢谢。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-9 17:09 , Processed in 0.037270 second(s), 14 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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