单据关联方法及系统技术方案

技术编号:7363609 阅读:316 留言:0更新日期:2012-05-26 22:07
一种单据关联方法,包括以下步骤:建立当前单据,并获取所述当前单据的类型及属性;根据所述当前单据的类型及属性,建立当前单据的关联关系表;获取当前单据与上游单据的关联关系,并添加至所述当前单据的关联关系表中。上述单据关联方法及系统中,通过生成关联关系表存储单据类型及属性等信息,使得单据中不再需要存储单据类型及属性等信息,从而有效地减少了单据中的冗余数据,加快了获取单据的速度,扩展性好,可根据不同用户的业务需求进行修改。

【技术实现步骤摘要】
单据关联方法及系统
本专利技术涉及数据处理技术,特别是涉及一种单据关联方法及系统。
技术介绍
在ERP (Enterprise Resource Planning,企业资源规划)系统中,由于业务处理的需要常常定义了一系列的单据,并建立了单据之间的关联关系。在传统的ERP系统中,单据之间的关联关系指的是从一种单据到另一种单据之间的传递关系,一般是使用单级关联关系来存储单据之间的关联关系,例如,若单据A为源单据,单据B为目标单据,即单据A —单据B,则单据B中记录了单据A中的唯一属性。对于多级的单据关联关系而言,例如,多级的单据关联关系可以是单据A —单据B —单据C —单据D,由于单据A、单据B和单据C均为单据D的上级单据,因此,单据D中就必须记录单据A、单据B以及单据C中的属性信息,以便于实现单据之间的数据生成、数据反写等。然而,在这传统的单据关联方式中,每一单据都必须存储其上级单据及其本身的属性信息,由此便造成了额外的数据存储开销、获取单据的过程缓慢的缺陷。
技术实现思路
基于此,有必要提供一种可减少单据中冗余数据的单据关联方法。此外,还有必要提供一种可减少单据中冗余数据的单据关联系统。一种单据关联方法,包括以下步骤建立当前单据,并获取所述当前单据的类型及属性;根据所述当前单据的类型及属性,建立当前单据的关联关系表;获取当前单据与上游单据的关联关系,并添加至所述当前单据的关联关系表中。优选地,所述建立当前单据的关联关系表的步骤包括记录所述当前单据类型及属性至关联关系表;将所述关联关系表存储于数据库中。优选地,所述获取当前单据与上游单据的关联关系,并添加至所述当前单据的关联关系表中的步骤包括逐一访问数据库中记录了单据类型及属性的单据和/或关联关系表;根据所述单据和/或关联关系表中的类型和属性,判断所述数据库中是否存在所述当前单据的上游单据,是,则获取所述上游单据中的类型及属性,并添加至当前单据的关联关系表中,反之,则结束。优选地,所述逐一访问数据库中的单据和/或关联关系表的步骤在达到预设的截止条件后停止访问。优选地,所述属性记录了单据内码及分录内码。一种单据关联系统,至少包括获取模块,用于建立当前单据,并获取所述当前单据的类型及属性;关系表生成模块,用于根据所述当前单据的类型及属性,建立当前单据的关联关系表;数据库,用于存储所述当前单据的关联关系表;关联模块,用于获取当前单据与上游单据的关联关系,并添加至所述当前单据的关联关系表中。优选地,所述关系表生成模块记录所述当前单据类型及属性,并存储于所述数据库中。优选地,所述关联模块包括访问单元,用于逐一访问数据库中记录了单据类型及属性的单据和/或关联关系表;添加单元,用于根据所述单据和/或关联关系表中的类型和属性,判断所述数据库中是否存在所述当前单据的上游单据,是,则获取所述上游单据中的类型及属性,并添加至当前单据的关联关系表中,反之,则停止。优选地,所述访问单元在达到预设的截止条件后停止访问。优选地,所述属性记录了单据内码及分录内码。上述单据关联方法及系统中,通过生成关联关系表存储单据类型及属性等信息, 使得单据中不再需要存储单据类型及属性等信息,从而有效地减少了单据中的冗余数据, 加快了获取单据的速度,扩展性好,可根据不同用户的业务需求进行修改。附图说明图1为一实施例中的单据关联方法的流程图;图2为另一实施例中的单据关联方法的流程图;图3为一实施例中单据关联系统的模块图;图4为一实施例中关联模块的示意图。具体实施方式如图1所示,一实施例的单据关联方法,包括以下步骤在步骤SlO中,建立当前单据,并获取当前单据的类型及属性。本实施例中,属性记录了单据内码及分录内码等可唯一确定单据的信息。新建当前单据,该当前单据仅记录了与用户的业务相关的数据,不再记录当前单据的类型及属性。根据不同的业务需求,单据的类型可以有很多种。在其他实施例中,获取当前单据的类型及属性的过程可以是接收用户输入的当前单据的类型及属性。在步骤S20中,根据当前单据的类型及属性,建立当前单据的关联关系表。本实施例中,将当前单据的类型及属性添加至当前单据的关联关系表中,该关联关系表可以通过永久的数据结构进行存储,也可以根据需要通过栈,即运行时的临时存储方式。在步骤S30中,获取当前单据与上游单据的关联关系,并添加至当前单据的关联关系表中。本实施例中,由于关联关系表是为了记录得到当前单据的连续的一个业务流程, 例如,关联关系表中可以记录上游单据类型、当前单据类型、上游单据内码、上游单据分录内码、当前单据内码以及当前单据分录内码,从而在生成当前单据中的数据时,可通过调用该关联关系表来获知上游单据,并通过上游单据来产生当前单据中的数据。如图2所示,在更具体的实施例中,该单据关联方法包括以下步骤在步骤S210中,建立当前单据,并获取当前单据的类型及属性。本实施例中,如前所述,根据所需要的单据类型,生成当前单据,此时,该当前单据仅一空白单据,并需要根据关联关系表获取上游单据,通过上游单据生成当前单据中的数据。当前单据的类型及属性可通过接收用户输入的方式获取,在优选的实施例中,也可以根据业务需求,预先设置单据的类型标识及属性标识,在生成当前单据后,根据该当前单据的内容,分配预设的类型标识及属性标识。在步骤S220中,记录当前单据类型及属性至关联关系表。本实施例中,将获取到的当前单据类型及属性记录到关联关系表中,从而将单据的类型及属性等信息从单据中分离,不再占用单据的存储空间,从而有效地减少了单据中的冗余数据。在步骤S230中,将关联关系表存储于数据库中。本实施例中,将生成的关联关系表置于数据库中,以便于在生成单据数据时调用关联关系表。在步骤S240中,逐一访问数据库中记录了单据类型及属性的单据和/或关联关系表。本实施例中,逐一访问数据库中的单据和/或关联关系表的步骤在达到预设的截止条件后停止访问。在优选的实施例中,通过深度优先搜索的方式逐一访问数据库中的单据和 /或关联关系表,以查找当前单据的上游单据。在逐一访问的过程中,可在访问了数据库中所有的单据和/或关联关系表后停止访问。在其他的实施例中,可预先设置截止条件,在达到截止条件后停止访问,例如,截止条件可以是在访问至一个上游单据和/或关联关系表停止访问。数据库中的单据可能会存在两种形式,即原有单据和新增单据,原有单据指的是存储了单据类型及属性,早期存储于数据库中的单据。新增单据指的是没有存储单据类型及属性等冗余数据的单据。为节省资源,并不需要更换数据库,将新增单据存储于原有的数据库中,因此在访问的过程中,需要访问原有单据和关联关系表。为提高访问速度,数据库中的单据仅存储了新增单据及其关联关系表,因此在访问的过程中,只需要访问关联关系表即可,有效地简化了访问过程。在步骤S250中,根据单据或关联关系表中的类型和属性,判断数据库中是否存在当前单据的上游单据,是,则进入步骤S260,反之,则结束。本实施例中,从访问的单据和/ 或关联关系表中提取单据的类型及属性,以根据类型及属性来判断相对应的单据是否为当前单据所需要的上游单据。在步骤S260中,获取上游单据中的类型及属性,并添加至当前单据的关联关系表中。本实施例中,将上游单据的类型及属性添加至当前单据的关联本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:李学军
申请(专利权)人:金蝶软件中国有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术