ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:236.26KB ,
资源ID:4172778      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4172778.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(灵活报表web展现用户手册.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

灵活报表web展现用户手册.docx

1、灵活报表web展现用户手册灵活报表web展现用户手册编号: 版本号:1.0作者:李向阳时间:2003年6月27日山东浪潮齐鲁软件产业股份有限公司文档修订修订历史记录序号版本号作者提交日期变更内容变更原因1. 1.0李向阳2003-6-27始建2. 1.0姚新明2003-7-1修改修改部分说明修订历史记录说明目的记录文档的修改记录,同时明确告诉变更的内容作者本次修改人变更内容简单的描述本次变更内容,同时用蓝色标记近期变更的内容。变更原因说明本次变更的原因编码人修改、编写程序的人员签字及时间测试人根据需求说明,进行测试,当前由编码人员自己指定。发布人测试人员签字的通过之后,发布人签字、时间。目录1

2、概述 41.1相关文档 42界面 41.2 用户使用界面 43报表使用说明: 51.3报表配置文件 51.3.1报表配置文件说明 51.3.2已经实现的功能 81.4服务器配置更改 91.5Command取数据的变化 91.6Jsp的变化 91.7cll文件的变化 91.8如何开发 91.9报表实例 101.9.1XML配置 101.9.2Command 101.9.3web展现的jsp: 121.10事项 131概述灵活报表web展现主要实现报表样式的定义和报表在html中的展现,客户端采用cell控件。报表分类:1 动态报表a) 列固定,行不固定b) 列动态增长,行不固定2 固定报表c)列

3、固定,行固定本次只改进a类报表1.1 相关文档 灵活报表_设计_web展现.doc2界面1.2 用户使用界面用户所看到的a类报表如下图:界面的主要元素为:1 表头2 表体3 表尾要实现的主要功能为:1 数据显示2 表头单元格合并3 行列锁定4 小计,合计,计算列5 排序3报表使用说明:1.3报表配置文件1.3.1报表配置文件说明报表配置文件reports.xml默认存放在WEB-INFconfreport目录下,其内容如下所示: 同其他配置文件相同,可以将报表的格式配置存放在多个文件中,只要在reports.xml包含该文件即可,每一个文件的内容类似,见附件reportsbases.xml。x

4、ml文件大小写敏感,是遵照java属性的命名规范,第一个字母小写,后面单词第一个字母大写。节点说明:名称说明Report报表ReportHead报表头,由Row组成Row报表一行,由Cell组成Cell报表单元格ReportDetail报表的主体,由Col组成Col报表主体的一列ReportTail报表尾节点属性说明: 属性默认值必需类型描述idtrue数字与formatNum组成报表的唯一号formatNumtrue数字格式编号,与id组成报表的唯一号dataSourceType字符串暂时不使用fileUrl字符串画报表的cll文件名,暂不使用description字符串Report节点的中

5、文名称,暂不使用name字符串Report节点的名称, 暂不使用reportTypetrue数字报表类型,1为行动态增长列固定的报表subTotalCol1数字当有小计时候,第“subTotalCol“列填写“小计:”sumTotalCol1数字当有合计时候,第“sumTotalCol“列填写“合计:”fixedCol0数字第一列到第”fixedCol”列固定属性默认值必需类型描述drawLineRow0数字报表列名的级数,表头需要画表格线的行数RowRow报表头由Row组成属性默认值必需类型描述rowHeight20数字行高name字符串暂时不使用CellCell报表行由Cell组成属性默认

6、值必需类型描述name“”字符串暂时不使用modifyfalse布尔型该cell是否允许修改(暂未实现)colSpan1数字列跨度rowSpan1数字行跨度type“”true字符串有label、mixed、input三种取值,label表示字符串值,字符串取属性value中存放的值。input表示从集合键值映射中取值,键值即为Property中的值;mixed则以键值映射中的值代替value中的#从而显示出来align36数字单元格对齐方式fontSize12数字字体大小fontStyle0数字字体风格color0x000000数字字体颜色value“”字符串取值为mixed,则value不

7、能为空property“”字符串取值为input,mixed,则property不能为空属性默认值必需类型描述ifSubTotalfalse布尔型是否要小计orderby字符串小计的分组依据ifSumTotalfalse布尔型是否要合计sortCols以逗号分割的数字可排序的列号(“3,4,5“则表示第3,第4,第5列可排序,双击表头则会排序)rowHeight20数字行高ColCol属性默认值必需类型描述name字符串暂时不使用colSeq数字列的序号(暂时不使用)colWidth100数字列的宽度ifColHiddenfalse布尔型该列是否隐藏(暂未实现)type“”true字符串ide

8、ntity表示列值自动增长、input、mixed(暂未实现)、label同cell节点、formula表示计算公式dataTypeString字符串该列的数据类型Double, Currency,Stringformat数字#字符如果数值类型为double型,小数点的位数和千位的分隔符; dataType为Double时,不能为空,cll只提供逗号空格两种分隔符align36数字该列对齐方式fontSize12数字字体大小fontStyle0数字字体风格color0x000000数字字体颜色value字符串type取值为mixed,不能为空property字符串type取值为input,mi

9、xed,不能为空subTotalColfalse布尔型该列是否小计sumTotalColfalse布尔型该列是否合计sortColfalse布尔型暂时不使用calFormula字符串在type=formula时的计算公式, 取值为formula,不能为空ifConVertfalse布尔型该列是否可以进行单位转换(暂未实现)enumeratation“”字符串单位转换的枚举(暂未实现)1.3.2已经实现的功能一个报表可以定义多种格式。可以设定报表名称、列名称、表头、表尾、表体文字的大小,设定单元格对其方式,颜色,风格。可以设定固定行列,固定列需要指定,表头所占行固定。可以设置每一行的行高。能够实

10、现小计、合计。由于在画表格线时,表头中列名需要画线,所以要指定需要画线的行数。可以实现表头表尾单元格的合并。对Cell,已经实现type为label,mixed,input的功能。对Col,已经实现type为input、identity、formula功能。可以实现在报表展现之后按某列排序,如果某列数据类型为数值型,可以设定小数位数和千分位的分隔符。1.4服务器配置更改 1.在services.properties文件中添加如下内容: #报表服务services.ReportService.classname=com.loushang.util.service.report.OurReport

11、Serviceservices.ReportService.earlyInit=true2.报表配置文件的默认路径为/WEB-INF/conf/report/默认文件名为reports.xml如果要修改配置文件路径为/WEB-INF/conf/修改文件名为report.xml则在services.properties添加如下内容:services.ReportService.reportsPath = /WEB-INF/conf/services.ReportService.reportsFile = report.xml1.5Command取数据的变化以前的command都是把查询条件放入r

12、equest中。根据查询条件从数据库中取出的数据放入ArrayList或Vector,再放入request中。,在jsp页面取得查询条件和数据库的值,通过jsp、script和Cell脚本来控制其显示格式。现在要把表头、表体、表尾的数据均放入ReportData中,其参数为Object,List,Object。第一个参数和第三个参数分别存放表头和表尾的数据,必须要实现Map接口,一般为HashMap或Hashtable。第二个参数存放表体的数据,必须要实现List接口,一般为ArrayList和Vector。ReportData data = new ReportData(head, ret,

13、 trail);再把ReportData放入request中。在页面从request中取到数据,以一定格式展现。可以把报表的唯一标志号放入查询页面,在command取到后再放入request中,在展示页面获取调用。1.6Jsp的变化 现在所有的报表共用一个Web展示的Jsp页面,该jsp页面从request中取得报表数据,通过报表id和formatNum得到一个报表对象,然后调用报表对象的getCellHTML得到报表展示的Script脚本。通过out.println在页面上打出来。1.7cll文件的变化由于Cell制造商没有放开是否显示不滚动区域分割线和是否隐藏背景网格线的接口,而我们的报表

14、一般不显示滚动区域分割线,所以需要一个cll文件,该文件不显示滚动区域分割线。所有的报表共用这个cll文件,该文件是一个空的cll文件。1.8如何开发 现在灵活报表只进行了Web展现的开发,Command与查询页面还没有作大的改进。现在可以在查询页面提供查询条件和报表的唯一号,然后在Command中把表头表尾的数据和数据库的数据均放入ReportData。如果修改了报表的xml配置,则刷新资源即可。1.9报表实例客户销售统计表:1.9.1XML配置见reportsbase.xml报表唯一号为01003000,为列固定,行动态增长的报表。表名为客户销售统计表,占4列。表列名的级数为1。查询条件为

