财务报表自定义的实现方法和服务器
技术领域
本发明涉及计算机技术领域,具体涉及一种财务报表自定义的实现方法和服务器。
背景技术
财务报表自定义的实现设计一般是通过报表设计工具设计好特定格式的报表模板,然后在模板的基础上设置财务取数规则,根据这些规则,通过计算从数据库中取得财务数据,生成财务报表数据。
CS(Client/Server,客户/服务器)模式下可以利用财务报表设计工具来设计自定义的财务报表,但在BS(Browser/Server,浏览器/服务器模式)模式下,用户端需要安装额外控件或阅读器才能进行,不适用于SAAS(Software as a service,软件即服务)在线系统财务报表,而且实际使用中需要花费多余时间设计模板。
现有技术中存在一种财务报表自定义的实现方案,其主要方案为:
(1)根据报表需求定义报表类型;
(2)根据报表类型定义XML(可扩展标记语言)配置文件;
(3)通过业务层解析XML配置文件得到配置文件信息,同时在系统内存中加载展现层即EXCEL模板文件,以形成普通报表。
(4)根据步骤(3)得到的配置文件信息,从数据层获取原始数据并加工成报表数据;
(5)将步骤(4)加工的报表数据与步骤(3)加载的展现层即EXCEL模板文件结合后,在系统内存中生成报表;
(6)根据步骤(3)得到的配置文件信息对步骤(5)生成的报表进行处置,如打开或下载保存或直接打印出报表。
该方案的缺点是需要额外配置XML配置文件,而且XML文件在解析和生成上都比较复杂而不易维护。
发明内容
本发明实施例所要解决的技术问题是提供一种财务报表自定义的实现方法和服务器,用于实现BS架构下轻量的财务报表自定义方案。
本发明实施例提供一种财务报表自定义的实现方法,包括:
接收用户端上传的excel格式的报表模版文件;
解析所述报表模版文件,获取所述报表模版文件的属性数据;
将报表模版文件的属性数据按照JavaScript对象表示法JSON格式保存为报表属性数据;
读取以JSON格式保存的报表属性数据,并将所述以JSON格式保存的报表属性数据发送至所述用户端,以使所述用户端在web页面显示报表模版。
相应的,本发明实施例还提供一种财务报表服务器,包括:
接收单元,用于接收用户端上传的excel格式的报表模版文件;
解析单元,用于解析所述报表模版文件,获取所述报表模版文件的属性数据;
保存单元,用于将报表模版文件的属性数据按照JavaScript对象表示法JSON格式保存为报表属性数据;
发送单元,用于读取以JSON格式保存的报表属性数据,并将所述以JSON格式保存的报表属性数据发送至所述用户端,以使所述用户端在web页面显示报表模版。
本发明实施例提供财务报表自定义的实现方法和服务器,可以为用户提供自定义的财务报表服务,与现有技术不同,用户只需要导入excel格式的报表模版文件,服务器即可根据该excel格式文件直接生成此excel格式的报表模板,用户端无需下载安装额外的控件或打印系统,用户也无需配置XML配置文件,以轻量的方式解决BS架构下报表格式的自定义需求,也省去设计环节,提升了用户体验;另外,JSON的数据格式比较简单,易于解析和读写,占用存储空间小,在网络传输过程中可以节约传输时间,缩短网络延迟,增加产品易用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的财务报表自定义的实现方法的流程示意图;
图2是本发明实施例二提供的财务报表自定义的实现方法的流程示意图;
图3是本发明实施例三提供的服务器的结构第一示意图;
图4是本发明实施例三提供的服务器的结构第二示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中提供了一种财务报表自定义的实现方法和服务器,以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一:
本发明实施例提供一种财务报表自定义的实现方法,如图1所示,该方法可以包括如下步骤:
101、接收用户端上传的excel格式的报表模版文件;
102、解析上述报表模版文件,获取上述报表模版文件的属性数据;
103、将报表模版文件的属性数据按照JSON(JavaScript对象表示法)格式保存为报表属性数据;
104、读取以JSON格式保存的报表属性数据,并将上述以JSON格式保存的报表属性数据发送至上述用户端,以使上述用户端在web页面显示报表模版。
本实施例中提供的财务报表自定义的实现方法中,可以为用户提供自定义的财务报表服务,与现有技术不同,用户只需要导入excel格式的报表模版文件,服务器即可根据该excel格式文件直接生成此excel格式的报表模板,用户端无需下载安装额外的控件或打印系统,用户也无需配置XML配置文件,以轻量的方式解决BS架构下报表格式的自定义需求,也省去设计环节,提升了用户体验;另外,JSON的数据格式比较简单,易于解析和读写,占用存储空间小,在网络传输过程中可以节约传输时间,缩短网络延迟,增加产品易用性。
实施例二:
本发明实施例提供一种财务报表自定义的实现方法,如图2所示,该方法可以包括如下步骤:
201、接收上述用户端上传的报表格式属性数据;
用户端可以将用户输入的报表格式属性数据上传至服务器,举例来说,报表格式属性数据可以(但不限于)包括:报表起始行数、表头总行数、报表总行数、报表总列数以及各列属性等等;
用户端的web页面可以提供输入窗口供用户输入上述报表格式属性数据;
202、接收用户端上传的excel格式的报表模版文件;
用户可以预先制作好excel格式的报表模版文件,将excel格式的报表模版文件导入之后进行上传;
需要说明的是,步骤201和202的执行没有固定的先后顺序,也可以是同时执行的,即报表格式属性数据和excel格式的报表模版文件可以是一起上传的,或者打包上传的;
203、解析上述报表模版文件,获取上述报表模版文件的属性数据;
204、将上述报表格式属性数据和上述报表模版文件的属性数据按照JSON格式保存为报表属性数据;
JSON格式是一种轻量级的数据交换格式,是一种理想的数据交换语言,易于人阅读和编写,同时也易于机器解析和生成;
205、读取以JSON格式保存的报表属性数据,并将上述以JSON格式保存的报表属性数据发送至用户端,以使用户端在web页面显示报表模版;
用户端可在接收到JSON格式的报表属性数据之后,在web页面上动态渲染表格,以显示报表模板;
206、接收上述用户端上传的取数规则和财务报表计算公式;
用户端可以将用户输入的取数规则和财务报表计算公式上传至服务器;
207、根据上述取数规则获取需要的财务数据,并根据上述财务报表计算公式计算得到财务报表数据;
服务器可以根据取数规则在财务数据库中查找到所需要的数据,利用财务报表计算公式计算得到财务报表数据;
208、将上述财务报表数据发送至用户端,以使上述用户端结合上述报表模版在web页面显示财务报表;
用户端可将接收的财务报表数据填充到报表模版中,以显示用户需要的财务报表。
本实施例中提供的财务报表自定义的实现方法中,可以为用户提供自定义的财务报表服务,与现有技术不同,用户只需要导入excel格式的报表模版文件,服务器即可根据该excel格式文件直接生成此excel格式的报表模板,用户端无需下载安装额外的控件或打印系统,用户也无需配置XML配置文件,以轻量的方式解决BS架构下报表格式的自定义需求,也省去设计环节,提升了用户体验;另外,JSON的数据格式比较简单,易于解析和读写,占用存储空间小,在网络传输过程中可以节约传输时间,缩短网络延迟,增加产品易用性。
实施例三:
本发明实施例还提供一种财务报表服务器,如图3所示,该服务器可以包括:
接收单元100,用于接收用户端上传的excel格式的报表模版文件;
解析单元200,用于解析上述报表模版文件,获取上述报表模版文件的属性数据;
保存单元200,用于将报表模版文件的属性数据按照JSON格式保存为报表属性数据;
发送单元400,用于读取以JSON格式保存的报表属性数据,并将上述以JSON格式保存的报表属性数据发送至用户端,以使用户端在web页面显示报表模版。
本实施例中提供的服务器可以为用户提供自定义的财务报表服务,可以为用户提供自定义的财务报表服务,与现有技术不同,用户只需要导入excel格式的报表模版文件,服务器即可根据该excel格式文件直接生成此excel格式的报表模板,用户端无需下载安装额外的控件或打印系统,用户也无需配置XML配置文件,以轻量的方式解决BS架构下报表格式的自定义需求,也省去设计环节,提升了用户体验;另外,JSON的数据格式比较简单,易于解析和读写,占用存储空间小,在网络传输过程中可以节约传输时间,缩短网络延迟,增加产品易用性。
优选地,接收单元100还用于接收上述用户端上传的取数规则和财务报表计算公式;
相应的,如图4所示,该服务器还可以包括:
计算单元500,用于根据上述取数规则获取需要的财务数据,并根据上述财务报表计算公式计算得到财务报表数据;
相应的,发送单元400还可以用于将上述财务报表数据发送至用户端,以使用户端结合上述报表模版在web页面显示财务报表。
优选地,接收单元100还可以用于接收上述用户端上传的报表格式属性数据;
保存单元300用于将上述报表格式属性数据和上述报表模版文件的属性数据按照JSON格式保存为报表属性数据。
举例来说,上述报表格式属性数据包括:报表起始行数、表头总行数、报表总行数、报表总列数以及各列属性,当然本领域技术人员还可以根据实际情况设置报表格式属性数据的具体内容,在此不作具体的限制。
以上各实施例均属于同一发明构思,各实施例的描述各有侧重,在个别实施例中描述未详尽之处,可参考其他实施例中的描述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上对本发明实施例所提供的财务报表自定义的实现方法和服务器进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。