一种ERP系统中并发数据的处理方法及装置转让专利

申请号 : CN201010568572.1

文献号 : CN102486844A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈勇

申请人 : 金蝶软件(中国)有限公司

摘要 :

本发明实施例公开了一种ERP系统中并发数据的处理方法及装置,用于对并发数据进行处理。本发明实施例的方法包括:接收数据更新请求,数据更新请求包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据;根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中,历史累计表包含预定时间内单据数据的累计结果;当达到预定的累计时间时,将单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表,本发明实施例还包括装置,能有效的提高数据的准确性及系统的可靠性。

权利要求 :

1.一种ERP系统中并发数据的处理方法,其特征在于,包括:接收数据更新请求,所述数据更新请求包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据;

根据所述数据更新请求将所述待更新数据保存到对应的未累计到历史累计表的单据数据中,所述历史累计表包含预定时间内单据数据的累计结果;

当达到预定的累计时间时,将所述单据数据与对应的历史累计表中的数据进行合计,并更新所述历史累计表。

2.根据权利要求1所述的方法,其特征在于,所述根据所述数据更新请求将所述待更新数据保存到对应的未累计到历史累计表的单据数据之前还包括:根据所述数据更新请求中的产品的名称获得历史累计表及未累计到所述历史累计表中的单据数据;

将所述历史累计表中的数据、所述单据数据、所述待更新的数据进行合计。

3.根据权利要求2所述的方法,其特征在于,所述将将所述历史累计表中的数据、所述单据数据、所述待更新的数据进行合计之后还包括:若所述合计结果为负数,则发送提示消息给用户,所述提示消息包含所述合计结果及对应的产品的名称。

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当接收到用户的库存数据查询请求时,则将所述未累计到历史累计表的单据数据与对应的历史累计表中的数据进行合计,显示所述合计的结果,所述库存数据查询请求包含请求查询的产品的名称。

5.根据权利要求1至4中任一项所述的方法,其特征在于,所述历史累计表包括:累计时间、产品的名称、数量。

6.一种ERP系统中并发数据的处理装置,其特征在于,包括:接收单元,用于接收数据更新请求,所述数据更新请求包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据;

保存单元,用于根据所述数据更新请求将所述待更新数据保存到对应的未累计到历史累计表的单据数据中,所述历史累计表包含预定时间内单据数据的累计结果;

第一合计单元,用于当达到预定的累计时间时,将所述单据数据与对应的历史累计表中的数据进行合计,并更新所述历史累计表。

7.根据权利要求6所述的装置,其特征在于,所述装置还包括:获取单元,用于根据所述数据更新请求中的产品的名称获得历史累计表及未累计到所述历史累计表中的单据数据;

第二合计单元,用于将所述历史累计表中的数据、所述单据数据、所述待更新的数据进行合计。

8.根据权利要求7所述的装置,其特征在于,所述装置还包括:提示单元,用于当所述合计结果为负数时,发送提示消息给用户,所述提示消息包含所述合计结果及对应的产品的名称。

9.根据权利要求6所述的装置,其特征在于,所述装置还包括:显示单元,用于当接收到用户的库存数据查询请求时,则将所述未累计到历史累计表的单据数据与对应的历史累计表中的数据进行合计,显示所述合计的结果,所述库存数据查询请求包含请求查询的产品的名称。

说明书 :

一种ERP系统中并发数据的处理方法及装置

技术领域

[0001] 本发明涉及数据处理领域,尤其涉及一种ERP系统中并发数据的处理方法及装置。

背景技术

