《NC数据加工做语义模型(DOC)》由会员分享,可在线阅读,更多相关《NC数据加工做语义模型(DOC)(16页珍藏版)》请在金锄头文库上搜索。
1、. . . . .报表语义模型(数据加工:返回结果集方式)数据加工方式: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
2、 温燕荣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 queryPaper
3、BillPoolLimit(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
4、.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();/* * 获得结果集 * * para
5、m context 报表界面查询传进来的参数(查询条件=值,系统一些默认参数等) * return */public static DataSet queryPJCAmt(IContext context)throws Exception /调用报表查询业务处理接口,IFbmQueryPaperBillService gatherservice=(IFbmQueryPaperBillService) NCLocator.getInstance().lookup(IFbmQueryPaperBillService.class.getName();DataSet resultDataSet = g
6、atherservice.queryPaperBillPoolLimit(context);setPrecision(resultDataSet);return resultDataSet;/初始化报表要显示的字段,包括查询条件字段也在内static metaData = new MetaData();List fields =makeList();/报表显示字段Field f = new Field();f.setFldname(PaperBillPoolVO.ORGNAME);f.setCaption(财务组织名称);f.setPrecision(200);f.setDataType(Da
7、taTypeConstant.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(DataTypeCons
8、tant.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.B
9、IGDECIMAL);f.setScale(4);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.CUSKAMT);f.setCaption(客户剩余可开票额度);f.setPrecision(17);f.setDataType(DataTypeConstant.BIGDECIMAL);f.setScale(4);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.CUSEAMT);f.setCaption(客户有效开票额度);f.setPrecision(1
10、7);f.setDataType(DataTypeConstant.BIGDECIMAL);f.setScale(4);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.CORNAME);f.setCaption(分支机构名称);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.CORKAMT);f.setCaption(分支机构剩余可开票额度
11、);f.setPrecision(17);f.setDataType(DataTypeConstant.BIGDECIMAL);f.setScale(4);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.REQRESERVED1);f.setCaption(请求备用字段1);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.REQRESERV
12、ED2);f.setCaption(请求备用字段2);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.REPRESERVED3);f.setCaption(响应备用字段3);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.R
13、EPRESERVED4);f.setCaption(响应备用字段4);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);/查询字段f = new Field();f.setFldname(PaperBillPoolVO.PK_ORG);f.setCaption(财务组织PK);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.QUERY_ACCTNO);f.setCaption(账号-查询);f.setPrecision(200);f.setDataType(DataTypeConstant.STRING);fields.add(f);f = new Field();f.setFldname(PaperBillPoolVO.QUERY_PJCNO);f.setCaption(票据池编号-查询);f.setPrecision(200);f.setDataType(Da