起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: ufida

【搞定】UFIDA升级问题**

[复制链接]
 楼主| 发表于 2007-1-31 18:41:59 | 显示全部楼层
一样的,请注意上面帖的系统初始化功能代码,是我原来的代码,不是升级后的
回复 支持 反对

使用道具 举报

发表于 2007-2-1 09:12:25 | 显示全部楼层
楼主,系统初始化功能的代码直接升级后,就不能按照你们的方式调用Run2方法了。
我是升级后,用你3楼的代码把系统初始化功能的pas文件又覆盖的。
覆盖后就可以正常使用了。

如果你使用我10楼的脚本也报错的话,最好直接使用客户端登录来操作一下,来确定问题出处。

我感觉可能和初始化功能没有关系。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-1 10:01:15 | 显示全部楼层
就是说3楼的代码把系统初始化功能的pas文件覆盖一下就应该没有问题了(或者说是初始化功能升级后没有别的变动)?我实际就是要确认这点,目前我并没有覆盖
回复 支持 反对

使用道具 举报

发表于 2007-2-1 10:33:37 | 显示全部楼层
楼主,2424升级到2617没有对系统初始化功能作修改。

你升级后,需要重新修改一下系统初始化功能中的TCreateFunc.Invoke方法的实现部分。
function TCreateFunc.Invoke(var Params: array of object): object;
const
  cInitFunc = 'Biz:\YYCSKJ\TIEFuncContainer.Func';
  cUserNameIndex = 'UserName';
  cPasswordIndex = 'Password';
  cPositionIDIndex = 'Position';
var
  FuncItem: TOperatorFuncItem;
  lFunc: TFunc;
  lFuncURL, lUserName, lPassword, lPositionID: string;
  lStrings: TStrings;
  I: integer;
begin

  if Params.Length >1 then
  begin
    lFuncURL := System.String(Params[0]);
    lStrings := TStringList.Create;
    try
      lStrings.Delimiter := ';';
      lStrings.DelimitedText := System.String(Params[1]);
      lUserName := lStrings.Values[cUserNameIndex];
      lPassword := lStrings.Values[cPasswordIndex];
      lPositionID := lStrings.Values[cPositionIDIndex];
    finally
      lStrings.Free;
    end;
  end else
    raise Exception.Create('参数不够!');

  lFunc := TSystemCore.FuncManager.CreateFunc(BizSys.GlobalContext, cInitFunc);
  //Assert(lFunc <> nil, '无法创建TFunc');
  if lFunc = nil then
    raise Exception.Create('无法创建TFunc');
  TIEFuncContainer.TTIEFuncContainer(lFunc).RunFuncURL := lFuncURL;
  TIEFuncContainer.TTIEFuncContainer(lFunc).UserName := lUserName;
  TIEFuncContainer.TTIEFuncContainer(lFunc).Password := lPassword;
  TIEFuncContainer.TTIEFuncContainer(lFunc).PositionID := lPositionID;
  Result := lFunc;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-1 10:59:51 | 显示全部楼层
试了一下,目前可以弹出岗位选择界面了,但是弹出的岗位不正确,是否升级以后,原来在组织结构上的授权失效了(印象中原来有此问题),是否需要从新为功能授权
回复 支持 反对

使用道具 举报

发表于 2007-2-1 11:17:28 | 显示全部楼层
楼主,岗位选择界面是你自己作的吗?
怎么调出来的?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-1 11:20:18 | 显示全部楼层
是自己作的,在TIEFuncContainer中调出一个类似岗位选择的窗体;目前这个窗体是可以弹出的,但里面对应功能的岗位列表不对,所以怀疑是组织架构授权的问题
回复 支持 反对

使用道具 举报

发表于 2007-2-1 11:34:22 | 显示全部楼层
岗位列表怎么不对,请描述一下。

另外,你前一个错误是环境链的问题。怀疑你写代码时,使用的环境对象不正确。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-1 12:52:01 | 显示全部楼层
如图所示,任务中心实际被分配到了一个人的多个岗位,但只显示出图中两个,在升级之前这个是没问题的,给你们的包里是有这个窗体和代码的,你们可以测试一下

po1.gif

9.84 KB, 下载次数: 157

回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-1 13:09:27 | 显示全部楼层
刚才测试了一下‘从初始化运行’,岗位选择可以列出所有岗位,但切换岗位后,功能列表就消失了,此测试与我们的代码没有任何关系,由此可以看出还是系统问题
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-12-26 09:43 , Processed in 0.039549 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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