用友NC65产品的对账节点联查业务帐

第一步
添加语义模型,在查询参数里面配置对一个的查询条件
在这里插入图片描述
在语义脚本里设置对应的查询参数
在这里插入图片描述
第二步
配置自由报表,扩展区参数不记得是添加语义模型后带进来的还是自己加的了。需要修改取值方式为参数,然后选取对应的查询参数在这里插入图片描述在这里插入图片描述
在报表参数设置里面加上对应的参数
在这里插入图片描述
注册实现类
该类继承 extends DefaultQueryAction
重写 doQueryByDrill

@Override
	public IQueryCondition doQueryByDrill(Container parent, IContext context,
			AbsAnaReportModel reportModel, FreeReportDrillParam drillParam) {
		AMBaseQueryCondition queryCondition = new AMBaseQueryCondition(true);
		// 通过明细取联查明细
		BusiFreeReportDrillParam busiDrillParam = (BusiFreeReportDrillParam) drillParam;
		GlBusiReconResultVO resultVO = busiDrillParam.getQueryVO().getResultVO();
		// 查询VO
		BusiReconQryVO queryVO = busiDrillParam.getQueryVO().getQueryVO();
		//parameterMap.put("paydate1", "2020-07-01");
		//((Context)context).setAttribute(SmartContext.PREX_PARAM + "paydate1", "2020-01-01");
		//queryCondition.setUserObject(parameterMap);
		// 将查询参数放到变量池中
		Parameter[] params = ReportVariableHelper.getParams(reportModel.getFormatModel());
		// 设置报表参数需要放到最后来处理
		for (Parameter param : params) {
	
			String code = param.getCode();
			if("enddate".equals(code)) {
				param.setValue(queryVO.getEndDate());
				parameterMap.put(code, queryVO.getEndDate());
				((Context)context).setAttribute(SmartContext.PREX_PARAM + code, queryVO.getEndDate());
			}else if("org".equals(code)) {
				AccountingBookVO[] book;
				try {
					book = (AccountingBookVO[])HYPubBO_Client.queryByCondition(AccountingBookVO.class, "pk_accountingbook = '"+queryVO.getPk_accountingbook()+"' ");
					param.setValue(book[0].getPk_relorg());
					parameterMap.put(code, book[0].getPk_relorg());
					((Context)context).setAttribute(SmartContext.PREX_PARAM + code, book[0].getPk_relorg());
				} catch (UifException e) {
					e.printStackTrace();
				}
			}
		}
		queryCondition.setUserObject(parameterMap);
		List<Parameter> ParamsList = new ArrayList<>(params.length);
		for(Parameter param : params) {
			String code = param.getCode();
			if("enddate".equals(code)) {
				ParamsList.add(param);
			}else if("org".equals(code)) {
				ParamsList.add(param);
			}
		}
		ReportVariableHelper.addParamsValueToPool(ReportVariableHelper.getPoolInstance(context), ParamsList.toArray(new Parameter[ParamsList.size()]));		
		return queryCondition;
	}

在这里插入图片描述

第三步
发布自由报表

第四步
添加查询面板,并且分配到对应自由报表的节点

第五步
在gl_brdealclass 业务系统注册表
update gl_brdealclass set bridgecode = ‘发布自由报表节点的菜单编码’ ,nodecode = '‘查询面板的编码’ ’ where moduleid=‘对应模块编码’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值