起步软件技术论坛-X3

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

【结贴】2936版本组织机构设计器的性能问题**

[复制链接]
 楼主| 发表于 2008-11-21 21:39:22 | 显示全部楼层
兼容性的不能使用会报错,这个我之前有在论坛贴出帖子,兼容性的是满足要求但是不能使用主要是这个问题,我想知道人员这块如何改成和2936版本的建模工具里头的一样,并且部门的打开功能以及展开速度快就ok
回复 支持 反对

使用道具 举报

发表于 2008-11-22 11:36:23 | 显示全部楼层
8楼的提供的数据已经导入,确实比较慢,正在找原因,请楼主等待。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-22 15:01:23 | 显示全部楼层
谢谢了,如果找到原因请尽快告知
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-22 15:02:32 | 显示全部楼层
除了速度以外,要改成和建模工具的方式一样要如何修改代码
回复 支持 反对

使用道具 举报

发表于 2008-11-24 11:19:26 | 显示全部楼层
由于29系列就是放到一起进行展示的,没有办法进行修改,只能升级到3000以后的版本来解决了。
回复 支持 反对

使用道具 举报

发表于 2008-11-24 11:35:53 | 显示全部楼层
29系列版本的组织机构、岗位、人员都在一个界面上、楼主想要把组织机构、岗位、和人员分成3个页面这个改动比较大,和重现自己在开发一边组织机构差不多。建议升级到3000以上版本就是楼主想要的模式了。
回复 支持 反对

使用道具 举报

发表于 2008-11-24 15:59:55 | 显示全部楼层
3000以后的版本需要修改的一下代码展开人员速度才会快一些:
业务模型\系统空间\系统功能\组织机构\组织机构设计器\主窗体:
procedure TMAINFORM.ShowPersons;
var
  lNode: TBizNode;
  lChildren, lKinds: TStrings;
  I: Integer;
  lAllow: Boolean;
begin
  if CurrentViewTree <> TCurrentViewTree.cvtPerson then
    Exit;
//  olvPerson.Clear;
  if not FOnOperating then
    if Assigned(CurrentBizNode) and FDeptManager.IsCanOperate(CurrentBizNode.BizURL.URL) then
    begin
      lNode := BizTree.BizTreeStructure.FindNodeByBizURL(EnsureFolder);
      lChildren := TStringList.Create;
      lKinds := TStringList.create;
      try
        lKinds.Add('.PSN');
        BizTree.BizTreeStructure.GetChildrenByKinds(lNode.GUID, lChildren, False, lKinds);
        if Assigned(olvPerson.OnInsert) then
        begin
          for I := lChildren.Count - 1 downto 0 do
          begin
            lAllow := True;
            olvPerson.OnInsert(olvPerson, TBizNode(lChildren.Objects[I]), lAllow);
            if not lAllow then
              lChildren.Delete(I);
          end;
        end;
        olvPerson.Nodes := lChildren;
      finally
        lKinds.Free;
        lChildren.Free;
      end;

//      olvPerson.RootNode := lBizNode;//BizTree.BizTreeStructure.FindNodeByFullFileName(EnsureFolder.FileName);
      //
      if olvPerson.Items.Count = 0 then
        olvPerson.Reload;
    end
    else
      olvPerson.Clear;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-4 10:07:26 | 显示全部楼层
测试先
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-4 10:10:27 | 显示全部楼层
2936版本没有这段代码是吧
回复 支持 反对

使用道具 举报

发表于 2008-12-4 10:13:34 | 显示全部楼层
是的,这个代码只有3000以后的版本有,
上次打电话与楼主沟通过,目前这个版本无法解决这个速度慢的问题,只能升级到3000以后。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-28 02:11 , Processed in 0.040268 second(s), 13 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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