NC数据加工做语义模型

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

报表语义模型(数据加工:返回结果集方式)

数据加工方式:1.返回查询SQL ; 2.返回结果集DataSet;3.返回数据表。

实现方式基本一致,可以参照系统原有报表语义模型

一、新建报表查询入口类,初始化报表字段

1.数据加工查询业务处理接口的定义:

package nc.itf.fbm.paperbill.query;

import nc.pub.smart.data.DataSet;

import nc.vo.pub.BusinessException;

import com.ufida.dataset.IContext;

/**票据信息查询/票据池额度查询接口

*

* @author 温燕荣WYR

* @date 2014-04-15

*/

public interface IFbmQueryPaperBillService {

/**

* 票据信息查询

* @param context

* @return

* @throws BusinessException

*/

public DataSet queryPaperBillInfo(IContext context) throws Exception;

/**

* 票据池额度查询接口

* @param context

* @return

* @throws BusinessException

*/

public DataSet queryPaperBillPoolLimit(IContext context) throws Exception;

}

2.数据加工入口类,初始化报表字段

package nc.itf.fbm.paperbill.query;

import java.util.ArrayList;

import java.util.List;

import mon.NCLocator;

import nc.pub.smart.data.DataSet;

import nc.pub.smart.metadata.DataTypeConstant;

import nc.pub.smart.metadata.Field;

import nc.pub.smart.metadata.MetaData;

import nc.vo.obm.paperbill.query.PaperBillPoolVO;

import com.ufida.dataset.IContext;

/**票据池额度查询入口类

*

* @author 温燕荣WYR

* @date 2014-04-15

*/

public class QueryPaperPoolLimitService {

private static final MetaData metaData;

public QueryPaperPoolLimitService(){

super();

}

/**

* 获得结果集

*

* @param context 报表界面查询传进来的参数(查询条件=值,系统一些默认参数等)* @return

*/

public static DataSet queryPJCAmt(IContext context)throws Exception {

//调用报表查询业务处理接口,

IFbmQueryPaperBillService gatherservice=(IFbmQueryPaperBillService) NCLocator.getInstance().lookup(IFbmQueryPaperBillService.class.getName());

DataSet resultDataSet = gatherservice.queryPaperBillPoolLimit(context);

setPrecision(resultDataSet);

return resultDataSet;

}

//初始化报表要显示的字段,包括查询条件字段也在内

static {

metaData = new MetaData();

List fields =makeList();

//报表显示字段

Field f = new Field();

f.setFldname(NAME);

f.setCaption("财务组织名称");

f.setPrecision(200);

f.setDataType(DataTypeConstant.STRING);

fields.add(f);

f = new Field();

f.setFldname(PaperBillPoolVO.ACCTNAME);

f.setCaption("机构名称");

f.setPrecision(200);

f.setDataType(DataTypeConstant.STRING);

fields.add(f);

f = new Field();

f.setFldname(PaperBillPoolVO.ACCTNO);

f.setCaption("账号");

f.setPrecision(200);

f.setDataType(DataTypeConstant.STRING);

fields.add(f);

f = new Field();

f.setFldname(PaperBillPoolVO.PJCNO);

f.setCaption("票据池编号");

f.setPrecision(200);

f.setDataType(DataTypeConstant.STRING);

fields.add(f);

f = new Field();

f.setFldname(PaperBillPoolVO.PJCKAMT);

f.setCaption("票据池可开票额度");

f.setPrecision(17);

f.setDataType(DataTypeConstant.BIGDECIMAL);

f.setScale(4);

fields.add(f);

f = new Field();

f.setFldname(PaperBillPoolVO.CUSKAMT);

f.setCaption("客户剩余可开票额度");

相关文档
最新文档