CN115481932B - Erp***数据库触发器生成方法、存储介质及电子装置 - Google Patents
Erp***数据库触发器生成方法、存储介质及电子装置 Download PDFInfo
- Publication number
- CN115481932B CN115481932B CN202211289646.7A CN202211289646A CN115481932B CN 115481932 B CN115481932 B CN 115481932B CN 202211289646 A CN202211289646 A CN 202211289646A CN 115481932 B CN115481932 B CN 115481932B
- Authority
- CN
- China
- Prior art keywords
- trigger
- database
- template
- variable
- database trigger
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种ERP***数据库触发器生成方法、存储介质及电子装置,该方法包括:根据数据库触发器类别创建数据库触发器模板;解析数据库触发器模板构建触发器变量规则M;获取目标数据库触发器类别、触发条件表及触发类型;根据目标数据库触发器类别获取对应的触发器变量规则M;根据获取的触发器变量规则M创建目标数据库触发器变量集合m;将目标数据库触发器变量集合m内变量依序变换入数据库触发器模板,运行数据库触发器模板,生成目标数据库触发器。本发明能够有效提高生成数据触发器效率,减少触发器开发成本。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种ERP***数据库触发器生成方法、存储介质及电子装置。
背景技术
目前,在现代化信息高速发展的时代背景下,企业的管理显得尤为重要。越来越多企业用到了ERP***,利用数字信息化产品,与人的管理相结合,使得企业在信息化产业中脱颖而出。
在应用软件***等产品中,ERP软件的表众多,例如,ERP进销存软件,从引流,到上门测定,以及进店开单,采购,出库,安装维修等环节,每个环节都至少有一个单据,并且是每个环节都需要进行业务关联,例如,进店开单环节,明细表商品总金额=商品数量*商品单价*折扣,也需要触发器进行自动计算。再例如,进店开单,库存不足,进行采购,然后部分商品出库,出库时,出库数量用触发器更新回订单商品的已出库数量,出库剩余商品时,用订单数量-已出库数量,即可计算出。由此可看出,触发器是必不可少的重要角色。在ERP软件***等产品中,新增/修改/删除触发器通常是在数据库进行新增/修改/删除。现有开发方式至少存在以下问题:1.容易出现触发器代码不规范,逻辑考虑不全面,没有标准化。2.相同的业务关系定义,需要做大部分的重复工作量。3.不方便对ERP软件***所有表的触发器进行统一管理。针对上述的问题,目前尚未提出有效的解决方案。
发明内容
为解决现有技术存在的问题,本发明提供了一种ERP***数据库触发器生成方法、存储介质及电子装置,本发明方法以不同的触发器类别,对应不同的触发器模板,使用者只需要填写触发器类别、触发条件表、触发类型,并按照触发器模板规则填写变量集合内容,进行重建,即可按照模板填充变量产生对应的目标数据库触发器,使触发器的建立过程标准化、简单化,提高效率。
本发明实施例提供了一种ERP***数据库触发器生成方法,其包括以下步骤:
S1、根据数据库触发器类别创建数据库触发器模板,所述数据库触发器模板为实现触发器类别功能的代码文件,包括:
S11、分析ERP***内业务关系,确定所述ERP***中需进行业务关系定义的多个数据库触发器类别;
S12、根据每个所述数据库触发器类别,分析与其相关联的业务关系及ERP***内的源数据表,创建与所述数据库触发器类别对应的数据库触发器模板;
S13、通过程序逻辑,固定所述数据库触发器类别与所述数据库触发器的关联,以备调用;
所述程序逻辑是指创建数据库触发器类别与对应的数据库触发器模板变量规则M的触发器关联表,创建的触发器关联表中至少包括两个字段,一个是数据库触发器类别,一个是数据库触发器模板变量规则;
S2、解析所述数据库触发器模板,构建触发器变量规则M={M1,M2,M3,…,Mn},其中,n为正整数,M1、M2、M3、Mn为构建触发器变量规则M的核心变量,所述变量包括但不限于表名或字段名;
所述触发器变量规则为所述代码文件中经解析抽取的限定的核心变量的集合;
S3、获取目标数据库触发器类别、触发条件表及触发类型;
S4、根据所述目标数据库触发器类别获取对应的所述触发器变量规则M;
S5、根据获取的所述触发器变量规则M创建目标数据库触发器变量集合m={m1,m2,m3,…,mn},其中,n为正整数,m1、m2、m3、mn为根据触发器变量规则M中的核心变量创建的目标数据库触发器的变量,所述变量包括但不限于表名或字段名,所述目标数据库触发器变量集合为根据获取的触发器变量规则M中的核心变量集合创建的目标数据库触发器的变量集合;
S6、将所述目标数据库触发器变量集合m内变量依序变换入所述数据库触发器模板,运行所述数据库触发器模板,生成目标数据库触发器,具体为:
S61、获取所述目标数据库触发器变量集合m={m1,m2,m3,…,mn}中的变量值依次存储到对象1至对象n中;
S62、通过步骤S13中程序逻辑读取所述数据库触发器模板文件,将模板文件内容存储到对象A中;
S63、在模板文件内容对象A中,将对象1至对象n依次替换到程序代码中对象1至对象n的相应位置,生成目标数据库触发器。
作为一种可选的实施方式,所述步骤S1中数据库触发器类别至少包括产生交易记录触发器,产生留货记录触发器,产生凭证交易记录触发器,产生业务交易记录触发器,单据更改设置触发器,单据关联关系触发器,单据合计触发器,当前表计算触发器,累计关系表触发器,流程关系定义表触发器,用户自定义触发器;
所述步骤S13中所述触发条件表为进行增删改的目标数据库表名;
所述步骤S13中所述触发类型包括数据更新时触发、数据删除时触发及无条件触发。
作为一种可选的实施方式,所述步骤S1中代码文件的后缀为.INC。
作为一种可选的实施方式,所述步骤S2中还包括步骤:
创建所述数据库触发器类别与对应的数据库触发器模板变量规则的触发器关联表,以备调用。
作为一种可选的实施方式,所述步骤S4具体为:
调用所述触发器关联表,根据所述目标数据库触发器类别,获取对应的所述触发器变量规则M。
本发明的有益效果:
1、本发明通过创建触发器模板,使用户在创建触发器时可调用触发器模板,避免了完全依赖用户进入数据库直接写数据库代码去生成触发器,而且也减少了生成触发器的难度,从而使触发器的生成具有可操作性;
2、本发明基于触发器类别对应不同的模板,定义触发器内容的固定变量规则,有利于业务数据的统一和数据的更新,使触发器数据的维护工作可自动完成。
附图说明
图1是根据本发明的一种ERP***数据库触发器生成方法的流程图;
图2是根据本发明实施例的一种可选的ERP***数据库触发器生成方法的用户实际使用界面的示意图;
图3是根据本发明实施例的一种可选的ERP***数据库触发器生成装置的结构示意图;
图4是根据本发明实施例的一种可选的电子装置的结构示意图。
图中:
创建单元101、获取单元102、生成单元103、存储器202、处理器204、传输装置206、显示器208、连接总线210。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
如附图1所示,本发明实施例提供了一种ERP***数据库触发器生成方法,其包括以下步骤:
S1、根据数据库触发器类别创建数据库触发器模板,包括:
S11、分析ERP***内业务关系,确定ERP***中需进行业务关系定义的多个数据库触发器类别;
作为一种可选的实施方式,步骤S1中ERP***内需进行业务关系定义的数据库触发器类别至少包括产生交易记录触发器,产生留货记录触发器,产生凭证交易记录触发器,产生业务交易记录触发器,单据更改设置触发器,单据关联关系触发器,单据合计触发器,当前表计算触发器,累计关系表触发器,流程关系定义表触发器,用户自定义触发器。
触发器类别与触发内容进行对应,不同类别对应不同的触发模板。
S12、根据每个数据库触发器类别,分析与其相关联的业务关系及ERP***内的源数据表,创建与数据库触发器类别对应的数据库触发器模板;
作为一种可选的实施方式,步骤S1中数据库触发器模板为实现触发器类别功能的后缀为.INC的代码文件。
S13、通过程序逻辑固定数据库触发器类别与数据库触发器的关联,以备调用。
步骤S1中触发条件表为增删改的目标表名,当发生增删改时,需要进行触发运行触发内容。
步骤S1中触发类型(UPDATE,INSERT)数据更新时触发;(DELETE)数据删除时触发;(UPDATE,INSERT,DELETE)无条件触发。
S2、解析数据库触发器模板构建触发器变量规则M={M1,M2,M3,…,Mn},其中,n为正整数;
作为一种可选的实施方式,步骤S2中触发器变量规则M为代码文件中经解析抽取的核心变量集合限定,比如分别是指定的什么表及指定的什么字段。
下面举例对于ERP***的其中3个触发器类别的触发器变量规则M进行详述:
触发器类别为产生交易记录:解析产生交易记录的数据库触发器模板,构建出的触发器变量规则为M={(产生目标表交易表的表名),(产生目标表交易表的字段名),(源数据表的表名),(源数据表的字段名)},即M1=产生目标表交易表的表名,M2=产生目标表交易表的字段名,M3=源数据表的表名,M4=源数据表的字段名,此时n等于4。
触发器类别为产生凭证交易记录:解析产生凭证交易记录的数据库触发器模板,构建出的触发器变量规则为M={(源数据表的表名),(源数据表的字段名)},即M1=源数据表的表名,M2=源数据表的字段名,此时n等于2。
触发器类别为单据合计:解析单据合计的数据库触发器模板,构建出的触发器变量规则为M={(触发表字段列表),(目标表),(目标表字段列表)},即M1=触发表字段列表,M2=目标表,M3=目标表字段列表,此时n等于3。
其中,源数据表根据实际情况可以为包括但不限于物理表、视图和函数,例如,还可以是存储过程。
物理表:实际占用服务器磁盘空间的表,也就是用户表。比如,单据合计的数据库触发器模板就只能是物理表。
视图:基于一个或多个表的一个查询所定义的虚拟表,它将查询的具体定义保存起来,视图不包含任何数据。
函数:函数例如表值函数与标量值函数。表值函数是将表作为值进行返回的函数,返回一个Table类型,table类型相当与一张存储在内存中的一张虚拟表;标量值函数是只返回一个字段值作为返回结果的函数。
存储过程:是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。存储过程中可以包含逻辑控制语句和数据操纵语句(增删改查),它可以接受参数、输出参数、返回单个或多个结果集以及返回值。
步骤S1中还包括步骤:
创建数据库触发器类别与对应的数据库触发器模板变量规则的触发器关联表,以备调用。
创建的触发器关联表中至少包括两个字段,一个是数据库触发器类别,一个是数据库触发器模板变量规则。
S3、获取目标数据库触发器类别、触发条件表及触发类型;
S4、根据目标数据库触发器类别获取对应的触发器变量规则;
作为一种可选的实施方式,步骤S4具体为:
调用触发器关联表,根据目标数据库触发器类别,获取对应的触发器变量规则。
S5、根据获取的触发器变量规则创建目标数据库触发器变量集合m={m1,m2,m3,…,mn};
S6、将目标数据库触发器变量集合m={m1,m2,m3,…,mn}内变量依序变换入数据库触发器模板,运行数据库触发器模板,生成目标数据库触发器。
作为一种可选的实施方式,步骤S6具体为:
S61、取目标数据库触发器变量集合m={m1,m2,m3,…,mn}中的变量值依次存储到对象1至对象n中;
S62、通过步骤S14中程序逻辑读取数据库触发器模板文件,将模板文件内容存储到对象A中;
S63、在模板文件内容对象A中,将对象1至对象n依次替换到程序代码中对象1至对象n的相应位置,生成目标数据库触发器。
另外,生成的目标数据库触发器用Trigger+触发器的system_id字段值命名,在数据库中,先判断是否有触发器名为Trigger触发器ID的触发器。若存在,则删除触发器,若不存在,执行运行即可创建数据库表的触发器。
因为在执行触发器时,可能此触发器是用户刚新增保存的,也可能是用户之前保存执行过的这次来修改的。那***先统一先判断下,该触发器名字的触发器是否存在于数据库中,若存在,那先删除数据库里该名字触发器,在再重新创建当前内容触发器进去。若不存在,则直接创建当前内容触发器进去。
该技术方案中,除了上述详细描述的触发器类别为产生交易记录之外,其余触发器类别皆可自定义后缀为.INC的模板文件,根据实际业务进行自定义触发器类型。例如,可以是产生某个表,也可是更新某个表的某些自定义字段。
在用户实际使用时,于ERP***内设置一个操作界面,如附图2所示。操作界面内设置有触发器类别,触发条件表,触发类型,触发内容(触发器变量规则)、新增、保存、生成触发器(申请重建触发器)等内容。用户只需按如下简单步骤既能批量生成多个目标数据库触发器:
S1:用户首先在操作界面选择触发器类别、触发条件表及触发类型;
操作界面内触发器类别为ERP***内已经建立好的所有触发器的类别列表,用户可在操作界面根据需要生成的触发器类别选择类别进行选择填写;触发条件表及触发类型也可根据需要在用户界面进行选择填写;
S2:用户选择填写触发器类别后,用户界面的触发内容位置会根据用户所选择的触发器类别,自动显示触发内容(触发器变量规则);
S3:用户根据需要依触发器变量规则填写好所有触发器变量;
S4:点击新增或保存,***会在ERP***内建立一个设置表,至少包含:触发器类别,触发条件表,触发类型,触发内容字段;
操作界面上一次新增的触发器类别,触发条件表,触发类型,触发内容会生成设置表的一条记录,如想一次性生成多个触发器,则可点击新增后重复步骤S1-S3,生成多条记录。
S5:点击生成触发器,提交生成数据库触发器的指令。
当接收到用户在业务关系定义发送的触发器设置表信息时,将触发器信息发送至后台服务器接收。后台服务器根据触发器设置表信息,进行转换成数据库触发器代码:
以产生交易记录为示例:
触发内容,即触发器变量规则为:(产生目标表交易表的表名)(产生目标表交易表的字段名)(源数据表的表名)(源数据表的字段名)
取出上述4个括号内的值,分别存储到对象1,对象2,对象3,对象4。读取产生交易记录的后缀为.INC的模板文件,示例:sys_mb_trigger_jyb.inc。模板文件内容存储到对象A,模板文件内容对象A中,将对象1替换到[#对象1],对象2替换到[#对象2],对象3替换到[#对象3],对象4替换到[#对象4]。从而,产生最终的产生交易记录触发器内容。一个设置表的多条记录生成多个对应的数据库触发器。
根据本发明实施例的另一个方面,还提供了一种用于实施上述ERP***数据库触发器生成方法的触发器生成装置。
如图3所示,该装置包括:
创建单元101,用于根据数据库触发器类别创建数据库触发器模板,并且解析数据库触发器模板构建触发器变量规则M;
获取单元102,用于获取目标数据库触发器类别、触发条件表及触发类型,并且根据目标数据库触发器类别获取对应的触发器变量规则及用户根据触发器变量规则创建的目标数据库触发器变量集合m;
生成单元103,用于将目标数据库触发器变量集合m内变量变换入数据库触发器模板,运行数据库触发器模板,生成目标数据库触发器。
根据本发明实施例的又一个方面,还提供了一种用于实施上述ERP***数据库触发器生成方法的电子装置,如图4所示,该电子装置包括存储器202和处理器204,该存储器202中存储有计算机程序,该处理器204被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1、根据数据库触发器类别创建数据库触发器模板;
S2、解析数据库触发器模板构建触发器变量规则M={M1,M2,M3,…,Mn},其中,n为正整数;
S3、获取目标数据库触发器类别、触发条件表及触发类型;
S4、根据目标数据库触发器类别获取对应的触发器变量规则;
S5、根据获取的触发器变量规则创建目标数据库触发器变量集合m={m1,m2,m3,…,mn};
S6、将目标数据库触发器变量集合变换入数据库触发器模板,运行数据库触发器模板,生成目标数据库触发器。可选地,本领域普通技术人员可以理解,图4所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图4其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图4中所示更多或者更少的组件(如网络接口等),或者具有与图4所示不同的配置。
其中,存储器202可用于存储软件程序以及模块,如本发明实施例中的ERP***数据库触发器生成方法和装置对应的程序指令/模块,处理器204通过运行存储在存储器202内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的ERP***数据库触发器生成方法。存储器202可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器202可进一步包括相对于处理器204远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器202具体可以但不限于用于存储操作指令等信息。作为一种示例,如图4所示,上述存储器202中可以但不限于包括上述触发器生成装置中的创建单元101、获取单元102以及生成单元103。此外,还可以包括但不限于上述触发器生成装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置206用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置206包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置206为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子装置还包括:显示器208,用于显示上述触发器生成需求信息以及元数据模型等;和连接总线210,用于连接上述电子装置中的各个模块部件。
根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1、根据数据库触发器类别创建数据库触发器模板;
S2、解析数据库触发器模板构建触发器变量规则M={M1,M2,M3,…,Mn},其中,n为正整数;
S3、获取目标数据库触发器类别、触发条件表及触发类型;
S4、根据目标数据库触发器类别获取对应的触发器变量规则;
S5、根据获取的触发器变量规则创建目标数据库触发器变量集合m={m1,m2,m3,…,mn};
S6、将目标数据库触发器变量集合变换入数据库触发器模板,运行数据库触发器模板,生成目标数据库触发器。可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种ERP***数据库触发器生成方法,其特征在于,其包括以下步骤:
S1、根据数据库触发器类别创建数据库触发器模板,所述数据库触发器模板为实现触发器类别功能的代码文件,包括:
S11、分析ERP***内业务关系,确定所述ERP***中需进行业务关系定义的多个数据库触发器类别;
S12、根据每个所述数据库触发器类别,分析与其相关联的业务关系及ERP***内的源数据表,创建与所述数据库触发器类别对应的数据库触发器模板;
S13、通过程序逻辑,固定所述数据库触发器类别与所述数据库触发器的关联,以备调用;
所述程序逻辑是指创建数据库触发器类别与对应的数据库触发器模板变量规则M的触发器关联表,创建的触发器关联表中至少包括两个字段,一个是数据库触发器类别,一个是数据库触发器模板变量规则;
S2、解析所述数据库触发器模板,构建触发器变量规则M={M1,M2,M3,...,Mn},其中,n为正整数,M1、M2、M3、Mn为构建触发器变量规则M的核心变量,所述变量包括但不限于表名或字段名;
所述触发器变量规则为所述代码文件中经解析抽取的限定的核心变量的集合;
S3、获取目标数据库触发器类别、触发条件表及触发类型;
S4、根据所述目标数据库触发器类别获取对应的所述触发器变量规则M;
S5、根据获取的所述触发器变量规则M创建目标数据库触发器变量集合m={m1,m2,m3,…,mn},其中,n为正整数,m1、m2、m3、mn为根据触发器变量规则M中的核心变量创建的目标数据库触发器的变量,所述变量包括但不限于表名或字段名,所述目标数据库触发器变量集合为根据获取的触发器变量规则M中的核心变量集合创建的目标数据库触发器的变量集合;
S6、将所述目标数据库触发器变量集合m内变量依序变换入所述数据库触发器模板,运行所述数据库触发器模板,生成目标数据库触发器,具体为:
S61、获取所述目标数据库触发器变量集合m={m1,m2,m3,...,mn}中的变量值依次存储到对象1至对象n中;
S62、通过步骤S13中程序逻辑读取所述数据库触发器模板文件,将模板文件内容存储到对象A中;
S63、在模板文件内容对象A中,将对象1至对象n依次替换到程序代码中对象1至对象n的相应位置,生成目标数据库触发器。
2.根据权利要求1所述的ERP***数据库触发器生成方法,其特征在于,所述步骤S1中数据库触发器类别至少包括产生交易记录触发器,产生留货记录触发器,产生凭证交易记录触发器,产生业务交易记录触发器,单据更改设置触发器,单据关联关系触发器,单据合计触发器,当前表计算触发器,累计关系表触发器,流程关系定义表触发器,用户自定义触发器;
所述步骤S13中所述触发条件表为进行增删改的目标数据库表名;
所述步骤S13中所述触发类型包括数据更新时触发、数据删除时触发及无条件触发。
3.根据权利要求1所述的ERP***数据库触发器生成方法,其特征在于,所述步骤S1中代码文件的后缀为.INC。
4.根据权利要求2所述的ERP***数据库触发器生成方法,其特征在于,所述步骤S2中还包括步骤:
创建所述数据库触发器类别与对应的数据库触发器模板变量规则的触发器关联表,以备调用。
5.根据权利要求4所述的ERP***数据库触发器生成方法,其特征在于,所述步骤S4具体为:
调用所述触发器关联表,根据所述目标数据库触发器类别,获取对应的所述触发器变量规则M。
6.一种计算机可读的存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求1至5任一项中所述的方法。
7.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至5任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211289646.7A CN115481932B (zh) | 2022-10-20 | 2022-10-20 | Erp***数据库触发器生成方法、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211289646.7A CN115481932B (zh) | 2022-10-20 | 2022-10-20 | Erp***数据库触发器生成方法、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115481932A CN115481932A (zh) | 2022-12-16 |
CN115481932B true CN115481932B (zh) | 2023-06-02 |
Family
ID=84395295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211289646.7A Active CN115481932B (zh) | 2022-10-20 | 2022-10-20 | Erp***数据库触发器生成方法、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115481932B (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5855014A (en) * | 1995-11-03 | 1998-12-29 | Application Partners, Inc. | Getfield function for a relational workgroup platform using keyword and workflow databases |
US8898124B2 (en) * | 2010-12-16 | 2014-11-25 | International Business Machines Corporation | Controlling database trigger execution with trigger return data |
US8856246B2 (en) * | 2011-08-10 | 2014-10-07 | Clarizen Ltd. | System and method for project management system operation using electronic messaging |
CN109885581B (zh) * | 2019-03-14 | 2021-09-17 | 苏州达家迎信息技术有限公司 | 数据库的同步方法、装置、设备及存储介质 |
US20210390485A1 (en) * | 2020-06-16 | 2021-12-16 | Dinvy, LLC | Professional services tracking, reminder and data gathering method and apparatus |
CN112051991B (zh) * | 2020-08-03 | 2022-11-11 | 国电南瑞科技股份有限公司 | 一种基于触发规则描述文件的数据通用触发方法 |
CN114816437A (zh) * | 2022-04-28 | 2022-07-29 | 重庆锐云科技有限公司 | 一种逆向生成Java实体类的方法、***和设备 |
CN115168352A (zh) * | 2022-07-07 | 2022-10-11 | 深圳市布博卡科技有限公司 | 一种数据关联方法、终端及存储介质 |
-
2022
- 2022-10-20 CN CN202211289646.7A patent/CN115481932B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115481932A (zh) | 2022-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110472207A (zh) | 表单生成方法和装置 | |
CN109814856B (zh) | 数据录入方法、装置、终端及计算机可读存储介质 | |
CN108259553A (zh) | 业务邮件的发送方法及终端设备 | |
CN110969001B (zh) | 反馈信息的生成方法及装置、存储介质、处理器和终端 | |
CN112148679A (zh) | 基于多种数据平台的数据交互方法、***、装置及存储介质 | |
CN111310427A (zh) | 业务数据配置处理方法、装置、计算机设备和存储介质 | |
CN107241372A (zh) | 配置信息生成、发送方法及资源加载方法和装置及*** | |
TW200532480A (en) | Dynamic late binding of third party on demand services in an on-demand infrastructure | |
CN103383687A (zh) | 一种页面处理方法和装置 | |
CN107330717A (zh) | 广告投放方法和*** | |
CN110795697A (zh) | 逻辑表达式的获取方法、装置、存储介质以及电子装置 | |
CN111125518A (zh) | 家电信息推荐的***及方法 | |
CN112422450A (zh) | 计算机设备、服务请求的流量控制方法及装置 | |
CN113434742A (zh) | 账号的筛选方法和装置、存储介质及电子装置 | |
CN112905178A (zh) | 业务功能页面生成方法、装置、设备及介质 | |
CN115481932B (zh) | Erp***数据库触发器生成方法、存储介质及电子装置 | |
CN112559646A (zh) | 一种报表下载方法和装置 | |
CN111045928A (zh) | 一种接口数据测试方法、装置、终端及存储介质 | |
CN112181409A (zh) | 一种应用构建方法、应用渲染方法及装置 | |
CN112860700B (zh) | 数据表的生成方法及装置、存储介质及电子装置 | |
CN115277835A (zh) | 信息推送方法、装置、存储介质及电子设备 | |
CN109241401A (zh) | 状态信息查询方法、客户端、服务器及计算机可读介质 | |
CN114218914A (zh) | 业务匹配方法及相关装置 | |
CN110347654A (zh) | 一种上线集群特性的方法和装置 | |
CN113064627A (zh) | 服务接入数据处理方法、平台、终端、设备及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |