向目标系统提供预制凭证的方法及系统、服务器与流程

文档序号:21830126发布日期:2020-08-11 21:57阅读:221来源:国知局
向目标系统提供预制凭证的方法及系统、服务器与流程

本发明涉及计算机技术领域,特别涉及向目标系统提供预制凭证的方法及系统、服务器。



背景技术:

在财务共享的过程中,经常需要向目标系统提供凭证数据,例如:目标系统为sap(systemsapplicationsandproductsindataprocessing,企业管理解决方案)系统,需要向sap系统提供凭证数据。

目前,针对每个项目,都需要手动配置映射关系表,编写大量的代码,以实现与目标系统的对接。不同项目的代码无法重复使用,根据不同项目的具体内容需要重新编写大量代码,比较麻烦。



技术实现要素:

本发明实施例提供了向目标系统提供预制凭证的方法及系统、服务器,能够更加方便地向目标系统提供预制凭证。

第一方面,本发明实施例提供了一种向目标系统提供预制凭证的方法,该方法包括:

获取目标凭证模板和目标数据源,其中,所述目标凭证模板是利用配置界面根据所述目标系统的预制凭证生成的凭证模板;

根据所述目标数据源和所述目标凭证模板,生成所述目标系统的预制凭证;

将所述预制凭证发送给所述目标系统。

可选地,

所述根据所述目标数据源和所述目标凭证模板,生成所述目标系统的预制凭证,包括:

根据所述目标数据源和所述目标凭证模板,确定所述目标凭证模板的每个凭证字段的数据;

根据所述目标凭证模板的每个所述凭证字段的数据和所述目标凭证模板,生成所述预制凭证。

可选地,

所述目标凭证模板中包括:每个所述凭证字段的数据来源,以及至少一个所述凭证字段与所述目标数据源的数据源字段的对应关系;

所述根据所述目标数据源和所述目标凭证模板,确定所述目标凭证模板的每个凭证字段的数据,包括:

针对所述目标凭证模板的每个所述凭证字段,执行:

根据所述目标凭证模板中每个所述凭证字段的数据来源,确定当前凭证字段的数据来源;

当所述当前凭证字段的数据来源为常量时,获取所述目标凭证模板中所述当前凭证字段中的数据,将所述目标凭证模板中所述当前凭证字段中的数据作为所述当前凭证字段的数据;

当所述当前凭证字段的数据来源为所述目标数据源时,根据所述对应关系,确定所述当前凭证字段对应的数据源字段,将所述当前字段对应的数据源字段中的数据作为所述当前凭证字段的数据。

可选地,

所述根据所述目标凭证模板的每个字段的数据和所述目标凭证模板,生成所述预制凭证,包括:

根据所述目标凭证模板的每个所述凭证字段的数据,生成数据集;

验证所述数据集中所述目标凭证模板的每个所述凭证字段的数据,是否符合每个所述凭证字段的格式要求;

当每个所述凭证字段均通过验证后,将每个所述凭证字段的数据插入到所述目标凭证模板中,生成所述预制凭证。

可选地,

所述获取目标凭证模板和目标数据源,包括:

接收所述目标数据源的主键和所述目标凭证模板的主键;

根据所述目标数据源的主键,获取所述目标数据源;

根据所述目标凭证模板的主键,获取所述目标凭证模板。

第二方面,本发明实施例提供了一种服务器,该服务器包括:

获取模块,用于获取目标凭证模板和目标数据源,其中,所述目标凭证模板是利用配置界面根据所述目标系统的预制凭证生成的凭证模板;

生成模块,用于根据所述目标数据源和所述目标凭证模板,生成所述目标系统的预制凭证;

发送模块,用于将所述预制凭证发送给所述目标系统。

可选地,

所述生成模块,包括:

确定单元,用于根据所述目标数据源和所述目标凭证模板,确定所述目标凭证模板的每个凭证字段的数据;

生成单元,用于根据所述目标凭证模板的每个所述凭证字段的数据和所述目标凭证模板,生成所述预制凭证。

可选地,

所述目标凭证模板中包括:每个所述凭证字段的数据来源,以及至少一个所述凭证字段与所述目标数据源的数据源字段的对应关系;

所述确定单元,用于针对所述目标凭证模板的每个所述凭证字段,执行:

根据所述目标凭证模板中每个所述凭证字段的数据来源,确定当前凭证字段的数据来源;

当所述当前凭证字段的数据来源为常量时,获取所述目标凭证模板中所述当前凭证字段中的数据,将所述目标凭证模板中所述当前凭证字段中的数据作为所述当前凭证字段的数据;

当所述当前凭证字段的数据来源为所述目标数据源时,根据所述对应关系,确定所述当前凭证字段对应的数据源字段,将所述当前字段对应的数据源字段中的数据作为所述当前凭证字段的数据。

可选地,

所述生成单元,用于执行:

根据所述目标凭证模板的每个所述凭证字段的数据,生成数据集;

验证所述数据集中所述目标凭证模板的每个所述凭证字段的数据,是否符合每个所述凭证字段的格式要求;

当每个所述凭证字段均通过验证后,将每个所述凭证字段的数据插入到所述目标凭证模板中,生成所述预制凭证。

第三方面,本发明实施例提供了一种向目标系统提供预制凭证的系统,该系统包括:

客户端和第二方面中任一所述的服务器;

所述客户端中包括:配置界面;

所述客户端,用于根据外部向所述配置界面输入的配置命令,生成目标凭证模板,向所述服务器发送目标数据源和所述目标凭证模板。

在本发明实施例中,可以通过配置界面配置生成凭证模板,根据目标数据源和目标凭证模板生成目标系统的预制凭证,将该预制凭证发送给目标系统,该过程无需人工编码,利用配置界面即可生成需要的凭证模板,针对不同的项目,利用同一个配置界面即可,大大降低了工作量,能够更加方便地向目标系统提供预制凭证。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例提供的一种向目标系统提供预制凭证的方法的流程图;

图2是本发明一实施例提供的一种服务器的示意图;

图3是本发明一实施例提供的一种向目标系统提供预制凭证的系统的示意图;

图4是本发明一实施例提供的另一种向目标系统提供预制凭证的方法的流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种向目标系统提供预制凭证的方法,该方法包括:

步骤101:获取目标凭证模板和目标数据源,其中,所述目标凭证模板是利用配置界面根据所述目标系统的预制凭证生成的凭证模板;

步骤102:根据所述目标数据源和所述目标凭证模板,生成所述目标系统的预制凭证;

步骤103:将所述预制凭证发送给所述目标系统。

在本发明实施例中,可以通过配置界面配置生成凭证模板,根据目标数据源和目标凭证模板生成目标系统的预制凭证,将该预制凭证发送给目标系统,该过程无需人工编码,利用配置界面即可生成需要的凭证模板,针对不同的项目,利用同一个配置界面即可,大大降低了工作量,能够更加方便地向目标系统提供预制凭证。

在本发明一实施例中,所述根据所述目标数据源和所述目标凭证模板,生成所述目标系统的预制凭证,包括:

根据所述目标数据源和所述目标凭证模板,确定所述目标凭证模板的每个凭证字段的数据;

根据所述目标凭证模板的每个所述凭证字段的数据和所述目标凭证模板,生成所述预制凭证。

在本发明实施例中,目标凭证模板中包含了多个字段,将目标凭证模板中的字段作为凭证字段,生成预制凭证需要确定这些字段的数据。目标凭证模板中的字段的数据来源一般包括常量和目标数据源。凭证字段的数据可以通过以下方式确定:

所述目标凭证模板中包括:每个所述凭证字段的数据来源,以及至少一个所述凭证字段与所述目标数据源的数据源字段的对应关系;

所述根据所述目标数据源和所述目标凭证模板,确定所述目标凭证模板的每个凭证字段的数据,包括:

针对所述目标凭证模板的每个所述凭证字段,执行:

根据所述目标凭证模板中每个所述凭证字段的数据来源,确定当前凭证字段的数据来源;

当所述当前凭证字段的数据来源为常量时,获取所述目标凭证模板中所述当前凭证字段中的数据,将所述目标凭证模板中所述当前凭证字段中的数据作为所述当前凭证字段的数据;

当所述当前凭证字段的数据来源为所述目标数据源时,根据所述对应关系,确定所述当前凭证字段对应的数据源字段,将所述当前字段对应的数据源字段中的数据作为所述当前凭证字段的数据。

在本发明实施例中,当凭证字段的数据来源为常量时,在配置目标凭证模板时,会确定这些常量,也就是说,目标凭证模板中已经包含这些常量。当凭证字段的数据来源为目标数据源时,这些凭证字段与目标数据源的数据源字段相对应,这些凭证字段的数据为对应的数据源字段的数据。

在本发明一实施例中,所述根据所述目标凭证模板的每个字段的数据和所述目标凭证模板,生成所述预制凭证,包括:

根据所述目标凭证模板的每个所述凭证字段的数据,生成数据集;

验证所述数据集中所述目标凭证模板的每个所述凭证字段的数据,是否符合每个所述凭证字段的格式要求;

当每个所述凭证字段均通过验证后,将每个所述凭证字段的数据插入到所述目标凭证模板中,生成所述预制凭证。

在本发明实施例中,可以先将各个凭证字段的数据保存到数据集中,然后对该数据集进行处理。每个凭证字段具有对应的格式要求,例如:数据类型的要求,同类型的数据需要合并的要求等。如果存在没有通过验证的凭证字段,需要对没有通过验证的凭证字段的数据就行调整,使得这些凭证字段的数据能够通过验证,然后,再进行后续处理。

具体地,可以生成数据插入字符串insert语句,利用该语句将各个凭证字段的数据插入到目标凭证模板中。

在本发明一实施例中,所述获取目标凭证模板和目标数据源,包括:

接收所述目标数据源的主键和所述目标凭证模板的主键;

根据所述目标数据源的主键,获取所述目标数据源;

根据所述目标凭证模板的主键,获取所述目标凭证模板。

在本发明实施例中,通过目标数据源的主键作为目标数据源的唯一标识,通过目标凭证模板的主键作为目标凭证模板的唯一标识。

如图2所示,本发明实施例提供了一种服务器,该服务器包括:

获取模块201,用于获取目标凭证模板和目标数据源,其中,所述目标凭证模板是利用配置界面根据所述目标系统的预制凭证生成的凭证模板;

生成模块202,用于根据所述目标数据源和所述目标凭证模板,生成所述目标系统的预制凭证;

发送模块203,用于将所述预制凭证发送给所述目标系统。

在本发明一实施例中,所述生成模块,包括:

确定单元,用于根据所述目标数据源和所述目标凭证模板,确定所述目标凭证模板的每个凭证字段的数据;

生成单元,用于根据所述目标凭证模板的每个所述凭证字段的数据和所述目标凭证模板,生成所述预制凭证。

在本发明一实施例中,所述目标凭证模板中包括:每个所述凭证字段的数据来源,以及至少一个所述凭证字段与所述目标数据源的数据源字段的对应关系;

所述确定单元,用于针对所述目标凭证模板的每个所述凭证字段,执行:

根据所述目标凭证模板中每个所述凭证字段的数据来源,确定当前凭证字段的数据来源;

当所述当前凭证字段的数据来源为常量时,获取所述目标凭证模板中所述当前凭证字段中的数据,将所述目标凭证模板中所述当前凭证字段中的数据作为所述当前凭证字段的数据;

当所述当前凭证字段的数据来源为所述目标数据源时,根据所述对应关系,确定所述当前凭证字段对应的数据源字段,将所述当前字段对应的数据源字段中的数据作为所述当前凭证字段的数据。

在本发明一实施例中,所述生成单元,用于执行:

根据所述目标凭证模板的每个所述凭证字段的数据,生成数据集;

验证所述数据集中所述目标凭证模板的每个所述凭证字段的数据,是否符合每个所述凭证字段的格式要求;

当每个所述凭证字段均通过验证后,将每个所述凭证字段的数据插入到所述目标凭证模板中,生成所述预制凭证。

如图3所示,本发明实施例提供了一种向目标系统提供预制凭证的系统,包括:

客户端301和本发明实施例中任一所述的服务器302;

所述客户端301中包括:配置界面;

所述客户端301,用于根据外部向所述配置界面输入的配置命令,生成目标凭证模板,向所述服务器302发送目标数据源和所述目标凭证模板。

下面通过一个具体的例子详细说明本发明实施例提供的一种向目标系统提供预制凭证的方法,如图4所示,该方法包括以下步骤:

步骤401:客户端根据外部向配置界面输入的配置命令,生成目标凭证模板。

具体地,该配置界面可以根据目标系统的预制凭证来设置。在该配置界面中,外部可以根据目标数据源的字段和预制凭证的字段进行关系配置,将预制凭证的字段与目标数据源的字段对应。并且,配置预制凭证的主表与分录字段的对应关系。可以将最终的对应关系存储到后台关系表中。

具体地,该目标系统可以为sap系统。

步骤402:客户端向服务器发送目标凭证模板的主键和目标数据源的主键。

具体地,在生成目标凭证模板时,选中该目标数据源对应的目标凭证模板后,将目标数据源的唯一主键以及目标凭证模板的唯一主键传入服务器进行解析,操作同步等待服务器的解析结果。

其中,目标数据源可以为报销单等。

