起步软件技术论坛-X3

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

待办-》提交-》完成 ?

[复制链接]
发表于 2008-5-29 14:56:55 | 显示全部楼层
,如果好弄的话,早贴出来了
再等等....
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-29 15:09:47 | 显示全部楼层
大哥不会一天就等一个贴子吧!
没有效率呀
回复 支持 反对

使用道具 举报

发表于 2008-5-29 15:40:15 | 显示全部楼层
对比以下代码,在相应位置进行修改.之前没有这样的需求,所以要做一遍好用了才可以,再整理出来贴给你,  108之类的是页号
楼主,需要耐心些才可以,这不是一二句就能解决完的.

协同常量库 :108:

1.增加FinishTaskTypeStr函数

    static function PostTaskTypeStr: string;  //源
    static function FinishTaskTypeStr: string;

static function TRTLConsts.FinishTaskTypeStr: string;
begin
  Result := 'ftFinish';
end;

394:

//  CreateDesktopPanel('提交任务', cPostDocURL, cTaskFuncURL, SysUtils.Format('-vvmTaskGrid -f%s -d已完成', [TRTLConsts.FinishTaskTypeStr])),


任务导航(基类) :

1.增加TFilterType类型 : 9

type
  TFilterType = (ftNone, ftNeedProcess, ftPost, ftFinish);

2.修改TRTLConsts : 89   

function TTASKNAV.GetFilterTypeStr: string;
begin
  case FilterType of
    TFilterType.ftNeedProcess:
      Result := TRTLConsts.NeedProcessTaskTypeStr;
    TFilterType.ftPost:
      Result := TRTLConsts.PostTaskTypeStr;
    TFilterType.ftFinish:
      Result := TRTLConsts.FinishTaskTypeStr;
    else
    begin
      Result := TRTLConsts.NeedProcessTaskTypeStr; // 去除警告
      Assert(False, 'FilterType值不合法');
    end;
  end;
end;

3.修改FilterTypeChanged : 130

procedure TTASKNAV.FilterTypeChanged;
begin
  case FilterType of
    TFilterType.ftNeedProcess:
    begin
      FFilterBuilder.ProcessStates := [TProcessState.psProcess];
      TaskDataSet.SQLFilter := FFilterBuilder.GetFilter;
      TaskDataSet.SQLFiltered := True;
    end;
    TFilterType.ftPost:
    begin
      FFilterBuilder.ProcessStates := [TProcessState.psPost];
      TaskDataSet.SQLFilter := FFilterBuilder.GetFilter;
      TaskDataSet.SQLFiltered := True;
    end;
    TFilterType.ftFinish:
    begin
      FFilterBuilder.ProcessStates := [TProcessState.psFinish];
      TaskDataSet.SQLFilter := FFilterBuilder.GetFilter;
      TaskDataSet.SQLFiltered := True;
    end;
  end;
end;


4.修改GetFilterTypeStr  : 89

function TTASKNAV.GetFilterTypeStr: string;
begin
  case FilterType of
    TFilterType.ftNeedProcess:
      Result := TRTLConsts.NeedProcessTaskTypeStr;
    TFilterType.ftPost:
      Result := TRTLConsts.PostTaskTypeStr;
    TFilterType.ftFinish:
      Result := TRTLConsts.FinishTaskTypeStr;
    else
    begin
      Result := TRTLConsts.NeedProcessTaskTypeStr; // 去除警告
      Assert(False, 'FilterType值不合法');
    end;
  end;
end;

5.修改SetFilterTypeStr: 106

procedure TTASKNAV.SetFilterTypeStr(const Value: string);
begin
  if SysUtils.SameText(Value, TRTLConsts.NeedProcessTaskTypeStr) then
    FilterType := TFilterType.ftNeedProcess
  else if SysUtils.SameText(Value, TRTLConsts.PostTaskTypeStr) then
    FilterType := TFilterType.ftPost
  else if SysUtils.SameText(Value, TRTLConsts.FinishTaskTypeStr) then
    FilterType := TFilterType.ftFinish
  else
    Assert(False, 'FilterType值不合法');
end;

6.继承"任务导航(基类)" 为新的"任务导航(完成)",并修改界面提示

加入以下代码
uses CollaborationConsts

FilterTypeStr := TRTLConsts.Fini****askTypeStr;


我的任务

7.在"我的任务",设置代码过滤: 127

    else if SysUtils.SameText(lFilterType, TRTLConsts.PostTaskTypeStr) then
      MyTaskDoc.ProcessStates := [TProcessState.psPost]
    else if SysUtils.SameText(lFilterType, TRTLConsts.FinishTaskTypeStr) then
      MyTaskDoc.ProcessStates := [TProcessState.psFinish]
    else
      MyTaskDoc.ProcessStates := [TProcessState.psProcess, TProcessState.psFinish, TProcessState.psPost, TProcessState.psPostFinished];

设置面板
8.用System进入系统. 系统面板配置->风格->新加一个面板
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-29 15:47:15 | 显示全部楼层
我先调试先,对了!
补充问一下: 如何代码控制刷新 工作台上的信息显示!
回复 支持 反对

使用道具 举报

发表于 2008-5-29 15:55:40 | 显示全部楼层
不需要代码控制,系统已经提供了界面选项.
在工具->选项中.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-29 16:18:44 | 显示全部楼层
6.继承"任务导航(基类)" 为新的"任务导航(完成)",并修改界面提示

加入以下代码
uses CollaborationConsts

FilterTypeStr := TRTLConsts.Fini****askTypeStr;

这个地方在我继承的 任务导航(完成) 里添加,
新继承的类里 啥也没有呀!
unit RWDH_WC_;

interface

uses
  CollaborationConsts,Business.System, Business.Model, Business.Forms, Business.Data;

type
  TRWDH_WC_ = class(TTASKNAV)
  private
    {private declarations}
  public
    {public declarations}
  end;

implementation


end.
回复 支持 反对

使用道具 举报

发表于 2008-5-29 16:20:23 | 显示全部楼层
FilterTypeStr := TRTLConsts.Fini****askTypeStr;  加在Create事件中
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-29 16:25:16 | 显示全部楼层
新面板添加,是不是要加路径?
回复 支持 反对

使用道具 举报

发表于 2008-5-29 16:30:16 | 显示全部楼层
8.用System进入系统. 系统面板配置->风格->新加一个面板

更多按钮:  -vBiz:COLLABORATIONMyTaskFunc.Func -p'-fftFinish -vvmTaskGrid -d已办' -d
缩略图: Biz:COLLABORATIONTASKCENTERINFO.INFORWDH_Finishi.FormDoc

贴图.jpg

53.13 KB, 下载次数: 118

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-29 16:48:00 | 显示全部楼层
整体显示出来了,但点击一个任务时,报了一个错误!

snap.jpg

6.89 KB, 下载次数: 129

回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-14 12:19 , Processed in 0.042128 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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