[0002] 企业资源管理计划(ERP,Enterprise Resources Planning)是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。
[0003] 随着ERP理念的深入及信息技术的发展,ERP系统也逐渐成熟,运用ERP系统管理企业已经成为企业在信息时代生存及发展的基石。在现有的ERP系统中,有一种实体表,其中数据是一种静态形式存在,只有在系统接收到数据更新请求时才会对实体表中对应类型的数据进行加减操作,以形成实时的数据变化,以供操作员及系统对当前数据进行判断及使用。例如库存余额表和科目余额表就是实体表,库存余额表是根据ERP系统中的出入库单对物料商品的数据进行增减,使得系统可以实时更新查看当前库存货物的数据。科目余额表是在进行过账操作时,更新系统中的记录的科目的余额数据。
[0004] 在对实体表中的数据进行更新时,存在数据并发的情况,即在同一时刻,多个用户同时访问并修改同一货物实体表中的数据以达到更新库存数据的目的,使得用户能够了解库存数据的变化情况。在现有技术中,处理并发数据的过程大致如下所述:
[0005] 1、系统接收到数据更新请求;
[0006] 2、查询需要更新数据的类别是已经在实体表中,若是则执行步骤3,若否则执行步骤4;
[0007] 3、利用锁机制进行行锁;
[0008] 4、对当前数据进行加减操作,判断加减之后的数据是否为负数,若为负数,则提示用户;
[0009] 5、行释放,执行步骤3锁定下一个数据;
[0010] 6、根据数据更新请求插入数据。
[0011] 系统通过行锁定实现对请求更新数据的逐个处理,实时的对实体表中的余额数据进行更新,并判断更新后的数据是否为负数,若为负数,则提醒用户数据库存不足,且用户通过查询实体表,可获知商品的库存量。
[0012] 但是,利用上述方法处理并发数据,更新数据会导致以下问题:在多并发情况下会存在同时插入相同的数据记录到实体表中,造成数据更新不准确;且在多并发及集群的情况下,容易产生脏数据,导致库存数目不准确;现有技术中利用数据库行锁的方式进行控制并发,在数据库处理事务较长时间的情况下,会引起大量的数据堵塞,从而引起系统停顿,系统可靠性降低。

发明内容

[0013] 本发明实施例提供了一种ERP系统中并发数据的处理方法及装置,用于处理系统接收到的并发数据,提高系统数据的准确性及可靠性。
[0014] 本发明实施例的方法包括:接收数据更新请求,数据更新请求包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据;根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中,历史累计表包含预定时间内单据数据的累计结果;当达到预定的累计时间时,将单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0015] 本发明实施例的装置包括:接收单元,用于接收数据更新请求,数据更新请求包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据;保存单元,用于根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中,历史累计表包含预定时间内单据数据的累计结果;第一合计单元,用于当达到预定的累计时间时,将单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0016] 从以上技术方案可以看出,本发明实施例具有以下优点:
[0017] 当到达预定的时间时,通过使用历史累计表,在预定时间将未累计到历史累计表的单据数据累计到对应的历史累计表中,利用在固定时间对单据数据进行累计更新的方法,可以有效的避免实时更新数据时的行锁操作及并发数据带来的数据更新不准确,脏数据等问题,提高了数据的准确性及系统的可靠性。

附图说明

[0018] 图1为本发明实施例一种ERP系统中并发数据的处理方法的一个示意图;
[0019] 图2为本发明实施例一种ERP系统中并发数据的处理方法的另一示意图;
[0020] 图3为本发明实施例一种ERP系统中并发数据的处理装置的一个示意图;
[0021] 图4为本发明实施例一种ERP系统中并发数据的处理装置的另一示意图。

具体实施方式