步骤403:服务器根据目标数据源的主键和目标凭证模板的主键,获取目标数据源和目标凭证模板。

具体地,服务器首先进行目标数据源与目标凭证模板的模板的校验,判断目标数据源是否符合该目标凭证模板的生成条件,如果不符合,则直接返回,进行报错。如果符合,则通过目标数据源唯一主键将目标数据源加载到内存中,同时根据目标凭证模板的主键将目标凭证模板加载到内存中,然后,在内存中对目标凭证模板进行解析。

步骤404:服务器根据目标数据源和目标凭证模板,确定目标凭证模板的每个凭证字段的数据。

具体地,目标凭证模板中包括:每个凭证字段的数据来源,以及至少一个凭证字段与目标数据源的数据源字段的对应关系;

针对目标凭证模板的每个凭证字段,执行:

根据目标凭证模板中每个凭证字段的数据来源,确定当前凭证字段的数据来源;

在当前凭证字段的数据来源为常量时,获取目标凭证模板中当前凭证字段中的数据,将目标凭证模板中当前凭证字段中的数据作为当前凭证字段的数据;

在当前凭证字段的数据来源为目标数据源时,根据对应关系,确定当前凭证字段对应的数据源字段,将当前字段对应的数据源字段中的数据作为当前凭证字段的数据。

步骤405:服务器根据目标凭证模板的每个凭证字段的数据,生成数据集。

具体地,该数据集可以为c#数据集dataset,服务器将该数据集中的数据传入服务器的数据集解析服务中,由数据集解析服务进行解析。

步骤406:服务器验证数据集中目标凭证模板的每个凭证字段的数据,是否符合每个凭证字段的格式要求,当每个凭证字段均通过验证后,将每个凭证字段的数据插入到目标凭证模板中,生成预制凭证。

具体地,服务器的数据集解析服务获取到数据集后,将数据集加载到内存当中进行数据集与预制凭证中的字段格式的匹配校验,判断数据集中的各个字段的数据是否符合预制凭证的要求。

在通过验证后,通过数据插入字符串insert语句将数据集中的数据将插入中间表中,数据插入成功后,将中间表的数据汇总后插入目标凭证模板,生成预制凭证。

步骤407:服务器将预制凭证发送给目标系统。

具体地,当目标系统为sap系统时,点击sap系统的推送功能,服务器根据选择的目标凭证模板和sap系统接口的配置要求进行不同服务的调用,如rfc或webservice,组织接口需要的参数。组织完接口需要的参数后调用sap系统提供的rfc或webservice接口,将数据推送到sap系统中。

另外,sap系统在接收到预制凭证并处理完成后将处理结果反馈给服务器,服务器在接收到处理结果后,判断推送是否成功,如果推送成功,则调用预先设置的接口,将目标数据源向下一步执行,生成凭证的过程处理完成。

在本发明实施例中,通过凭证模板的方式生成凭证,具有开发工作量小、复用性高、扩展灵活、用户需求满足度高等优点,且后续业务变动维护比较简单,具有很好的推广应用价值。

本发明实施例可以应用于财务共享系统,将财务共享系统的gs凭证与sap系统的凭证进行对接。

在本发明实施例中,依据共享数据及sap系统的凭证数据的特点和要求,灵活自定义凭证模板和生成的数据等,无需再根据不同项目进行其他编码,只需项目上根据实际业务进行配置,程序根据配置的模板编译成sap系统的预制凭证,在数据无误后,根据已集成的公共方式推送至sap系统,无需再进行编码。

在本发明实施例中,可根据sap系统的支持方式使用rfc(远程函数调用remotefunctioncall)、webservice及http请求的技术和sap系统对接,满足凭证生成及推送的需求,所有的对接方式均使用公共接口方式,将生成的预制凭证,根据项目需要推送至sap系统,无需每个项目根据映射关系等重新进行编码。

在本发明实施例中,凭证模板可以通过向用户提供可视化的配置界面进行配置,对目标数据源、目标凭证模板、映射关系等进行配置。凭证是根据凭证模板以及目标数据源生成的最终数据,根据生成的预制凭证以及与sap凭证数据的对应,发送给sap系统,生成sap系统的正式凭证。

可以理解的是,本发明实施例示意的结构并不构成对对账的装置的具体限定。在本发明的另一些实施例中,对账的装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本发明还提供了一种计算机可读介质,存储用于使一计算机执行如本文所述的向目标系统提供预制凭证的方法的指令。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。

在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。

用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。

此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。

此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。

需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。

以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,fpga或asic)来完成相应操作。硬件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。

上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1