金蝶EASBI报表框架使用说明_第1页
金蝶EASBI报表框架使用说明_第2页
金蝶EASBI报表框架使用说明_第3页
金蝶EASBI报表框架使用说明_第4页
金蝶EASBI报表框架使用说明_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、eas_bi报表框架使用说明简述报表框架模块名称:fm_birt报表框架做了大部分非具体业务的工作,如查询方案/打印/临时表/维表操作等,使开发人员能把精力更多地投入到业务相关的开发工作中。bos对象设计1. 界面设计a) 主页面继承com.kingdee.eas.fm.birt.client. birtbasemainui.uib) 条件查询页面继承com.kingdee.eas.fm.birt.client.birtbasefilterui.ui2. 功能对象继承 com.kingdee.eas.fm.birt.birtbasefacade.facade命名约定:使用加粗部分作为后缀。注意

2、, 使用该框架的各模块最好自己加一层基类, 实现业务上的扩展. 如资金组的基类fmbirptbasemainui(扩展) birtbasemainui代码基本流程1-用户点击菜单进入2-客户端准备初始数据getparamsforinit(),如果返回null, 转入第4步3-服务端取初始数据init,参数为上一步getparamsforinit()返回值4-客户端条件查询设置setcustomcondition,参数为上一步init返回值5-用户点击确定查询6-调用客户端主界面query方法,查询条件在属性params里,该params是条件界面getcustomcondition()返回的.

3、编码说明必要的重载1. ui类实现abstract方法(eclipse里ctrl+1,选择添加未实现的方法),各方法说明可参考父类注释。2. session bean 根据需要重载父类方法,通常只需要_ini和readyschemasource两个方法。数据准备服务端准备数据方法(重载):protected schemasource readyschemasource(rptparams params, context ctx)throws bosexception, easbizexception /返回schemasource对象,里面的属性均需要设置。 schema文件及宏定义schem

4、a配置请参考相关文档,放在config目录下,config与app/client同级。1)宏定义:在config.xml中,型如$xxx$。2)设置宏值:schemasource#setmacrovalue(string key,string value)-配置文件- -代码中设置宏-schemasource ss=.ss.setmacrovalue(mytable, periodtype);ss.setmacrovalue(myfk, fperiodtypeid);也可以动态添加维度。客户端处理1. 实现父类的abstract方法。具体功能查看父类代码注释2. 与数据有关常用的三个地方:1

5、onbeforequery里设置标题2 设置打印格式和变量3 重载处理单元格事件处理方法(用于联查)3. 全局变量及主要方法说明protected rptparams params=null; 查询条件-弹出对话框返回的查询条件,常用initworksheetcomponentstyle(componentconfig config)设置显示格式,查询/刷新时调用,一般不需要重载。setremoteconnection(boolean isremoteconnection)设置是否使用远程连接,如果否,则数据一次性获取到客户端,缺省为否。临时表的处理com.kingdee.eas.fm.bir

6、t.app.birtbasefacadecontrollerbean提供, 建议不要自己写创建/删除临时表的sql, 因为临时表处理eas系统有专门的管理:获取临时表名:gettemptablename使用select into 创建临时表及数据executeselectinto释放临时表droptemptablesql执行接口com.kingdee.eas.fm.birt.app.birtbasefacadecontrollerbean提供:_executequery_executeupdate打印设置打印表头格式方法protected void prepareprintpageheader

7、(headfootmodel header) 返回打印表头变量方法protected map prepareprintvariantmap()辅助类使用1. 条件存储1) 在filterui里,可以使用rptconditionmanager类自动存储。public rptparams getcustomcondition() rptconditionmanager rm=new rptconditionmanager();rm.recordallstatus(this);return rm.torptparams();public void setcustomcondition(rptpara

8、ms params) rptconditionmanager rm=new rptconditionmanager(params);rm.restoreallstatus(this);2)获取方法:rptparams. getobjectelement(“name.value”);name为条件相应控件的名称,getobjectelement方法可以用属性来访问其中的对象,如,name.value为com.kingdee.eas.framework .databaseinfo对象,取其编码:rptparams. getobjectelement(“name.value.number”);使用示

9、例:一般使用示例 /保存条件public rptparams getcustomcondition() rptconditionmanager rm=new rptconditionmanager();rm.recordallstatus(this);return rm.torptparams(); /设置条件public void setcustomcondition(rptparams params) rptconditionmanager rm=new rptconditionmanager(params);rm.restoreallstatus(this);扩展用法示例public r

10、ptparams getcustomcondition() rptconditionmanager rm=new rptconditionmanager();rm.recordallstatus(this);rm.setproperty(companyidset,companyidset);bankidset=accesshelper.getids(accesshelper.getf7ids(jbpbank);rm.setproperty(bankidset,bankidset);currencyidset=accesshelper.getids(accesshelper.getf7ids(j

11、bpcurrency);rm.setproperty(currencyidset,currencyidset);return rm.torptparams();public void setcustomcondition(rptparams params) rptconditionmanager rm=new rptconditionmanager(params);rm.restoreallstatus(this);companyidset=(set)params.getobject(companyidset);try bankidset=(set) params.getobject(bank

12、idset);corebaseinfo c=rptivtclientutil.getbaseinfofromidset(bankidset);this.jbpbank.setdata(c);currencyidset=(set) params.getobject(currencyidset);corebaseinfo cc=rptivtclientutil.getbaseinfofromidset(currencyidset);this.jbpcurrency.setdata(cc); catch (exception e) this.handuiexception(e);2. sqlpara

13、ms的使用a) 与preparedstatement使用方法类似,较之更简洁方便。作为sql执行接口的参数。b) 调试用:sqlparams.sql() 即可得到完整(不带?参数)的sql。参考例子重大资金流入流出汇总表com.kingdee.eas.fm.ivt.rptblockfundflowggmainui图形显示图形增加效果示例添加方法代码只需要在rptxxxmainui里添加1. 增加缺省图片setshowdefaultchart(boolean)是否显示缺省图片(整个表数据对应的图片), 在onbeforequery()中调用.adddefaultchart() 显示缺省图片, 在

14、onafterquery()中调用, 与setshowdefaultchart结合可按维度需求实现是否需要缺省图片.2. 增加自定义图片在onafterquery()中编写代码,如显示饼图: 期末数各公司(银行-dytable)的比例this.addchart().settitle(期末公司信用证结构分析).setcharttype(charttype.ct_multipie).addshowmember(periodtype,期末数).addshowmember(regiontype,小计).addshowmember(measures,比例).addnotshowmember(dytable,合计).setreverse(true).finishdataset(); 显示例图:代码说明:addshowmember: 设置需要显示图片的成员数据, 第一个参数为维度名称, 第二个参数是成员名称, 均不区分大小写. 维度名与成员名需与mdx语句中的命名对应addnotshowmember: 设置不需要显示的成员. 注意: 在同一维度上, 不能同时设置ad

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论