专利名称:一种票据处理装置及方法
技术领域:
本发明涉及管理信息系统,特别涉及一种票据处理技术。
背景技术:
票据的处理是管理信息系统常见的功能。
票据是作为商业运作的凭据来使用的,它不同于普通文档,票据一般都有 格式要求。每家企业根据自身实际需要会设计不同大小、样式的票据来作为商 业运作的凭据,比如图书出版商会设计能清楚说明图书名称、图书分类、图书 编号、图书价格等的票据,而计算机销售商会设计能清楚说明计算机各项规格 的票据,因此企业之间对票据的需求可能会相差巨大,票据处理技术显得尤为重要。
管理信息系统通常会提供一些标准票据打印功能或应用户要求开发一些 个性化票据打印功能,由管理信息系统打印这些票据,以提高生产效率。本发 明人发现,传统的管理信息系统在处理票据时,通常根据用户对票据要求的不 同情况,通过编写程序代码来定制开发,进行打印。票据的内容、格式不同, 所编写的代码也不同,因此每一种内容、格式的票据都需对应设计一套新的代
码来支持;而代码一^:都内置在程序中,用户难以修改,因此用户无法自己灵 活定制票据内容及格式,从而使得票据处理在开发成本上大大提高。
发明内容
本发明提供一种票据处理装置及方法,用以实现使用户能根据自身需要灵 活定制票据内容及格式,降低票据处理的开发成本。
本发明实施例提供了一种票据处理装置,包括数据处理模块、票据定义文件模块和核心打印模块,其中
数据处理模块,用于获得票据处理所需的数据,并将所述票据处理所需的
数据提供给核心打印模块;
票据定义文件模块,用于存储定制的票据定义文件,并将定制的票据定义
文件提供给核心打印模块,所述票据定义文件包括票据的组成元素和格式信 自
核心打印模块,用于将所述数据处理模块提供的票据处理所需的数据与所 述票据定义文件模块提供的定制的票据定义文件t的格式信息进行匹配,调用 打印设置接口并获取设置的打印参数,将匹配后的带格式信息的数据、打印参
数发送给打印^/L。
本发明实施例^是供了 一种使用所述票据处理装置进行票据处理的方法,包
括
数据处理模块获得票据处理所需的数据,并将所述票据处理所需的数据提 供给核心打印模块;
票据定义文件^^莫块存储定制的票据定义文件,并将所述定制的票据定义文 件提供给所述核心打印模块;
所述核心打印模块将所述数据处理模块提供的票据处理所需的数据与所 述票据定义文件模块提供的定制的票据定义文件中的格式信息进行匹配;
所述核心打印模块调用打印设置接口,获取设置的打印参数,并将所述匹 配后的带格式信息的数据、以及所述打印参数通过所述打印设置接口发送给打 印机。
本发明实施例提供的票据处理装置及方法,将票据处理所需的数据与核心 打印模块分离,当进行票据处理时,通过专门的数据处理模块获得票据处理所 需的数据;将票据处理所需的数据与票据定义文件分离,而通过专门的核心打 印模块将票据处理所需的数据与票据定义文件的格式信息进行匹配;用户通过 可视化定制模块可以根据自身实际需要方便地通过拖拽操作来进行票据定义
文件的定制,而不需要编写代码,且可定义的票据定义文件格式非常丰富,可 以包括文本、表格、图片等格式,因此用户可以根据自身需要灵活定制票据内 容及格式,降低了票据处理的开发成本。
图1为本发明实施例中票据处理装置结构示意图; 图2为本发明实施例中票据处理方法流程图; 图3为本发明实施例一中票据处理方法流程图; 图4为本发明实施例一中可视化定制模块界面截图; 图5为本发明实施例一中获取打印参数示意图。
具体实施例方式
为了解决现有技术中用户无法根据自身需要灵活定制票据内容及格式、票 据处理的开发成本较高的问题,本发明实施例提出一种票据处理装置及方法。 该装置及方法将票据处理所需的数据与核心打印模块分离,当进行票据处理 时,通过专门的数据处理模块获得票据处理所需的数据;将票据处理所需的数 据与票据定义文件分离,而通过专门的核心打印模块将票据处理所需的数据与
定制的票据定义文件中的格式信息进行匹配;定制票据定义文件时,不需要编 写代码,而通过专门的可视化定制模块进行拖拽等操作来定制票据定义文件。
利用本发明实施例提供的票据处理装置及方法,不仅可以使用户能根据自 身需要灵活定制票据内容及格式,还降低了票据处理的开发成本。
参阅图1所示,本发明实施例提供的票据处理装置包括数据处理模块 101、票据定义文件模块102和核心打印模块103;
其中,数据处理模块101,用于获得票据处理所需的数据,并将所述票据 处理所需的数据提供给核心打印模块103;
票据定义文件模块102,用于存储定制的票据定义文件,并将定制的票据
定义文件提供给核心打印模块103;
核心打印模块103,用于将数据处理模块101提供的票据处理所需的数据 与票据定义文件模块102提供的定制的票据定义文件中的格式信息进行匹配, 调用打印设置接口并获取设置的打印参数,将匹配后的带格式信息的数据、打 印参数发送给打印机105。
其中,数据处理模块101所获得的票据处理所需的数据,是适合核心打印 模块103处理的数据。
本发明实施例提供的票据处理装置还可以包括可视化定制模块104,用于 用户以图形化方式定制票据定义文件,并将定制的票据定义文件提供给票据定 义文件模块102。
实际上,可视化定制模块104就是向用户提供了一个可视化的定义票据内 容和票据定义文件的装置。用户可以在可视化定制模块104提供的界面上,利 用可视化定制模块104提供的模板元素随意地自行通过拖拽等操作来定制票据 定义文件,可以对于一个自定义纸张坐标系内的任意位置进行编辑,如同绘图 一般。
其中,票据定义文件包括票据的组成元素和格式信息,其用票据描述语言 描述了票据的组成元素和格式信息。票据定义文件中的格式丰富,包括文本、 表格、图片等格式,并支持文本自定义字数回行、自定义每页显示表格行数。 下面是一个票据定义文件的节选部分
PrintMode 0,0 〃定义打印机输出文档的方向、按区域输出字符串时的输出
方式
Org 0,100,2100,2500 //定义模板的原点坐标及模板的宽度和高度 **Head—begin 〃开始输出标志
Font宋体,70,1 〃定义接下来的输出字符的字体,大小和风档^
String 520,10,1900,80,0,( 〃按指定的坐标、宽高、对齐方式输出一字符
串
String 650,10,1900,80,0,%51 〃按指定的坐标、宽高、对齐方式输出一字
符串
String 1080,10,1900,80,0,)广告预定单 〃按指定的坐标、宽高、对齐方式 输出一字符串
Line 100,200,1950,200,4 〃根据指定的起止点坐标、线宽绘制一条直线 Line 100,270,1950,270,1 〃根据指定的起止点坐标、线宽绘制一条直线 Line 100,340,1950,340,1 〃根据指定的起止点坐标、线宽绘制一条直线 Line 100,410,1950,410,1 //根据指定的起止点坐标、线宽绘制一条直线
Font宋体,35,0 〃定义接下来的输出字符的字体,大小和风格 String 100,130,200,50,1,合同号 〃按指定的坐标、宽高、对齐方式输出 一字符串
String 200,130,200,50,1,%15 〃按指定的坐标、宽高、对齐方式输出一字
符串
String 650,130,200,50,1,预定日期 〃按指定的坐标、宽高、对齐方式输 出一字符串
String 780,130,500,50,1,%60 〃按指定的坐标、宽高、对齐方式输出一字
符串
String 1350,130,200,50,1,接待员 〃按指定的坐标、宽高、对齐方式输出 一字符串
String 1500,130,200,50,1,%16 〃按指定的坐标、宽高、对齐方式输出一字
符串
Font宋体,30,0 〃定义接下来的输出字符的字体,大小和风格
Table 100,900,3,1950,50,1,4,16 〃按参数要求输出表格 Width 2,130,1 〃设置第 一列宽度 Width 6,100,1 〃设置第二列宽度 Width 4,150,1 〃设置第三列宽度
Head_End 〃结束输出标志
参阅图2所示,利用本发明实施例提供的票据处理装置进行的票据处理方 法包括以下步骤
5201、 数据处理^t块获得票据处理所需的数据,并将获得的票据处理所需 的数据提供给核心打印模块。
数据处理模块调用函数DoPrintData (数据获得函数),向函数DoPrintData 输入的参数为票据类型;函数DoPrintData的处理流程是检查票据类型是否合 法,如果合法,则去数据库里读取此票据类型的数据,将数据存入相应的对象 中得到票据处理所需的数据,并向数据处理模块返回票据处理所需的数据;
数据处理模块调用函数ProvidePrintData (数据提供函数),向函数 ProvidePrintData输入的参数为票据处理所需的数据;函数ProvidePrintData的 处理流程是对该输入参数进行校验并緩存,转换为核心打印模块能够识别的 格式,最后将票据处理所需的数据提供给核心打印模块。
5202、 核心打印模块接受数据处理模块提供的数据,并将其进行緩存。
5203、 票据定义文件模块存储定制的票据定义文件,并将该定制的票据定 义文件提供给核心打印模块緩存。
其中,票据定义文件可以通过其他程序定制。
5204、 核心打印模块分别读取其緩存的票据处理所需的数据、以及定制的 票据定义文件。
核心打印模块调用函数DoProvideData (数据读取函数),向函数 DoProvideData输入的参数为核心打印模块緩存的票据处理所需的数据;函数
DoProvideData的处理流程是读取出输入进来的数据对象(核心打印模块緩 存的票据处理所需的数据),对数据对象中的数据进行格式化,将格式化后的 数据进行保存,从而读取了数据处理模块緩存的票据处理所需的数据,并在核 心打印模块设置已读取标志。
核心打印模块调用函数GetFormatFormTPT (票据定义文件读取函数),向 函数GetFormatFormTPT输入的参数为票据定义文件模块緩存的定制的票据定 义文件;函数GetFormatFormTPT的处理流程是判断票据定义文件模块缓存 的定制的票据定义文件是否存在,如果存在,则打开该文件,读取该文件中的 数据,将该文件中的数据保存到相应对象中,从而读取了票据定义文件模块緩 存的定制的票据定义文件,并在核心打印模块设置已读取标志。
5205、 核心打印模块将其读取到的票据处理所需的数据与定制的票据定义 文件中的格式信息进行匹配。
匹配的过程就是将票据处理所需的每一个数据与票据定义文件定义的对 应格式信息进行合并,从而可使票据处理所需的每一个数据按票据定义文件中 的格式要求打印输出。
核心打印模块调用函数DoDataAndFormat (匹配函数),向函数 DoDataAndFormat输入的参数为核心打印模块读取到的票据处理所需的数据、 以及定制的票据定义文件中的格式信息;函数DoDataAndFormat的处理流程 是循环遍历步骤S204中已经格式化的数据对象,为每一个数据项遍历格式 信息,找到数据项对应的格式信息后,进行保存,将票据处理所需的数据与定 制的票据定义文件中的格式信息进行匹配从而得到匹配后的带格式信息的数 据,并向核心打印模块返回匹配后的带格式信息的数据。
5206、 核心打印模块调用打印设置接口,获取设置的打印参数。 核心打印模块调用函数ProvidePrintParam (打印设置接口调用函数),向
函数ProvidePrintParam输入的参数为打印参数;函数ProvidePrintParam的处理 流程是首先校验打印参数有效性,将打印参数进行保存,然后遍历所有打印
参数,将打印参数显示给用户,从而调用了打印设置接口;
核心打印模块调用函数GetPrintParam (打印参数获取函数),函数 GetPrintParam的处理流程是读取用户输入的数据,然后校验打印参数有效性, 将打印参数保存,从而获取设置的打印参数。
5207、 核心打印模块将匹配后的带格式信息的数据、以及打印参数通过打 印设置接口发送给打印机,向打印机发出打印指令。
5208、 打印机将匹配后的带格式信息的数据按照打印参数进行打印输出。 打印机调用函数PrintData (打印函数),向函数PrintData输入的参数为匹
配后的带格式信息的数据和设置的打印参数,函数PrintData的处理流程是 首先读入带格式信息的数据,读取打印参数,根据打印参数设置打印机,循环 遍历所有数据,将数据输出到打印机,进行打印,从而使打印机将匹配后的带 格式信息的数据按照打印参数进行打印输出。
其中,在步骤S203之前,还可以通过可视化定制模块定制票据定义文件, 并将定制的票据定义文件提供给票据定义文件模块;在步骤S202中,核心打 印模块可以不对数据处理模块提供的数据进行緩存,在步骤S203中,核心打 印模块可以不对票据定义文件模块提供的票据定义文件进行緩存,而在步骤 S204中,核心打印模块可以直接将其接收到的票据处理所需的数据与定制的票 据定义文件中的格式信息进行匹配。
述
实施例一
结合图4和图5,本发明实施例一利用本发明实施例提供的票据处理方法 定制并打印一具有特定内容的表格形式的票据,参阅图3所示,其具体流程如 下所述
S301、用户通过可视化定制模块定制票据定义文件,将定制的票据定义文 件提供给票据定义文件模块。
参阅图4所示为可视化定制模块界面截图,该票据处理所需的数据是用户
通过该可视化定制模块输入的"参数l"和"参数2";用户在可视化定制模块 中,通过拖拽操作选择票据组成元素,通过下拉菜单选择线宽、字体大小,在 宽和高对应的输入框填写对应数值等操作来定制票据定义文件。
5302、 数据处理模块准备"参数l"和"参数2"各自所对应的适合核心 打印模块处理的数据,并将这些数据提供给核心打印模块。
5303、 票据定义文件模块存储可视化定制模块提供的定制的票据定义文 件,并将该定制的票据定义文件提供给核心打印^^莫块。
5304、 核心打印模块接受数据处理模块提供的票据处理所需的数据、以及 票据定义文件模块提供的定制的票据定义文件,并将它们进行緩存。
5305、 核心打印模块分别读取其緩存的票据打处理所需的数据、以及定制 的票据定义文件。
5306、 核心打印模块将其读取到的票据处理所需的数据与定制的票据定义 文件中的格式信息进行匹配。
参阅图4所示,核心打印模块将读取到的"参数r所对应的数据与定制
的票据定义文件中第一行的第一列位置进行匹配,将"参数2"所对应的数据
与定制的票据定义文件中第 一行的第二列位置进行匹配。
5307、 核心打印模块调用打印设置接口,获取设置的打印参数。 参阅图5所示,获取的打印参数包括打印机名称、打印份数、打印范围等
打印参数。
5308、 核心打印模块通过打印设置接口,将匹配后的带格式信息的数据以 及打印参数发送给打印机,向打印机发出打印指令。
5309、 打印机将匹配后的带格式的数据按照打印参数进行打印输出。 本发明实施例一利用本发明实施例提供的票据处理方法,能定制并打印用
户自身需要的具有特定内容的表格形式的票据,降低了票据处理的开发成本。 综上所述,本发明实施例提供的票据处理装置及方法,将票据处理所需的
数据与核心打印模块分离,当进行票据处理时,通过专门的数据处理模块获得
票据处理所需的数据;将票据处理所需的数据与票据定义文件分离,而通过专
门的核心打印模块将票据处理所需的数据与票据定义文件的格式信息进行匹
配;用户通过可视化定制模块可以根据自身实际需要方便地通过拖拽操作来进 行票据定义文件的定制,而不需要编写代码,且可定义的票据定义文件格式非 常丰富,可以包括文本、表格、图片等格式,因此用户可以根据自身需要灵活 定制票据内容及格式,降低了票据处理的开发成本。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发 明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种票据处理装置,其特征在于,包括数据处理模块、票据定义文件模块和核心打印模块,其中数据处理模块,用于获得票据处理所需的数据,并将所述票据处理所需的数据提供给核心打印模块;票据定义文件模块,用于存储定制的票据定义文件,并将定制的票据定义文件提供给核心打印模块,所述票据定义文件包括票据的组成元素和格式信息;核心打印模块,用于将所述数据处理模块提供的票据处理所需的数据与所述票据定义文件模块提供的定制的票据定义文件中的格式信息进行匹配,调用打印设置接口并获取设置的打印参数,将匹配后的带格式信息的数据、打印参数发送给打印机。
2、 如权利要求l所述的装置,其特征在于,所述装置进一步包括 可视化定制模块,用于用户以图形化方式定制票据定义文件,并将定制的票据定义文件提供给所述票据定义文件模块。
3、 如权利要求1所述的装置,其特征在于,所述核心打印模块还用于对 所述数据处理模块提供的票据处理所需的数据、及所述票据定义文件模块提供 的定制的票据定义文件进行緩存及读取。
4、 一种使用权利要求1所述的装置进行票据处理的方法,其特征在于, 包括数据处理模块获得票据处理所需的数据,并将所迷票据处理所需的数据提 供给核心打印模块;票据定义文件;溪块存储定制的票据定义文件,并将所述定制的票据定义文 件提供给所述核心打印模块;所述核心打印模块将所述数据处理模块提供的票据处理所需的数据与所 述票据定义文件模块提供的定制的票据定义文件中的格式信息进行匹配;所述核心打印模块调用打印设置接口,获取设置的打印参数,并将所述匹 配后的带格式信息的数据、以及所述打印参数通过所述打印设置接口发送给打 印机。
5、 如权利要求4所述的方法,其特征在于,所述数据处理模块调用数据 获得函数获得所述票据处理所需的数据,调用数据提供函数将所述票据处理所 需的数据提供给所述核心打印模块。
6、 如权利要求4所述的方法,其特征在于,所述核心打印模块调用匹配 函数将所述票据处理所需的数据与所述定制的票据定义文件中的格式信息进 行匹配。
7、 如权利要求4所述的方法,其特征在于,所述核心打印模块调用打印 设置接口调用函数来调用所述打印设置接口 ,调用打印参数获取函数获取所述 设置的打印参数。
8、 如权利要求4所述的方法,其特征在于,所述票据定义文件包括票据 的组成元素和格式信息,所述格式包括文本、表格、及图片。
9、 如权利要求4所述的方法,其特征在于,可视化定制模块用于用户以 图形化方式定制票据定义文件,并将所述定制的票据定义文件提供给所述票据 定义文件模块。
10、 如权利要求4所述的方法,其特征在于,所述数据处理模块将所述票 据处理所需的数据提供给所述核心打印模块后,所述核心打印模块对所述数据 进行緩存;所述核心打印模块将所述票据处理所需的数据与定制的票据定义文件中 的格式信息进行匹配之前,读取其緩存的所述票据处理所需的数据。
11、 如权利要求10所述的方法,其特征在于,所述核心打印模块调用数 据读取函数读取其緩存的所述票据处理所需的数据。
12、 如权利要求4所述的方法,其特征在于,所述票据定义文件模块将定 制的票据定义文件提供给所述核心打印模块后,所述核心打印模块对所述票据定义文件进行緩存;所述核心打印模块将所述票据处理所需的数据与定制的票据定义文件中 的格式信息进行匹配之前,读取其緩存的所述定制的票据定义文件。
13、如权利要求12所述的方法,其特征在于,所述核心打印模块调用票
全文摘要
本发明公开了一种票据处理装置及方法,用以实现使用户能根据自身需要灵活定制票据内容及格式,降低票据处理的开发成本。该装置包括数据处理模块,用于获得票据处理所需的数据,并将所述票据处理所需的数据提供给核心打印模块;票据定义文件模块,用于存储定制的票据定义文件,并将定制的票据定义文件提供给核心打印模块,所述票据定义文件包括票据的组成元素和格式信息;核心打印模块,用于将所述数据处理模块提供的票据处理所需的数据与所述票据定义文件模块提供的定制的票据定义文件中的格式信息进行匹配,调用打印设置接口并获取设置的打印参数,将匹配后的带格式信息的数据、打印参数发送给打印机。
文档编号G07G5/00GK101174350SQ20071017744
公开日2008年5月7日 申请日期2007年11月15日 优先权日2007年11月15日
发明者天 刘, 刘胜飏, 徐迎春, 王建平, 白玉宇, 丹 蔡 申请人:北大方正集团有限公司;北京大学;北京北大方正电子有限公司