[0022] 本发明实施例提供了一种ERP系统中并发数据的处理方法及装置,用于并行数据的处理,能有效的避免实时数据更新产生的数据不准确,脏数据、系统不稳定等问题,提高了数据的准确性及系统的可靠性。
[0023] 请参阅图1,为本发明实施例中一种ERP系统中并发数据的处理方法的实施例,包括:
[0024] 101、接收数据更新请求;
[0025] 在本发明实施例中,ERP系统是一种信息一体化的管理软件,并发数据的处理方法是在ERP系统的操作环境下进行的。
[0026] 当多个用户同时进行数据更新时,系统将接收到用户发送的数据更新请求,数据更新请求中包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据。
[0027] 102、根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中;
[0028] 接收到数据更新请求之后,系统将根据数据更新请求的内容将带更新的数据保存到对应的单据数据中。单据数据中包含着对应产品的出入库数据,且单据中保存的数据并未累计到历史累计表中,历史累计表保存了预定时间内数据的累计结果,并定时进行更新。
[0029] 103、在预定的累计时间将单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0030] 系统接收到数据更新请求之后,只是将数据以单据数据的形式保存在系统中,当达到预定的累计时间时,再将保存的单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0031] 在本发明实施例中,通过使用历史累计表,在预定的时间将未累计到历史累计表的单据数据累计到对应的历史累计表中,利用在固定时间对历史累计表进行更新的方法,可以有效的避免实时更新数据时的行锁操作及并发数据带来的数据更新不准确及脏数据问题,有效的提高了数据的准确性及系统的可靠性。
[0032] 为更好的理解技术,请参阅图2,为本发明实施例一种ERP系统并发数据的处理方法的另一实施例,包括:
[0033] 201、接收数据更新请求;
[0034] 当多个用户同时进行数据更新时,系统将接收到用户发送的数据更新请求,数据更新请求中包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据,需要说明的是,数据更新请求中还可以包含其他的信息,如请求更新时间、产品的型号及产品的颜色等等,在实际应用中,数据更新请求中包含的内容可视具体情况而定,此处不再限定。
[0035] 202、根据数据更新请求中的产品的名称获得历史累计表及未累计到历史累计表中的单据数据;
[0036] 系统接受到数据更新请求之后,将根据数据更新请求中的产品的名称获得对应的历史累计表及未累计到历史累计表中的所有的单据数据。
[0037] 历史累计表的结构包括:累计时间,产品的名称,数量。
[0038] 需要说明的是,历史累计表的结构还可以包含其他的信息,例如产品的型号及产品的颜色等等。在实际应用中视具体的情况而定,此处不做限定。
[0039] 203、将历史累计表中的数据、单据数据、待更新的数据进行合计;
[0040] 步骤202之后,系统将历史累计表中的数据、单据数据、待更新的数据进行合计,根据合计结果判断对应产品的库存量是否不足。
[0041] 204、若合计结果为负数,则发送提示消息给用户;
[0042] 系统对合计结果进行判断,若合计结果为负数,则发送提示消息给用户,其中提示消息中包含合计结果及对应的产品的名称,用于提示用户某类产品的库存量不足。
[0043] 205、根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中;
[0044] 系统接收到数据更新请求之后,根据数据更新请求将待更新的数据保存到对应的未累计到历史累计表的单据数据中,若系统没有到达预定的累计时间,则处于等待累计状态,并在接受到下一次数据更新请求消息时,执行步骤201至205,当系统到达预定的累计时间时,将执行步骤206。
[0045] 206、在预定的累计时间将单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0046] 当系统到达预定的累计时间时,系统将保存的未累计到历史累计表中的数据单据与对应的历史累计表中的数据进行合计,并更新历史累计表。具体的累计时间,可以根据系统的数据量及使用状况设置,例如可以在每天晚上6点正对历史累计表进行更新,或者每天早上七点及每天晚上七点对历史累计表进行更新,需要说明的是,每天更新的次数及时间视具体情况而定,此处不做限定。
[0047] 需要说明的是,在本发明实施例中,步骤202至204是每次接受到数据更新请求都会执行的步骤,用于判断产品的库存量是否足够,且在产品库存量不足的情况下,发送提示消息给用户,提示用户产品的库存状况。
[0048] 同时用户能够随时对货物的库存数据进行查询,当系统接收到用户的库存数据查询请求时,将根据请求消息中包含的产品的名称获得对应的未累计到历史累计表的单据数据及对应的历史累计表进行合计,并显示合计的结果,其中库存数据查询请求包含请求查询的产品的名称。
[0049] 在本发明实施例中,通过定时的对历史累计表进行累计,在预定的时间将未累计到历史累计表的单据数据累计到对应的历史累计表,对历史累计表进行更新,有效的避免实时更新数据的行锁操作及并发数据带来的数据问题,有效的提高数据的准确性及系统的可靠性,同时系统实时的将未累计到历史累计表的单据数据、待更新数据、历史累计表对应的单据数据进行累计,实时监测库存的剩余状况,当系统库存不足时,能够实时的反馈提示消息给用户。
[0050] 为了更好的理解技术,下面将介绍一个一种ERP系统中并发数据的处理方法的具体应用例,包括:
[0051] 产品的名称为显示器,颜色为银色,单位为台,系统预定的对历史累计表进行更新的时间为早上7点整。
[0052] 现有的历史累计表为:
[0053]
[0054] 2010-11-19早上7点整之后,未累计到历史累计表中的单据数据为[0055]
[0056] 若系统接收到数据更新请求消息,更新消息中包含的信息为时间2010-11-19早上10点整,产品的名称为显示器,颜色为银色,其中入库单中产品的数量为200,出库单产品数量为-300(负号代表出库),另一张出库单产品数量为-100。系统将根据更新请求消息查找到显示器对应的历史累计表及对应的未累计到所述历史累计表中的单据数据,分别入上两个表所示。并将历史累计表的数据200,单据数据400、-100及待更新数据200、-300、-100进行合计,合计结果为300,说明显示器的库存量为300台,则不需要提示用户显示器的库存量不足,若显示器的库存量为-100台时,则系统发送提示消息给用户,提示用户显示器的库存量不足,请补充库存。
[0057] 同时,系统将数据更新请求消息中的显示器的出入库数据保存到单据数据中。若系统在下次累计时间到达之前没有再收到数据更新请求,到2010-11-20早上7点整时,系统将自动对历史累计表进行更新,将未累计到历史累计表中的单据数据400,-100,
200,-300,-100与历史累计表中的数据200进行合计,合计结果为300,并更新历史累计表,如下所示:
[0058]
[0059] 在2010-11-19早上8:30,用户想要查询现有的库存量时,系统将接收到用户发送的库存数据查询请求,其中,数据查询请求中包含请求查询的产品的名称为“显示器”,系统将未累计到历史累计表的单据数据400、-100与历史累计表中的数据200进行合计,将合计结果500显示给用户,用户就知道显示器的库存量为500台。
[0060] 请参阅图3,为本发明实施例一种ERP系统中并发数据的处理方法的实施例,包括:
[0061] 接收单元301,用于接收数据更新请求,数据更新请求包括需要进行更新的产品的名称及对应的单据类别及对应的待更新数据;
[0062] 保存单元302,用于根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中;
[0063] 第一合计单元303,用于当达到预定的累计时间时,将单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表,历史累计表包含预定时间内单据数据的累计结果。
[0064] 在本发明实施中,接收单元301接收用户发送的更新请求,接收到更新请求之后,保存单元302将根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中,当达到预定的累计时间时,第一合计单元303将未累计到历史累计表的单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0065] 为了对装置的描述更加完善,请参阅图4,为本发明实施例一种ERP系统中并发数据的处理装置的实施例,包括:
[0066] 图3所示实施例中描述的接收单元301,保存单元302,第一合计单元303,且与图3所示实施例描述的内容相同,此处不再赘述。
[0067] 其中,接收单元301还用于接收用户发送的库存数据查询请求,库存数据查询请求包含用户请求查询的产品的名称。
[0068] 在本发明实施例中,装置还包括:
[0069] 获取单元401,用于根据数据更新请求中的产品的名称获得对应的历史累计表及未累计到历史累计表中的单据数据;
[0070] 第二合计单元402,用于将历史累计表中的数据、单据数据、待更新的数据进行合计。
[0071] 提示单元403,用于当合计结果为负数时,发送提示消息给用户,提示消息包含合计结果及对应的产品的名称。
[0072] 显示单元404,用于当接收到用户的库存数据查询请求时,则将未累计到历史累计表的单据数据与对应的历史累计表中的数据进行合计,显示合计的结果,库存数据查询请求包含请求查询的产品的名称。
[0073] 在本发明实施例中,接收单元301接收用户发送的更新请求,并将接收到的更新请求发送给获取单元401及保存单元302,获取单元401将根据数据更新请求中的产品的名称获得对应的历史累计表及未累计到历史累计表中的单据数据,第二合计单元402将历史累计表中的数据、单据数据及待更新的数据进行合计,当合计结果为负数时,提示单元403将发送提示消息给用户,保存单元302将根据数据更新请求将待更新数据保存到对应的未累计到历史累计表的单据数据中,当达到预定的累计时间时,第一合计单元303将未累计到历史累计表的单据数据与对应的历史累计表中的数据进行合计,并更新历史累计表。
[0074] 在本发明实施例中,当接收单元301接收用户发送的库存数据查询请求时,显示单元将未累计到历史累计表的单据数据与对应的历史累计表中的数据进行合计,显示合计的结果。
[0075] 在本发明实施例中,通过利用历史累计表对单据数据定时累计,能够有效的避免实时累计带来的数据问题,同时又通过实时累计检测数据库存量的变化,能够及时通知用户库存量不足,提高了数据的准确性及系统的可靠性。
[0076] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0077] 以上对本发明所提供的一种ERP系统中并发数据的处理方法及装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。