一种基于动态发票模板的发票开具系统.pdf

上传人:g**** 文档编号:1749163 上传时间:2018-07-09 格式:PDF 页数:9 大小:476.86KB
返回 下载 相关 举报
摘要
申请专利号:

CN201310642167.3

申请日:

2013.12.03

公开号:

CN104679793A

公开日:

2015.06.03

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 17/30申请日:20131203|||公开

IPC分类号:

G06F17/30; G06Q30/04(2012.01)I; G07G1/00

主分类号:

G06F17/30

申请人:

航天信息股份有限公司

发明人:

王明; 陈懿; 高志刚; 孟繁杰; 袁俊玲; 王乾; 屈国锋

地址:

100097北京市海淀区杏石口路甲18号

优先权:

专利代理机构:

北京科龙寰宇知识产权代理有限责任公司11139

代理人:

孙皓晨

PDF下载: PDF下载
内容摘要

本发明公开一种基于动态发票模板的发票开具系统,包括:数据接收模块,用于接收源数据并验证所述源数据的合法性;数据解析模块,与所述数据接收模块相连,用于从所述数据接收模块中提取经过验证的源数据,将所述源数据解析为系统可识别数据并保存;动态创建模块,与所述数据解析模块相连,根据所述系统可识别数据的内容动态创建发票开具模板、用户界面元素和逻辑功能元素。本发明以发票开具模板的动态生成为核心,用户所有涉及发票开具的流程都使用数据结构动态生成方式来进行,可极大地减少开发人员在处理不同发票种类开具时的重复劳动,减少代码编写量,从而提高软件开发效率、减少出错风险。

权利要求书

权利要求书
1.  一种基于动态发票模板的发票开具系统,其特征在于,包括:
数据接收模块,用于接收源数据并验证所述源数据的合法性;
数据解析模块,与所述数据接收模块相连,用于从所述数据接收模块中提取经 过验证的源数据,将所述源数据解析为系统可识别数据并保存;
动态创建模块,与所述数据解析模块相连,根据所述系统可识别数据的内容动 态创建发票开具模板、用户界面元素和逻辑功能元素。

2.  根据权利要求1所述的基于动态发票模板的发票开具系统,其特征在于, 还包括功能扩展模块,与所述动态创建模块相连,用于根据需要进行系统功能的扩 展。

3.  根据权利要求1所述的基于动态发票模板的发票开具系统,其特征在于, 所述数据接收模块获取所述源数据的方式包括数据提供方直接推送的方式和数据 接收模块提出请求、数据提供方进行应答的方式。

4.  根据权利要求1所述的基于动态发票模板的发票开具系统,其特征在于, 所述数据解析模块解析出的可识别数据包括发票模板的状态信息、元素属性信息和 需求关系信息;其中所述发票模板的状态信息是指发票票样元素的大小和显示样 式;所述元素属性信息是指模板元素在不同状态下对应转换的不同状态及格式;所 述需求关系信息是指当前模板的各个元素与需求功能点的逻辑关系,以及在功能实 现转换时对应元素的改变的关系。

5.  根据权利要求1所述的基于动态发票模板的发票开具系统,其特征在于, 所述数据解析模块包括:
发票模板子模块,通过调用数据解析模块中存储的可识别数据动态创建发票模 板;
用户界面子模块,通过调用数据解析模块中存储的可识别数据动态创建用户界 面;
逻辑功能子模块,通过调用数据解析模块中存储的可识别数据动态创建系统的 逻辑功能。

6.  根据权利要求5所述的基于动态发票模板的发票开具系统,其特征在于, 所述发票模板创建子模块的数据结构为层级结构,其中最外层用于存储包括模板名 称、模板大小以及子元素数量的发票模板基本属性。

7.  根据权利要求5所述的基于动态发票模板的发票开具系统,其特征在于, 所述用户界面创建子模块的数据结构为层级结构,通过map容器存储实现用户界面 元素的一一对应关系。

