CN105955680A - 一种支持动态附加扩展信息的单据打印方法 - Google Patents
一种支持动态附加扩展信息的单据打印方法 Download PDFInfo
- Publication number
- CN105955680A CN105955680A CN201610260934.8A CN201610260934A CN105955680A CN 105955680 A CN105955680 A CN 105955680A CN 201610260934 A CN201610260934 A CN 201610260934A CN 105955680 A CN105955680 A CN 105955680A
- Authority
- CN
- China
- Prior art keywords
- document
- data
- model
- printing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1242—Image or content composition onto a page
- G06F3/1243—Variable data printing, e.g. document forms, templates, labels, coupons, advertisements, logos, watermarks, transactional printing, fixed content versioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明公开了一种支持动态附加扩展信息的单据打印方法,其实现过程为:首先进行单据打印格式设置,基于单据本身的数据模型及其递归引用的其他模型,设置要打印的内容及其格式,并分析保存打印涉及的表及其字段信息;单据打印时,根据打印格式引用的数据,动态组织数据进行打印。本发明的一种支持动态附加扩展信息的单据打印方法与现有技术相比,无须更改或新建数据模型,可大大减少打印数据模型数量,并降低实施工作量,并且根据打印内容组织数据,从而显著提高性能,动态设置打印单据引用的字典及其他单据信息,并且根据打印内容动态组织数据进行打印,从而使软件产品更加符合使用者的要求,在一定程度上做到随需应变,实用性强,易于推广。
Description
技术领域
本发明涉及计算机技术领域,具体地说是一种支持动态附加扩展信息的单据打印方法。
背景技术
现有的公共单据打印实现,基本上也是基于单据数据模型进行格式设置及组织打印数据进行打印。一般都存在以下两点局限:
灵活性差,不能自动设置单据的引用的其他字典或单据的信息,只能打印本单据数据模型上定义的表及字段。比如大部分单据都有审批流程,有的单位单据打印时需要打印部分单据审批过程数据。要满足这个需求,以目前主流的技术实现,需要对所有的需要打印审批过程的单据,再专门设置一个包含审批流程数据的模型,然后在新模型基础上定义打印格式,并组织数据。导致大量的数据模型定义,增加实施工作量,用户体验较差。
性能较差,组织数据时,根据表单模型取数,把不需要打印的内容也组织出来了,增加了数据库和应用服务器的压力,也增加了网络传输的压力。
基于此,本发明提供一种支持动态附加扩展信息的单据打印方法,实现更容易的打印单据引用的业务信息。
发明内容
本发明的技术任务是针对以上不足之处,提供一种支持动态附加扩展信息的单据打印方法。
一种支持动态附加扩展信息的单据打印方法,其实现过程为:
首先进行单据打印格式设置,基于单据本身的数据模型及其递归引用的其他模型,设置要打印的内容及其格式,并分析保存打印涉及的表及其字段信息;
单据打印时,根据打印格式引用的数据,动态组织数据进行打印。
还包括一单据打印数据组织单元,该单据打印数据组织单元在单据打印格式设置完成后,接收并根据传入的单据标识或条件、单据格式,组织打印数据,返回给客户端;客户端根据单据类型及单据标识或条件,提供选择打印格式、单据预览及打印服务。
所述单据打印格式设置的具体过程为:
首先,选择要进行打印格式设置的单据模型;
如果需要打印当前模型关联的其他模型,则选择关联的模型,把选择的模型自动挂接到当前模型上,通过关联的业务字段建立父子关系,重复执行该步骤,直到所有相关模型都已选择,最终形成新的完整的打印模型;
根据打印模型生成数据源,传递给打印设计器进行设计;
设计完成之后,保存格式时,分析打印内容,把其作为最终打印模型与打印格式一起保存到数据库里。
所述单据打印格式设置过程中,还附加单据数据模型的业务字段引用的字典或单据数据,并且支持继续递归引用。
附加字典或单据数据的过程为:
单据打印格式基于单据的数据模型进行设置;
单据数据模型中的数据项,使用业务字段进行描述,从而可以获取该数据项对应的字典或单据的模型;
单据打印格式设置时,选择单据数据模型中数据项对应的扩展业务信息,动态把其模型挂接到当前模型上,以便在格式上使用;
单据打印格式保存时,分析打印内容中使用的表及项目,并把结果保存到格式中,以便打印时直接使用;
单据打印格式数据以XML存放到数据库中。
单据打印服务的具体过程为:首先,根据传入格式标识,获取打印格式信息;然后,根据格式信息里的最终打印模型及传入的单据条件或单据标识,使用模型获取数据;然后,把数据以封装的打印数据源形式返回。
单据打印数据源使用封装的DataSet类型,表之间的关系使用Relation标识。
单据打印组织打印数据时,根据格式中保存的表、数据项、表之间的关系组织数据,即按打印内容组织数据。
返回的打印数据,即封装的DataSet类型中,包含的表、表之间的关系、表列信息是根据打印格式动态生成的。
本发明的一种支持动态附加扩展信息的单据打印方法和现有技术相比,具有以下有益效果:
本发明的一种支持动态附加扩展信息的单据打印方法,无须更改或新建数据模型,可大大减少打印数据模型数量,并降低实施工作量,并且根据打印内容组织数据,从而显著提高性能,动态设置打印单据引用的字典及其他单据信息,并且根据打印内容动态组织数据进行打印,从而使软件产品更加符合使用者的要求,在一定程度上做到随需应变,实用性强,易于推广。
附图说明
附图1为单据打印格式设置流程图。
附图2为单据打印数据组织过程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
如附图1、图2所示,本发明的一种支持动态附加扩展信息的单据打印方法,能够快速有效的设置打印单据引用的扩展信息,并基于此设置快速组织数据进行打印。
其实现过程为:
首先进行单据打印格式设置,基于单据本身的数据模型及其递归引用的其他模型,设置要打印的内容及其格式,并分析保存打印涉及的表及其字段信息;
单据打印时,根据打印格式引用的数据,动态组织数据进行打印。
还包括一单据打印数据组织单元,该单据打印数据组织单元在单据打印格式设置完成后,接收并根据传入的单据标识或条件、单据格式,组织打印数据,返回给客户端;客户端根据单据类型及单据标识或条件,提供选择打印格式、单据预览及打印服务。
所述单据打印格式设置的具体过程为:
首先,选择要进行打印格式设置的单据模型;
如果需要打印当前模型关联的其他模型,则选择关联的模型,把选择的模型自动挂接到当前模型上,通过关联的业务字段建立父子关系,重复执行该步骤,直到所有相关模型都已选择,最终形成新的完整的打印模型;
根据打印模型生成数据源,传递给打印设计器进行设计;
设计完成之后,保存格式时,分析打印内容,把其作为最终打印模型与打印格式一起保存到数据库里。
所述单据打印格式设置过程中,还附加单据数据模型的业务字段引用的字典或单据数据,并且支持继续递归引用。
附加字典或单据数据的过程为:
单据打印格式基于单据的数据模型进行设置;
单据数据模型中的数据项,使用业务字段进行描述,从而可以获取该数据项对应的字典或单据的模型;
单据打印格式设置时,选择单据数据模型中数据项对应的扩展业务信息,动态把其模型挂接到当前模型上,以便在格式上使用;
单据打印格式保存时,分析打印内容中使用的表及项目,并把结果保存到格式中,以便打印时直接使用;
单据打印格式数据以XML存放到数据库中。
单据打印服务的具体过程为:首先,根据传入格式标识,获取打印格式信息;然后,根据格式信息里的最终打印模型及传入的单据条件或单据标识,使用模型获取数据;然后,把数据以封装的打印数据源形式返回。
单据打印数据源使用封装的DataSet类型,表之间的关系使用Relation标识。
单据打印组织打印数据时,根据格式中保存的表、数据项、表之间的关系组织数据,即按打印内容组织数据,从而减少冗余的数据处理,并减少传输量;。
返回的打印数据,即封装的DataSet类型中,包含的表、表之间的关系、表列信息是根据打印格式动态生成的。
下边详细描述下实施本发明的技术方案:
单据打印格式设置部分。
以业务字段为基础的表单元数据模型,业务字段作为模型与模型之间关联的纽带,可通过属性组ID、属性组项目ID与其他模型建立关联,其存储结构如下:
根据模型和属性,自动挂接单据扩展信息的核心代码实现如下:
单据打印格式数据结构设计,其中打印数据模型在格式保存时进行分析动态生成(在设计模型基础上,删掉不打印的部分),用于打印时取数:
单据打印控件实现,本实施例里,继承自XtraReport控件,其主要添加方法及属性介绍如下:
单据打印数据源实现,此处使用单据数据源,在其基础上增加IDataDictionary接口实现,及部分属性方法,用于单据打印,此处仅列示打印相关部分:
单据打印数据组织单元,此处参见附图2说明,主要是根据格式保存的打印数据模型,使用公共表单的取数服务,直接取得数据。
单据打印服务,提供单据打印的公共服务,包括打印、预览、直接打印等方法,可直接集成于公共单据中,此部分与现有技术实现方案基本没有区别,不再详述。
本发明的方法可灵活附加主单据模型之外的附加信息,而不需要定义的专门用于特定打印格式的数据模型,可减少实施量,并大大减少系统中数据模型的数量。比如某军工客户需要打印全部业务单据的“审批过程”(单独模型),而挂审批流的单据模型上都有审批流程实例业务字段,其指向“审批过程”模型,则可以在打印单据设置时直接引用到“审批过程”数据(如审批人、审批时间、审批结论),而不需要每个单据再去设置一套数据模型用于打印。
打印格式保存时,分析打印内容,并与格式一起保存,组织数据时直接使用,可大大提高性能。若模型涉及多个数据库表,而实际打印只需部分表的部分列,现有的单据打印一般是根据单据模型取数,这样会把模型里的表和列都取出来,而本发明则仅需获取需要的数据,性能有显著提升。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (9)
1.一种支持动态附加扩展信息的单据打印方法,其特征在于,其实现过程为:
首先进行单据打印格式设置,基于单据本身的数据模型及其递归引用的其他模型,设置要打印的内容及其格式,并分析保存打印涉及的表及其字段信息;
单据打印时,根据打印格式引用的数据,动态组织数据进行打印。
2.根据权利要求1所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,还包括一单据打印数据组织单元,该单据打印数据组织单元在单据打印格式设置完成后,接收并根据传入的单据标识或条件、单据格式,组织打印数据,返回给客户端;客户端根据单据类型及单据标识或条件,提供选择打印格式、单据预览及打印服务。
3.根据权利要求2所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,所述单据打印格式设置的具体过程为:
首先,选择要进行打印格式设置的单据模型;
如果需要打印当前模型关联的其他模型,则选择关联的模型,把选择的模型自动挂接到当前模型上,通过关联的业务字段建立父子关系,重复执行该步骤,直到所有相关模型都已选择,最终形成新的完整的打印模型;
根据打印模型生成数据源,传递给打印设计器进行设计;
设计完成之后,保存格式时,分析打印内容,把其作为最终打印模型与打印格式一起保存到数据库里。
4.根据权利要求3所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,所述单据打印格式设置过程中,还附加单据数据模型的业务字段引用的字典或单据数据,并且支持继续递归引用。
5.根据权利要求4所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,附加字典或单据数据的过程为:
单据打印格式基于单据的数据模型进行设置;
单据数据模型中的数据项,使用业务字段进行描述,从而可以获取该数据项对应的字典或单据的模型;
单据打印格式设置时,选择单据数据模型中数据项对应的扩展业务信息,动态把其模型挂接到当前模型上,以便在格式上使用;
单据打印格式保存时,分析打印内容中使用的表及项目,并把结果保存到格式中,以便打印时直接使用;
单据打印格式数据以XML存放到数据库中。
6.根据权利要求2所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,单据打印的具体过程为:首先,根据传入格式标识,获取打印格式信息;然后,根据格式信息里的最终打印模型及传入的单据条件或单据标识,使用模型获取数据;然后,把数据以封装的打印数据源形式返回。
7.根据权利要求6所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,单据打印数据源使用封装的DataSet类型,表之间的关系使用Relation标识。
8.根据权利要求6所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,单据打印组织打印数据时,根据格式中保存的表、数据项、表之间的关系组织数据,即按打印内容组织数据。
9.根据权利要求7所述的一种支持动态附加扩展信息的单据打印方法,其特征在于,返回的打印数据,即封装的DataSet类型中,包含的表、表之间的关系、表列信息是根据打印格式动态生成的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610260934.8A CN105955680B (zh) | 2016-04-25 | 2016-04-25 | 一种支持动态附加扩展信息的单据打印方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610260934.8A CN105955680B (zh) | 2016-04-25 | 2016-04-25 | 一种支持动态附加扩展信息的单据打印方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105955680A true CN105955680A (zh) | 2016-09-21 |
CN105955680B CN105955680B (zh) | 2018-09-25 |
Family
ID=56915690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610260934.8A Active CN105955680B (zh) | 2016-04-25 | 2016-04-25 | 一种支持动态附加扩展信息的单据打印方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105955680B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733332A (zh) * | 2018-06-19 | 2018-11-02 | 山东浪潮通软信息科技有限公司 | 一种通用的打印模板元数据设计方法 |
CN111756799A (zh) * | 2020-05-20 | 2020-10-09 | 拉扎斯网络科技(上海)有限公司 | 一种打印信息的处理方法及装置 |
CN112416267A (zh) * | 2020-10-30 | 2021-02-26 | 山东浪潮通软信息科技有限公司 | 一种可配置的打印数据处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706720A (zh) * | 2009-11-23 | 2010-05-12 | 浪潮集团山东通用软件有限公司 | 一种运行时根据用户自定义信息进行界面展示方法 |
US20130027730A1 (en) * | 2011-07-26 | 2013-01-31 | Kyocera Document Solutions Inc. | Computer-Readable Recording Medium Storing Printer Driver for Causing Computer to Convert Text or Vector Object into Raster Object, and Printing Method with the Printer Driver |
CN103246733A (zh) * | 2013-05-13 | 2013-08-14 | 浪潮集团山东通用软件有限公司 | 一种基于元数据的动态表单系统及其生成方法 |
-
2016
- 2016-04-25 CN CN201610260934.8A patent/CN105955680B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706720A (zh) * | 2009-11-23 | 2010-05-12 | 浪潮集团山东通用软件有限公司 | 一种运行时根据用户自定义信息进行界面展示方法 |
US20130027730A1 (en) * | 2011-07-26 | 2013-01-31 | Kyocera Document Solutions Inc. | Computer-Readable Recording Medium Storing Printer Driver for Causing Computer to Convert Text or Vector Object into Raster Object, and Printing Method with the Printer Driver |
CN103246733A (zh) * | 2013-05-13 | 2013-08-14 | 浪潮集团山东通用软件有限公司 | 一种基于元数据的动态表单系统及其生成方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733332A (zh) * | 2018-06-19 | 2018-11-02 | 山东浪潮通软信息科技有限公司 | 一种通用的打印模板元数据设计方法 |
CN108733332B (zh) * | 2018-06-19 | 2021-04-16 | 浪潮通用软件有限公司 | 一种通用的打印模板元数据设计方法 |
CN111756799A (zh) * | 2020-05-20 | 2020-10-09 | 拉扎斯网络科技(上海)有限公司 | 一种打印信息的处理方法及装置 |
CN111756799B (zh) * | 2020-05-20 | 2023-04-07 | 拉扎斯网络科技(上海)有限公司 | 一种打印信息的处理方法及装置 |
CN112416267A (zh) * | 2020-10-30 | 2021-02-26 | 山东浪潮通软信息科技有限公司 | 一种可配置的打印数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105955680B (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7519900B2 (en) | System and method for processing digital annotations | |
US9098475B2 (en) | Apparatus and method for generating reusable composite components during dynamic document construction | |
JP5336391B2 (ja) | 構造化された地理的なデータの検索 | |
US8782096B2 (en) | Virtual repository management | |
JP5152877B2 (ja) | 文書ベースシステムにおける文書データ記憶方法およびその装置 | |
US20090210389A1 (en) | System to support structured search over metadata on a web index | |
JP2010530580A5 (zh) | ||
JP2009524883A (ja) | デジタルコンテンツのネットワークへの提示 | |
CN103874994A (zh) | 用于自动概括电子文档的内容的方法和装置 | |
CN107506383B (zh) | 一种审计数据处理方法和计算机设备 | |
US20130191328A1 (en) | Standardized framework for reporting archived legacy system data | |
KR102309375B1 (ko) | 지식그래프 색인 방법 및 장치 | |
CN104715032A (zh) | 一种报表系统中英文表名字段名映射系统及方法 | |
US20150149371A1 (en) | System And Method For Generating And Formatting Formally Correct Case Documents From Rendered Semantic Content | |
US20110184956A1 (en) | Accessing digitally published content using re-indexing of search results | |
CN105955680A (zh) | 一种支持动态附加扩展信息的单据打印方法 | |
CN105740267A (zh) | 一种处理pdf文件的方法及装置 | |
US8954438B1 (en) | Structured metadata extraction | |
CN110162773A (zh) | 标题推断器 | |
CN108038441A (zh) | 一种基于图像识别的系统与方法 | |
CN110298692A (zh) | 多渠道顾客数据统一管理的方法、系统及存储介质 | |
CN103020189B (zh) | 数据处理装置和数据处理方法 | |
KR20090037704A (ko) | 직관적 이미지 검색을 위한 이미지의 메타 데이터 생성방법 | |
CN106503198A (zh) | 一种基于hadoop元数据的冷数据识别方法及系统 | |
CN103020032B (zh) | 云计算系统中的报表生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |