起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 724|回复: 24

[搞定][请求]工作台中的数据如何但击弹出新窗口**

[复制链接]
发表于 2007-10-29 09:37:17 | 显示全部楼层 |阅读模式
我做了个功能,把一个功能显示在工作台上,现在数据显示已经没问题,点击更多跳到列表,但是如何实现单击弹出个新的窗口并过滤这条记录呢?
回复

使用道具 举报

发表于 2007-10-29 12:43:43 | 显示全部楼层

跟! 我也想知道

跟! 我也想知道
回复 支持 反对

使用道具 举报

发表于 2007-10-29 14:47:50 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-29 15:11:29 | 显示全部楼层
procedure TXXCB.actDetailExecute(Sender: TObject);
begin
TSystemCore.FuncManager.RunFunc(Context, '', 'Biz:\JTTXM\XXCK1.Func',''
SysUtils.Format('-vvmPlanDetail -l%s -p', [PlanDataSet.FieldByName('XXBH').AsString]),False, nil, False);
end;
这句话是不是就是实现单击过滤数据用的
回复 支持 反对

使用道具 举报

发表于 2007-10-29 16:54:38 | 显示全部楼层
对啊,就是。
看到那个-l%s了么,那个就是需要传递的参数,过滤条件就是PlanDataSet.FieldByName('XXBH').AsString
-vvmPlanDetail -l%s -p'这些参数怎么解析的是在计划中心窗体中实现的,楼主参照自己做个解析就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-30 08:32:13 | 显示全部楼层
SysUtils.Format('-vvmPlanDetail -l%s -p', [GetTestDataSet.FieldByName('XXBH').AsString]),False, nil, False);
这行中报的错误比较多啊SysUtils.Format到这里就出现错误了
回复 支持 反对

使用道具 举报

发表于 2007-10-30 09:01:15 | 显示全部楼层
'-vvmPlanDetail -l%s -p'楼主看明白这3个参数的含义了么?
其中只有-l%s是用来做过滤使用的!楼主看到计划中心功能窗体中是怎么对这个参数进行解析的!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-30 09:29:02 | 显示全部楼层
vvmPlanDetail
这个函数是什么意思,如果用我的值来替换我应该用什么呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-30 13:45:07 | 显示全部楼层
vvmPlanDetail
这个函数是什么意思,如果用我的值来替换我应该用什么呢?
回复 支持 反对

使用道具 举报

发表于 2007-10-30 15:15:46 | 显示全部楼层
楼主想复杂了。看一下下面的说明
procedure RunFunc(AContext: TContext; const AUniqueID, AFuncURL, AParams: string; UseUI: Boolean; BeforeRunFunc: TFuncNotifyEvent; Modal: Boolean); overload;
参数说明:
AContext:创建功能实例的环境
AFuncURL:要运行的功能URL
AParams:创建功能实例时,传递的参数,获取参数的方法是
        FuncBroker.Func.Parameters
AUniqueID:创建功能时的唯一标识,首先在环境下按照UniqueID寻找这个功能是否已经创建,如果已经存在就激活功能页,如果不存在就创建一个功能实例。如果UniqueID为空,则UniqueID的取值规则为:
       AFuncURL + '||' + AParams + '||' + ADeptID + '||' + APositionID + '||' + APersonID;
Modal:决定是否窗体是ShowModal,也就是弹出来运行,即另外开一个窗口运行,而不是在tabpage页运行!
UseUI:暂时没有使用
BeforeRunFunc:是在功能运行之前,触发的事件 ,在功能运行时做的事情时候用 。格式为:
         BeforeRunFunc(Sender:TObject, AFunc:TFunc);

传递的参数其实就是一个字符串。您可以直接把您的ID传过去。在功能的处理窗体的FormCreate里面用FuncBroker.Func.Parameters获得您传递的字符串就好了。
例子里面用了Format是因为那里的参数很复杂。需要拆分。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-6-29 13:43 , Processed in 0.042165 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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