1/8用友股份-LE支持服务业务本部产品方案--《查询引擎报表联查业务节点应用方案》建立日期:2013-07-01修改日期:xxxx-xx-xx文档属性:客户文控编号:LE-DY-CP-2013-05342/8文档控制创建记录适用范围审阅人日期审阅签字所属部门发布范围内部员工伙伴客户发布人姓名所属部门发布时间日期作者所属部门邮件地址版本2013-07-01用友NC产品支持部V1.0版本领域模块备注3/8目录查询引擎报表联查业务节点应用方案....................................................................4一、解决方案............................................................................................................4二、代码范例............................................................................................................74/8查询引擎报表联查业务节点应用方案一、解决方案1、查询定义(字段部分,这里使用了系统常量中定义的单据ID缺省别名,如果不用这个别名,也可以在穿透规则内容中指定);2、查询定义(穿透规则部分,这里可以定制具体穿透代码,在本例中没有写穿透代码,而是直接使用系统的默认处理);必须设置为LINK_BILLID5/83、查询预览结果;4、报表浏览态执行穿透(注意,穿透用的单据ID列可在格式设计中被隐藏);6/85、打开的目标节点(对应选中的单据信息);7/8二、代码范例1、以下是一个被调用方业务节点类的范例代码,它继承自UAP的测试单据类:publicclassTestPenetrateBillUIextendsTestBillCardUIimplementsILinkQuery{publicvoiddoQueryAction(ILinkQueryDataquerydata){StringbillId=querydata.getBillID();if(billId!=null){try{//加载数据getBufferData().addVOToBuffer(loadHeadData(billId));getBufferData().setCurrentRow(getBufferData().getCurrentRow());}catch(Exceptionex){ex.printStackTrace();}}}}8/82、简单的穿透规则代码片段示例;QEPenetrateObjectpo=newQEPenetrateObject(getHashPeneRow());po.setAliasBillId("ABC");setPeneObj(po);