8.  根据权利要求5所述的基于动态发票模板的发票开具系统,其特征在于, 所述逻辑功能创建子模块的数据结构包括:定义具体功能操作的操作标识、确定每 个操作标识对应的传递参数以及确定每个传递参数的结构体关系。

说明书

说明书一种基于动态发票模板的发票开具系统
技术领域
本发明涉及税控发票技术领域,特别设计一种可动态生成发票模板的发票开具 系统。
背景技术
在企业运行过程中,发票的重要性毋庸置疑。在各行各业发票使用的需求下, 传统手工开具发票的局限性日益明显,目前国内许多省份正在大力推广网络发票系 统。而由于各个地区的不同需求,导致网络发票开具系统需求多种多样,变化层出 不穷,给系统开发人员带来了很大的麻烦。
为此,如何适应目前网络发票需求多样、种类繁多的特点,提供一套可满足不 同地区不同需求的发票开具方案,成为本领域技术人员亟待解决的问题。
发明内容
本发明的目的在于解决目前网络发票开具过程中存在的上述弊端,提供一种具 高效准确、便于维护、适应性强,且可在网络发票业界大范围拓展应用的发票开具 系统。
为达上述目的,本发明提出一种基于动态发票模板的发票开具系统,包括:
数据接收模块,用于接收源数据并验证所述源数据的合法性;
数据解析模块,与所述数据接收模块相连,用于从所述数据接收模块中提取经 过验证的源数据,将所述源数据解析为系统可识别数据并保存;
动态创建模块,与所述数据解析模块相连,根据所述可识别数据的内容动态创 建发票开具模板、用户界面元素和逻辑功能元素。
根据本发明提出的基于动态发票模板的发票开具系统,还包括功能扩展模块, 与所述动态创建模块相连,用于根据需要进行系统功能的扩展。
根据本发明提出的基于动态发票模板的发票开具系统,所述数据接收模块获取 所述源数据的方式包括数据提供方直接推送的方式和数据接收模块提出请求、数据 提供方进行应答的方式。
根据本发明提出的基于动态发票模板的发票开具系统,所述数据解析模块解析 出的可识别数据包括发票模板的状态信息、元素属性信息和需求关系信息;其中所 述发票模板的状态信息是指发票票样元素的大小和显示样式;所述元素属性信息是 指模板元素在不同状态下对应转换的不同状态及格式;所述需求关系信息是指当前 模板的各个元素与需求功能点的逻辑关系,以及在功能实现转换时对应元素的改变 的关系。
根据本发明提出的基于动态发票模板的发票开具系统,所述数据解析模块包 括:
发票模板子模块,通过调用数据解析模块中存储的可识别数据动态创建发票模 板;
用户界面子模块,通过调用数据解析模块中存储的可识别数据动态创建用户界 面;
逻辑功能子模块,通过调用数据解析模块中存储的可识别数据动态创建系统的 逻辑功能。
根据本发明提出的基于动态发票模板的发票开具系统,所述发票模板创建子模 块的数据结构为层级结构,其中最外层用于存储包括模板名称、模板大小以及子元 素数量的发票模板基本属性。
根据本发明提出的基于动态发票模板的发票开具系统,所述用户界面创建子模 块的数据结构为层级结构,通过map容器存储实现用户界面元素的一一对应关系。
根据本发明提出的基于动态发票模板的发票开具系统,所述逻辑功能创建子模 块的数据结构包括:定义具体功能操作的操作标识、确定每个操作标识对应的传递 参数以及确定每个传递参数的结构体关系。
与现有技术相比,本发明具有如下有益效果:
(1)本发明提出了一种可扩展性极强的网络发票系统设计模式,将数据控制 逻辑原理应用于整个系统创建过程,极大地节省了人力投入;
(2)本发明对源数据变更的支持简捷、快速,几乎可同步完成;在源数据产 生变更时无需二次开发,自适应性极强;
(3)本发明对源数据信息的获取非常开放,只需源数据满足既定格式即可; 这种属性有利于快速灵活地增加获取新的数据信息,从而更广泛地拓展业务。
附图说明
图1为本发明一个实施例的基于动态发票模板的发票开具系统的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、 完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实 施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下 所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明的主要组成部分包括数据接收模块、数据解析模块和动态 创建模块。其中数据接收模块用于接收源数据并验证所述源数据的合法性;数据解 析模块与数据接收模块相连,用于从所述数据接收模块中提取经过验证的源数据, 将所述源数据解析为可识别数据并保存;动态创建模块与所述数据解析模块相连, 根据所述可识别数据的内容动态创建发票开具模板、用户界面元素和逻辑功能元 素。
下面来详细说明以上各模块的具体功能及组成。
数据接收模块负责接收源数据并验证其合法性,其中该源数据由提供方与开发 方约定接口及数据格式传入。本发明采用网络传输XML数据流格式接受源数据, 接收过程中使用加密算法保证数据传输的安全性。数据合法性验证是指数据流本身 的完整性和内容的合法性验证。数据接收模块获取源数据的方式可根据具体需求来 确定,如由数据提供方推送或由数据接收模块需要时以请求应答方式传输。一般来 说,对于大部分功能均采用发票开具系统与局端请求应答模式来实现,仅对部分必 须的特殊功能使用局端推送数据模式传递数据给发票开具系统。本发明对于源数据 的格式并无具体限制,可具有如XML、自定义格式等多种数据格式,具体根据不 同需求灵活选择。
数据解析模块负责完成元数据的提取,控制解析流程的开始和结束以及解析后 数据的保存。运行时,数据解析模块需首先完成源数据的载入并解密,然后对源数 据解析将其转化为可识别信息,并存储到内存特定数据结构中,作为整个解析程序 运行的数据基础。该可识别信息主要包括:发票模板所有元素的状态信息,属性信 息以及需求对应关系。发票模板的状态信息包括发票票样元素的大小和显示样式; 各元素属性信息为模板元素在不同状态下对应转换的不同状态及格式等;系统元素 需求对应关系则主要包括当前模板数据各个元素与需求功能点的逻辑关系,以及在 功能实现转换时对应元素的改变等关系。解析完成后,上述可识别信息按不同数据 内容分别保存在系统各功能设计的对应数据结构中,以待动态创建系统元素时调 用。
在此需要说明的是,数据解析模块使用到的数据结构应在软件系统设计之初进 行合理规划。要求对照需求方提出的各项功能制定好完善的各个功能模块的合理化 数据结构,以保证解析后存储的数据能及时方便的调用。
动态创建模块为本系统设计的核心部分,其采用自动根据数据解析动态创建系 统元素的方式,通过调用不同功能数据结构中的数据,动态的实现开具系统的各种 逻辑功能。其中动态创建模块内部又分为发票模板子模块、用户界面子模块和逻辑 功能子模块。
(1)发票模板子模块:通过调用数据解析模块中存储的发票开具模板属性数 据结构,实现模板文件的动态生成。发票模板的数据结构为层级结构,外层存储接 收到的模板文件基本属性,如名称、大小、包含子元素数量等信息。各基本属性元 素如有多项信息的采用自定数据结构存储,层级可包含多层,数据结构根据需求具 体确定。举例如下表所示:
表1发票模板基础属性数据结构