15、销售部门和统计日期,根据键值DPT_SALE_NAME,START_DATE,END_DATE,从Map中取得。列名分别为客户名称、购货卡号、实销数量、实销金额,数据类型分别为String,String,Double,Double,如果为Double类型,则保存两位小数,千分位用逗号分割。根据键值CUST_NAME, PURCH_CARD_ID,QTY_SOLD,AMT_SOLD从List中的Map集合中取得。表尾为制表人和制表日期,根据键值userName,date,从Map中取得。1.9.2Command以前的Command: UserLoginInfo user = (UserLogin

16、Info) request.getSession().getAttribute(UserLoginInfo); String Com_id = user.getUserDefault().getComId(); /从页面上取得查询条件 String start_date = request.getParameter(BEGIN_DATE); request.setAttribute(START_DATE, start_date); String end_date = request.getParameter(END_DATE); request.setAttribute(END_DATE, e

17、nd_date); String cust_id = request.getParameter(CUST_ID); if (cust_id = null | cust_id.equals() request.setAttribute(CUST_NAME, 所有客户); else String cust_name = (String) getCustName(cust_id, Com_id); request.setAttribute(CUST_NAME, cust_name); String dpt_sale_id = request.getParameter(DPT_SALE_ID); if

18、 (dpt_sale_id = null | dpt_sale_id.equals() String dpt_sale_name = 所有销售部门; request.setAttribute(DPT_SALE_NAME, dpt_sale_name); else String dpt_sale_name = getDptSaleName(dpt_sale_id, Com_id); request.setAttribute(DPT_SALE_NAME, dpt_sale_name); String puh_card_id = request.getParameter(PUH_CARD_ID);

19、/从数据库中取得结果集放入Vector,再放入request中 Vector ret = getCondition(start_date, end_date, Com_id, dpt_sale_id, cust_id,puh_card_id,request); request.setAttribute(TEMP, ret);现在的Command: UserLoginInfo user = (UserLoginInfo) request.getSession().getAttribute(UserLoginInfo); String Com_id = user.getUserDefault().

20、getComId(); /声明HashMap对象,查询条件放入HashMap; HashMap head = new HashMap(); String start_date = request.getParameter(BEGIN_DATE); head.put(START_DATE, start_date); String end_date = request.getParameter(END_DATE); head.put(END_DATE, end_date); String cust_id = request.getParameter(CUST_ID); if (cust_id =

21、null | cust_id.equals() head.put(CUST_NAME, 所有客户); else String cust_name = (String) getCustName(cust_id, Com_id); head.put(CUST_NAME, cust_name); String dpt_sale_id = request.getParameter(DPT_SALE_ID); if (dpt_sale_id = null | dpt_sale_id.equals() String dpt_sale_name = 所有销售部门; head.put(DPT_SALE_NAM

22、E, dpt_sale_name); else String dpt_sale_name = getDptSaleName(dpt_sale_id, Com_id); head.put(DPT_SALE_NAME, dpt_sale_name); String puh_card_id = request.getParameter(PUH_CARD_ID); Vector ret = getCondition(start_date, end_date, Com_id, dpt_sale_id, cust_id,puh_card_id,request); /声明HashMap对象,制表人制表日期放

23、入HashMap HashMap trail = new HashMap(); trail.put(userName,user.getUserName(); trail.put(date,user.getDate(); ReportData data = new ReportData(head,ret,trail); request.setAttribute(Contants.REPORTDATA, data);request.setAttribute(Contants.KEY_REPORTID,”0300000”);1.9.3web展现的jsp:if(DCellWeb1.Login( 浪潮齐

24、鲁软件, , 13040257, 5000-1207-7711-6004 ) = 0) alert(注册失败!); var filename=; filename = filename+report/common.cll; var result=DCellWeb1.OpenFile(filename,); if(result!=1) alert(打开文件错误); /设置允许自动折行,由于报表格式设置了行高,没有设置最合适行高 var height; for(m=1; m=DCellWeb1.getRows(0); m+) for(n=1; n=DCellWeb1.getCols(0); n+) DCellWeb1.SetCellTextStyle( n, m, 0, 2 ); document.getElementById(Msg).style.display=none;document.getElementByI

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1