一种单据报表套打方法_2

文档序号:8395950阅读:来源:国知局
面,即实际单据页面,然后将原始单据页面中背景图外的内容全部复制到实际单据页面,将数据库字段和报表函数放置到实际单据页面的对应位置,步骤如图3和图4所示:
[0050]I)创建第二工作表,实际单据页面;
[0051]2)查找实际单据页面实际使用区域:查找实际单据页面中的IastCell单元格,此单元格的行号和列号确定工作表中实际使用的区域的行数和列数,分别记为MaxRow和MaxColumn ;
[0052]3)调整行高和列宽。对于实际单据页面中每个列C0L,若其列号c满足c〈=MaxColumn,将其宽度设置为与原始单据页面中第c列相同,对于实际单据页面中每个行R0W,若其行号r满足r〈 = MaxRow,将其高度设置为与原始单据页面中第r行相同;
[0053]4)处理合并单元格:搜索原始单据页面中有效使用区中的每个单元格,若该单元格为合并单元格,则找出该合并单元格包含的单元格集合,并在实际单据页面中将对应的单元格集合做合并处理;
[0054]5)复制单元格边框:搜索原始单据页面有效使用区中的每个单元格,若有边框,则在实际单据页面中对应单元格设置相同的边框;
[0055]6)复制文本:搜索原始单据页面有效使用区中的每个单元格,若有文本,则在实际单据页面中对应单元格设置相同的文本;
[0056]7)设置数据库字段及报表函数:从数据源中获取数据库字段或者报表函数放置到实际单据页面的合适位置。
[0057]步骤六)保存报表模板:保存单据报表模板时,将以下内容保存到报表模板的不同内容节点:原始单据工作表、实际单据工作表、实际单据工作表与原始单据工作表的差异、原始单据图片,检索数据的查询语句。在本实施例中,报表模板保存为XML文件,原始单据页面、实际单据页面、实际单据页面与原始单据页面的差异都保存为XML文件中的一个table节点,每个table节点包含若干个row节点,对应于单据工作表中的行,每个row节点包含若干cell节点,对应于单据工作表中的单元格,每个cell具有宽度、边框、字体、填充色及文本等属性,由单据工作表中相应单元格的设置决定。原始单据工作表和实际单据工作表的table子节点通过搜索其有效工作区的每个单元格得到。实际单据工作表与原始单据工作表的差异以实际单据的table子节点为基础,对于其中的每个cel 1,减去出现在原始单据table子节点中的各种属性,即得到实际单据工作表与原始单据工作表的差异的table子节点。原始单据的图片存在指定目录下,报表模板中保存其文件名,数据查询语句也以一个节点的形式保存在报表模板中。
[0058]步骤七)浏览报表。在报表服务器的支持下,用报表数据查询语句检索要展示的数据,并将其填充到实际单据中,即用检索到的实际数据替换实际单据table子节点中的数据库字段及报表函数,然后根据此table子节点生成WEB页面展示给用户。
[0059]步骤八)报表打印。单据报表打印分为套打和非套打,为了方便用户选择打印方式,在报表浏览web页面上设置套打和非套打的按钮。当进行非套打时,直接将步骤7中展示的报表打印出来即可,当进行套打时,将实际单据与原始单据的差异table子节点中的数据库字段及报表函数用步骤7中得到的其实际值替代,并根据此table子节点生成WEB页面并在印刷有原始单据的单据纸上打印此差异单据,实现套打。
[0060]以上实例的说明只是用于帮助理解本发明的核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种单据报表套打方法,其特征在于,包括如下步骤: 步骤一):将原始单据扫描为图片:将原始单据扫描为原始单据图片,所述原始单据图片与原始单据大小相同; 步骤二)新建原始单据页面:创建原始单据页面,所述原始单据页面为空白页面; 步骤三)导入原始单据图片至原始单据页面:将原始单据图片导入原始单据页面作为背景,调整原始单据页面的大小至与原始单据图片完全重合; 步骤四)设计原始单据页面:在原始单据页面上,设置与背景相同的表格边框及静态文字,使原始单据页面与原始单据完全一致; 步骤五)设计实际单据页面:创建空白单据页面,即实际单据页面,然后将原始单据页面中背景图外的内容全部复制到实际单据页面,将数据库字段和报表函数放置到实际单据页面的对应位置; 步骤六)保存报表模板:将原始单据页面、实际单据页面、实际单据页面与原始单据页面的差异页面、原始单据图片和检索数据的查询语句保存到报表模板的不同内容节点,然后保存报表模板; 步骤七)浏览报表:在报表服务器中,用报表数据查询语句检索需要的数据,将其填充到实际单据页面中; 步骤八)报表打印:选择套打模式或非套打模式,若选择非套打模式则直接打印实际单据页面;若选择套打,则将通过报表数据查询语句检索到的数据及函数表达式求值结果填充到实际单据页面与原始单据页面的差异页面中的对应位置,然后打印。
2.如权利要求1所述的单据报表套打方法,其特征在于,所述原始单据页面和实际单据页面均包含若干行与若干列,所述步骤四)包含如下步骤: 1)调整原始单据页面的列宽与行高,使原始单据图片的每个单元格,正好包含原始单据页面上的一个或多个单元格; 2)合并单元格:合并原始单据页面上的单元格,使背景图片中的每个单元格,对应包含原始单据页面上的一个单元格,即若原始单据背景图中单据表格的某个单元格包含原始单据页面上的多个单元格,则将这多个单元格合并,使得合并后的单元格与背景图中的单元格完全重合; 3)设置表格及单元格边框:根据原始单据图片上的表格及单元格的边框,为原始单据页面上对应的单元格设置相同的边框; 4)添加静态文字:在原始单据页面上添加与原始单据图片的文字对应的位置添加相同的原始单据页面文字;所述原始单据页面文字的字体及对齐方式与原始单据图片的文字一致。
3.如权利要求1所述的单据报表套打方法,其特征在于,所述原始单据页面和实际单据页面均包含若干行与若干列,所述步骤五)包含如下步骤: a.创建第二工作表,即实际单据页面; b.查找原始单据页面实际使用区域:查找原始单据页面中的最后单元格(LastCell),根据此单元格的行号和列号确定实际单据页面需要使用的区域的行数和列数; c.调整行高和列宽:将实际单据页面的行的高度和列的宽度设置为与原始单据页面相应的行的高度与列的宽度相同; d.处理合并单元格:搜索原始单据页面中有效使用区中的每个单元格,若该单元格为合并单元格,则找出该合并单元格包含的单元格集合,并在实际单据页面中将对应的单元格集合做合并处理; e.复制单元格边框:搜索原始单据页面有效使用区中的每个单元格,若有边框,则在实际单据页面中对应单元格设置相同的边框; f.复制文本:搜索原始单据页面有效使用区中的每个单元格,若有文本,则在实际单据页面中对应单元格设置相同的文本; g.设置数据库字段及报表函数:从数据源中获取数据库字段或者报表函数放置到实际单据页面的对应的位置。
4.如权利要求1所述的单据报表套打方法,其特征在于,所述原始单据页面和实际单据页面均包含若干行与若干列,所述步骤六)中,所述报表模板保存为XML文件,原始单据页面、实际单据页面、实际单据页面与原始单据页面的差异页面保存为所述XML文件中的一个区域节点,每个区域节点包含若干个行节点,所述行节点对应于报表模板中的行,每个行节点包含若干单元格节点,所述单元格节点对应于报表模板中的单元格,每个单元格的属性包含宽度、边框、字体、填充色及文本等,所述单元格的属性由报表模板中相应单元格的设置决定;原始单据页面和实际单据页面的区域子节点通过搜索报表模板的每个单元格得到;实际单据页面与原始单据页面的差异以实际单据页面的区域子节点为基础,将实际单据页面的每个单元格,减去出现在原始单据对应单元格子节点中的所有属性,即得到实际单据工作表与原始单据工作表的差异的区域子节点;所述原始单据图片存在指定目录下,报表模板中保存原始单据图片文件名,所述数据查询语句也以一个节点的形式保存在报表模板中。
5.如权利要求1所述的单据报表套打方法,其特征在于,在所述步骤八)中,在报表浏览界面上设置复选框以指明是否套打,或者在报表浏览界面上分别设置套打按钮和非套打按钮,或者分别设置套打菜单和非套打菜单。
【专利摘要】本发明公开了一种单据报表套打方法,包括如下步骤:步骤一):将原始单据扫描为图片;步骤二)新建原始单据页面;步骤三)导入原始单据图片至原始单据页面;步骤四)设计原始单据页面;步骤五)设计实际单据页面;步骤六)保存报表模板;步骤七)浏览报表;步骤八)报表打印。本发明使报表用户可在浏览报表时选择单据报表套打还是非套打,增加了单据打印的灵活性;且单据报表非套打无需使用原始单据的扫描图作为背景图,保证了单据报表的打印质量。
【IPC分类】G06F3-12, G06F17-30
【公开号】CN104715030
【申请号】CN201510107187
【发明人】聂作先, 蒋新华, 聂明星, 邵明, 李光洋, 朱悦涵, 王平阳, 张顺淼, 杨海燕
【申请人】福建工程学院
【公开日】2015年6月17日
【申请日】2015年3月12日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1