表2模板尺寸结构体
modelsizi Item width Grp1 hight Grp2 …… ……
根据表1、表2所示的数据存储结构,软件设计人员可编写程序,提取各项元 素属性,动态地生成发票模板文件并保存在本地供用户使用。由此,开发人员仅用 一套代码,就可以创建出具有各种不同属性不同功能的发票模板。
(2)用户界面子模块:类似于发票模板子模块中的实现逻辑,发票开具系统 的用户界面也可动态生成。用户界面元素的数据结构也同样可以使用多层级结构或 者其他数据结构。由于用户界面的对应关系一般为一一对应,建议使用map容器存 储实现。map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字, 每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能 力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快 速通道。map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具 有对数据自动排序的功能,所以在map内部所有的数据都是有序的,方便数据的快 速查找。具体举例如下;
表3开具系统UI标识与显示名称对应关系存储结构
UIID(ui标识) UINAME(显示名称) YHMC 用户名称 SL 数量 JE 金额 DZ 地址 …… ……
表4系统开具UI标识与类型对照关系存储结构
UIID(ui标识) UITYPE(ui元素类型) YHMC COMBOBOX SL EDIT JE STATIC DZ EDIT …… ……
根据表3和表4的对应关系,开发人员可以快速准确地动态创建数据包含的指 定元素并展示。通过数据结构,我们完全可以由一套本地资源实现多种多样的用户 界面展示,样式完全由数据中的内容所指定。
(3)逻辑功能子模块:该部分为动态创建模块的重要组成部分,模块涉及功 能按实现类型可分为服务器端指定功能和应用端扩展功能两种。前者具体工作过程 为,发票开具系统调用已解析出的功能存储数据结构确定将要执行的具体操作流 程,在数据结构中指定此功能操作的具体要求以及传递参数、返回类型等。通过这 种方式实现各个数据之间的组合及各子模块之间的联系。后者需要根据用户功能扩 展具体要求,在应用端由开发者调用、组织相应的数据,创建对象或方法来实现既 定功能逻辑。数据结构中的具体要求需要提前设计好固定标识,如将开具正数发票 操作指定为“ZPKJ”宏来定义此项操作标识。当调用功能逻辑取得的标识为ZPKJ, 系统就知道将要执行正数开具的操作,调用起要开具的对应功能UI和发票模板, 执行相应的操作。由于功能项逻辑复杂涉及方面较多,这就要求功能模块中的具体 数据结构对应关系设计要及其严格。简单举例如下:
表5开具系统操作标识
OPERATE TYPE 正数发票开具 ZPKJ 发票查询 FPCX 发票下载 FPXZ …… ……
表6开具系统操作标识对应参数
TYPE PARAME ZPKJ Struct pram FPCX Struct pramcx …… ……
表7开具操作pram结构体参数

当用户调用发票开具操作时,通过表5获得操作类型,通过此操作类型根据表 6获得调用的参数,通过该参数由表7动态的调用各个制定元素,完成相应的操作。
另外,根据需求方的某些特定要求,本发明的发票开具系统还可包括与动态创 建模块相连的多个功能扩展模块。该模块为非系统必须模块,其主要是为了满足需 求方的一些辅助逻辑功能。具体实现扩展功能时可根据上述各模块内容以动态数据 创建为基础来实现扩展功能。
综上所述,本发明的重点在于在各个模块之间都以源数据为基础,从而可摆脱 本地已有资源限制,即发票开具系统在接收解析源数据之前本地不进行功能设定及 用户界面生成,始终由编写者根据数据动态实现。本发明的动态创建模块使系统解 析可以不局限于某一种票据的票样,而是根据数据内容在一套框架下动态创建出具 有各种特点的票样模板,从而无论需求方的源数据具有何种多样的需求,本发明均 可适应其变化而产生相应对策。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施 例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前 述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而 这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神 和范围。

一种基于动态发票模板的发票开具系统.pdf_第1页
第1页 / 共9页
一种基于动态发票模板的发票开具系统.pdf_第2页
第2页 / 共9页
一种基于动态发票模板的发票开具系统.pdf_第3页
第3页 / 共9页
点击查看更多>>
资源描述

《一种基于动态发票模板的发票开具系统.pdf》由会员分享,可在线阅读,更多相关《一种基于动态发票模板的发票开具系统.pdf(9页珍藏版)》请在专利查询网上搜索。

本发明公开一种基于动态发票模板的发票开具系统,包括:数据接收模块,用于接收源数据并验证所述源数据的合法性;数据解析模块,与所述数据接收模块相连,用于从所述数据接收模块中提取经过验证的源数据,将所述源数据解析为系统可识别数据并保存;动态创建模块,与所述数据解析模块相连,根据所述系统可识别数据的内容动态创建发票开具模板、用户界面元素和逻辑功能元素。本发明以发票开具模板的动态生成为核心,用户所有涉及发票。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1