当前位置:首页 > NC查询引擎使用文档V3.1 - 图文
第 4-28 穿透规则选取界面
穿透的意义和说明参见第三章第4.3小节。界面运行态上如果某表控件绑定到定义了穿透规则的查询定义,则该表控件支持穿透操作。
? 回退/恢复
界面还提供了回退/恢复功能。在对数据集进行了一系列数据处理操作之后,可以利用恢复功能恢复到原始状态。表控件提供了回退功能可以撤销交叉和穿透等操作。
3.3 控件连动
控件连动分同步连动和主子连动两种。
? 同步连动
当多个控件绑定到一个数据集时,当对该数据集进行了查找,排序,过滤,公式列等操作时,数据集的变化会通知到每个控件,是它们相应的更新展现,体现出同步的连动。
图4-29上的表格和图表引用了相同数据集,因此当进行排序、过滤等数据集操作的时候,表和图上的数据会出现完全同步的变化。同样,在图上点击某个系列时,表也会相应的定位到该系列。
第 42 页
图 4-29 表-图同步互动
? 主从连动
如果两个数据集之间建立了主从关系,则分别绑定到这两个数据集的控件之间就形成了主从连动的关系。如图 4-22展现的就是两组建立了主从连动关系的表控件,当主表选中某行时,子表则相应的展现出与主表记录对应的所有子表记录。
3.4 报表打印
界面模型提供了预览和直接打印的功能,这部分的功能暂时还不完善,有待扩充。
3.5 功能节点挂接
定义好的界面模型并不限制在查询引擎下运行,它也可以作为独立的功能节点挂接在各业务组的功能模块下。其挂接步骤如下:
第 43 页
图 4-30 功能节点挂接(注册功能节点)
注册功能节点时需指定对应文件名为:nc.ui.pub.querymodel.QueryNodeUI,每个节点还需定义两个参数:
? pkQryNode:界面模型对应的编码 ? dsName:定义数据源 这样,功能节点挂接就完成了。
第 44 页
附录
1. 查询引擎FAQ之参数篇
1、参数定义中的“操作符提示”列是什么意思?是否有用?
答:通常此列内容只有提示意义而无实际用处。只有对于参照型参数并且所填内容为like或in的时候有特殊含义——前者会在参照出来的值后面加百分号,后者支持参照多选。
2、数值型参数和字符型参数有何差别?
答:数值型参数保证其在引用过程中参数值不加单引号,而字符型参数可能视引用的具体情况有所不同。
3、在进行复合查询的参数定义时,是否需要列出所引用子查询的参数?
答:是的,复合查询不会自动去递归提取所引用子查询的参数并集。这个并集需要通过手工引用。复合查询自身不一定使用其中的参数,但它负责把参数分发给引用的子查询。
4、如何快速引用其它查询对象的参数? 答:鼠标单击南部面板。
5、什么是替换型参数?
答:参数名以#开头和结尾的参数称为替换型参数(如#param1#),这类参数在引用时被完全字符替换为相应的参数值,而普通参数只限于在向导式设计中作为待定条件的取值。在Sql手工设计里用到的参数必须是替换型参数。
6、“枚举项”列是用来设置什么的?如何设置?
答:对于枚举型参数,枚举项可以用“可选项1@可选项2@??@可选项n”描述,也可以用“select distinct 字段 from 表”描述。对于参照型参数,枚举项可以选择预置的基础参照,也可以使用程序员自己开发的参照类(参见问题8),也可以使用自由参照(参见问题9)。对于字符型参数,除非枚举项中填入了自定义录入界面的类名(参见问题10),否则枚举项无实际意义,也无须填写。
7、如何让参照型参数的参照支持多选? 答:参见问题1,即将操作符提示设为“in”。
8、如何使用程序员自己开发的参照模型?
答:在参照型参数的枚举项中用“<全类名>”格式填写参照类名——要求该类继承自AbstractRefModel,且有无参构造子。
9、如何使用自由参照?
答:假定有一个非复合查询a,用户可以在另一个查询对象b的参数定义中指定一个依赖于a的参照型参数,格式为:
第 45 页
共分享92篇相关文档