CN117093186A - 一种高复用性标准化批导方法及系统 - Google Patents
一种高复用性标准化批导方法及系统 Download PDFInfo
- Publication number
- CN117093186A CN117093186A CN202310968495.6A CN202310968495A CN117093186A CN 117093186 A CN117093186 A CN 117093186A CN 202310968495 A CN202310968495 A CN 202310968495A CN 117093186 A CN117093186 A CN 117093186A
- Authority
- CN
- China
- Prior art keywords
- data
- layer
- function
- field
- batch
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000006243 chemical reaction Methods 0.000 claims abstract description 43
- 238000012544 monitoring process Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 abstract description 17
- 238000012423 maintenance Methods 0.000 abstract description 5
- 238000012986 modification Methods 0.000 abstract description 5
- 230000004048 modification Effects 0.000 abstract description 5
- 239000002699 waste material Substances 0.000 abstract description 3
- 239000010410 layer Substances 0.000 description 113
- 238000010586 diagram Methods 0.000 description 16
- 241000713826 Avian leukosis virus Species 0.000 description 10
- 230000008676 import Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种高复用性标准化批导方法及系统,包括:通过数据层收集和整理用户配置的数据;通过转换层根据字段命名约定将数据层和功能调用层关联到一起,并将所数据层整理的数据复制到功能调用层;通过功能调用层中的核心功能调用标准BAPI完成转换层复制过来的数据的批导;其中,功能调用层包括核心功能,核心功能内封装有标准BAPI,核心功能中预设有调用标准BAPI的字段。本发明用于解决现有的批导方法存在的代码质量低、开发或修改难度高以及浪费项目人天费用等的技术问题,从而达到节省项目人天费用、提高批导程序代码质量、降低开发难度以及降低后期运维对人员的依赖度的目的。
Description
技术领域
本发明涉及数据批量处理技术领域,具体涉及一种高复用性标准化批导方法及系统。
背景技术
现有的批导方法,如图1所示,主要包括四个环节:设计批导程序EXCEL模板、根据EXCEL模板编写程序以及反复测试批导程序功能、利用测试通过的批导程序完成批导。在设计批导程序EXCEL模板时,业务顾问将以前项目的FS修修改改,或者从零开始编写FS。在根据EXCEL模板编写程序时,开发顾问编写批导程序分为以下4步:(1)读取EXCEL数据并进行整理;(2)展示ALV;(3)设置功能键调用BAPI;(4)处理执行结果信息。在反复测试批导程序功能时,业务顾问测试程序,开发顾问修改优化程序。
上述批导方法是从编写程序考虑,此开发方式存在以下弊端:
1、代码质量低
一个程序复制过来后,注释掉本项目不需要的代码,新增本项目的新逻辑。几个项目后,这个程序被反复修改,且一般用户都抱着“能用就行”的态度,从而导致该程序很快就会被改得稀烂。
2、开发或修改难度高
若从零开发,如BP主数据、物料主数据、固定资产这些批导程序在开发上存在不少难度。
若是复制其他项目的程序,其他项目的程序代码原本质量低的话,修改的开发难度其实也很大,甚至对开发人员来说是种折磨,如我们常说的“修改程序远比自己开发程序要难”。
3、重复性工作,浪费项目人天且限制个人成长
这种复制之前项目的代码,修修补补放到下个项目上,且还是重复那个过程:修改ALV、修改调用BAPI逻辑……等。对公司而言,等于是反复购入些低质量的人力知识产品;对个人而言,做些重复性的工作,浪费时间。
发明内容
为了克服现有技术的不足,本发明提供一种高复用性标准化批导方法及系统,用于解决现有的批导方法存在的代码质量低、开发或修改难度高以及浪费项目人天费用等的技术问题,从而达到节省项目人天费用、提高批导程序代码质量、降低开发难度以及降低后期运维对人员的依赖度的目的。
为解决上述问题,本发明所采用的技术方案如下:
一种高复用性标准化批导方法,包括以下步骤:
通过数据层收集和整理用户配置的数据;
通过转换层根据字段命名约定将所述数据层和功能调用层关联到一起,并将所述数据层整理的数据复制到所述功能调用层;
通过所述功能调用层中的核心功能调用所述标准BAPI完成所述转换层复制过来的数据的批导;
其中,所述功能调用层包括所述核心功能,所述核心功能内封装有所述标准BAPI,所述核心功能中预设有调用所述标准BAPI的字段。
作为本发明优选的实施方式,当所述数据层应用于ABAP批导程序时,包括:
通过所述数据层读取用户在EXCEL配置的字段信息,动态地创建出内表和生成对应ALV展示程序。
作为本发明优选的实施方式,在动态地创建出内表时,包括:
得到字段的内外码转换例程,将读取到的数据传入到所述内外码转换例程中,自动转义成SAP的内码;
其中,在得到字段的内外码转换例程时,包括:
通过示例字段和用户数据字段作为查询条件,读取DD03L表数据,又通过DD03L~DOMNAME=DD01L~DOMNAME查询到DD01L的CONVEXIT字段
按照SAP的官方命名规则得到字段的内外码转换例程,所述SAP的官方命名规则为:CONVERSION_EXIT_+CONVEXIT+_INPUT。
作为本发明优选的实施方式,在动态地创建出内表时,还包括:
通过SAP官方的RuntimeTypeServices中的CL_ABAP_TABLEDESCR类,将整理好的字段信息作为入参,传入create_table方法中,生成动态内表。
作为本发明优选的实施方式,在将所述数据层整理的数据复制到功能调用层时,包括:
根据所述数据层和所述转换层中字段名称约定的一致性,利用ABAP语法的MOVE-CORRESPONDING逐一将数据从所述数据层的容器复制到所述核心功能的容器,并将整理准备好的数据作为入参,调用所述核心功能。
作为本发明优选的实施方式,在将所述数据层整理的数据复制到功能调用层时,包括:
采用SAP全局宏定义的方式将监控日志代码全部写在TRMAC中得到宏定义逻辑块;
通过调用所述宏定义逻辑块在开始时记录入参数据到自建表中,结束时记录出参数据到自建表中。
作为本发明优选的实施方式,所述批导方法还包括:
在所述数据层的EXCEL配置好相应字段信用,并且实际填入了数据,通过所述核心功能检查到传入数据后,会给对应的字段赋值,从而实现相应的功能字段;
其中,所述字段信用包括:额度规则、检查规则、风险规则。
作为本发明优选的实施方式,在通过所述功能调用层中的核心功能调用所述标准BAPI时,包括:
使用常用的标准表的字段名作为所述核心功能的入参名,且预设实现大部分标准BAPI的功能;
根据所述入参名调用相应的标准BAPI的功能完成相应数据的批导。
一种高复用性标准化批导系统,包括:
数据层,用于收集和整理用户配置的数据;
转换层,用于根据字段命名约定将所述数据层和功能调用层关联到一起,并将所述数据层整理的数据复制到所述功能调用层;
功能调用层,包括核心功能,所述核心功能封装有标准BAPI,所述核心功能预设有调用所述标准BAPI的字段,并通过调用所述标准BAPI完成所述转换层复制过来的数据的批导。
作为本发明优选的实施方式,当所述数据层应用于ABAP批导程序时,所述数据层为ABAP程序用于读取和整理数据的逻辑代码;
当所述数据层应用于接口程序时,所述数据层为第三方系统的前端用户界面,通过所述前端用户界面收集用户的输入数据,并进行整理;
当所述数据层应用于功能平台程序时,所述数据层为ABAP程序的Dialog屏幕程序,通过所述Dialog屏幕程序收集用户的输入数据,并进行整理;
其中,所述逻辑代码用于读取用户在EXCEL配置的字段信息,动态地创建出内表和生成对应ALV展示程序。
相比现有技术,本发明的有益效果在于:
(1)节省项目人天费用:假设一个实施项目有10个批导程序,一般一个批导程序算3个人天,总共30个人天,但实际上物料主数据、BP主数据这些复杂的批导,往往需要5个人天,总共50人天;本发明同时节省了业务顾问编写FS和测试的时间;另外“核心功能”封装好之后,还能供接口程序和功能平台程序使用从而降低开发难度;因此针对复杂的批导项目整体上算,一个项目可减少30个人天费用。
(2)批导程序代码质量更高,降低项目上线批导数据的风险:首先本发明的“核心功能”只会由开发部门技术水平较高的人员来编写,代码质量是有保证的。其次这些批导程序是会被多个实施项目复用的,程序的稳定性是经过过往项目验证的,其稳定性是随时间越趋稳定的。
(3)降低开发难度,为项目实施减负:就目前公司一般做实施项目人员配置来说,往往一个项目只会配置:一个中级ABAP+多个初级ABAP+一两名学员,对部分初级开发人员来说,有些批导程序的难度较大(比如固定资产批导、物料主数据批导)。但本发明通过对标准BAPI重新封装成更为简单使用的“核心功能”后,初级开发人员大部分情况都不需要关注具体的代码实现,只需关注如何整理数据调用“核心功能”即可。
(4)降低项目后期运维对人员的依赖度:某个项目上线完后,经常会遇到某些入职人员离职的情况,后期一些程序出BUG,没有人了解之前的程序业务逻辑,导致运维人员需要费很大劲才能解决问题;本发明的标准通用化,不会是单凭公司某个人员就能完成的,通常是一组人按照某种风格、规范,设计、编写出来的,这个过程是规则化的,而不是个人化的,而公司职员一般不会出现成批离职的情况,所以项目运维期间对人员的依赖度会降低。
下面结合附图和具体实施方式对本发明作进一步详细说明。
附图说明
图1-是本发明背景技术的现有批导方法各环节示意图;
图2-是本发明实施例的高复用性标准化批导系统的第一架构图;
图3-是本发明实施例的核心功能的封装代码图;
图4-是本发明实施例的EXCEL上记录的对应字段的相关表字段信息示意图;
图5-是本发明实施例的高复用性标准化批导系统的第二架构图;
图6-是本发明实施例的在EXCEL配置字段信息的示意图;
图7-是本发明实施例的读取EXCEL配置信息的示意图;
图8-是本发明实施例的将外码自动转义成SAP内码的示意图;
图9-是本发明实施例的根据配置信息动态构建内表的示意图;
图10-是本发明实施例的调用转换层功能的操作界面图;
图11-是本发明实施例的调用转换层功能的代码图;
图12-是本发明实施例的数据转换到核心功能以及核心功能的代码图;
图13-是本发明实施例的全局宏定义的TRMAC的示意图;
图14-是本发明实施例的核心功能的命名示意图;
图15-是本发明实施例的启用信用管理代码图;
图16-是本发明实施例的核心功能调用标准BAPI的代码图;
图17-是本发明实施例的高复用性标准化批导方法步骤图。
附图标号说明:1、数据层;2、转换层;3、功能调用层;4、核心功能;5、标准BAPI。
具体实施方式
本发明所提供的高复用性标准化批导方法,如图17所示,包括以下步骤:
步骤S1:通过数据层1收集和整理用户配置的数据;
步骤S2:通过转换层2根据字段命名约定将数据层1和功能调用层3关联到一起,并将数据层1整理的数据复制到功能调用层3;
步骤S3:通过功能调用层3中的核心功能4调用标准BAPI5完成转换层2复制过来的数据的批导;
其中,所述功能调用层3包括核心功能4,核心功能4内封装有标准BAPI5,核心功能4中预设有调用标准BAPI5的字段。
在上述步骤S1中,当数据层1应用于ABAP批导程序时,包括:
通过数据层1读取用户在EXCEL配置的字段信息,动态地创建出内表和生成对应ALV展示程序。
进一步地,在动态地创建出内表时,包括:
得到字段的内外码转换例程,将读取到的数据传入到内外码转换例程中,自动转义成SAP的内码;
其中,在得到字段的内外码转换例程时,包括:
通过示例字段和用户数据字段作为查询条件,读取DD03L表数据,又通过DD03L~DOMNAME=DD01L~DOMNAME查询到DD01L的CONVEXIT字段
按照SAP的官方命名规则得到字段的内外码转换例程,SAP的官方命名规则为:CONVERSION_EXIT_+CONVEXIT+_INPUT。
更进一步地,在动态地创建出内表时,还包括:
通过SAP官方的RuntimeTypeServices中的CL_ABAP_TABLEDESCR类,将整理好的字段信息作为入参,传入create_table方法中,生成动态内表。
在上述步骤S2中,在将数据层1整理的数据复制到功能调用层3时,包括:
根据数据层1和转换层2中字段名称约定的一致性,利用ABAP语法的MOVE-CORRESPONDING逐一将数据从数据层1的容器复制到核心功能4的容器,并将整理准备好的数据作为入参,调用核心功能4。
在上述步骤S2中,在将数据层1整理的数据复制到功能调用层3时,包括:
采用SAP全局宏定义的方式将监控日志代码全部写在TRMAC中得到宏定义逻辑块;
通过调用宏定义逻辑块在开始时记录入参数据到自建表中,结束时记录出参数据到自建表中。
进一步地,本发明所提供的批导方法还包括:
在数据层1的EXCEL配置好相应字段信用,并且实际填入了数据,通过核心功能4检查到传入数据后,会给对应的字段赋值,从而实现相应的功能字段;
其中,字段信用包括:额度规则、检查规则、风险规则。
在上述步骤S3中,在通过功能调用层3中的核心功能4调用标准BAPI5时,包括:
使用常用的标准表的字段名作为核心功能4的入参名,且预设实现大部分标准BAPI5的功能;
根据入参名调用相应的标准BAPI5的功能完成相应数据的批导。
本发明所提供的高复用性标准化批导系统,包括:数据层1、转换层2以及功能调用层3。
数据层1,用于收集和整理用户配置的数据。
转换层2,用于根据字段命名约定将数据层1和功能调用层3关联到一起,并将所述数据层1整理的数据复制到功能调用层3。
功能调用层3,包括核心功能4,核心功能4封装有标准BAPI5,核心功能4预设有调用标准BAPI5的字段,并通过调用标准BAPI5完成转换层2复制过来的数据的批导。
具体地,本发明采用如图2所示的设计架构,主要为了达到以下目的:
(1)不要因为每个项目批导程序字段的不同,都去修改代码,从而展示出不一样的ALV;
(2)让标准BAPI5调用起来更加简单方便,让学员也一看就会用;
(3)要提高开发效率,但不是单纯的复制粘贴,而是在不断完善上个项目的工作成果。
另外,上述架构所包含的:重新封装核心功能4+EXCEL可配置方式,大大提高了批导程序的可复用性和代码质量,同时降低开发难度,从而有效降低人天费用。
进一步地,当数据层1应用于ABAP批导程序时,数据层1为ABAP程序用于读取和整理数据的逻辑代码;
当数据层1应用于接口程序时,数据层1为第三方系统的前端用户界面,通过前端用户界面收集用户的输入数据,并进行整理;
当数据层1应用于功能平台程序时,数据层1为ABAP程序的Dialog屏幕程序,通过Dialog屏幕程序收集用户的输入数据,并进行整理;
其中,逻辑代码用于读取用户在EXCEL配置的字段信息,动态地创建出内表和生成对应ALV展示程序。
具体地,本发明所提供的批导系统由三层架构组成,三层架构包括数据层1、转换层2以及功能调用层3。每一层的解释如下:
数据层1:
对于ABAP批导程序来说,这个数据层1就是ABAP程序涉及读取和整理数据的逻辑代码,该逻辑代码用于读取EXCEL数据、并将读取上来的数据整理成合适的内表、展示ALV。
对于接口程序来说,跟SAP的开发无关,这个数据层1是在第三方系统,第三方系统可能有个前端用户界面,比如OA系统创建客户数据的网页。
对于功能平台程序来说,数据层1就是ABAP程序的Dialog屏幕程序,这个屏幕用来收集用户的输入信息,或者一个数据表。
转换层2:
数据层1的数据结构可能是多种多样的,但本发明的核心功能4的结构是固定的,为了提高灵活性,把“数据层1”到“核心功能4”的数据转换放在“转换层2”,从而避免频繁的修改“数据层1”和“功能调用层3”。
进一步地,在转换层2还可以做一些特殊性的功能,比如某个项目需要监控数据的导入情况,这些不具有共性的需求,就可以写在转换层2中。
标准BAPI5:即SAP原厂发布出来的BAPI。
核心功能4:
“核心功能4”由水平较好高的开发人员重新封装标准BAPI5,尽可能使用最常用的标准表的字段名作为“核心功能4”的入参名,且预设实现大部分标准BAPI 5的功能,使其更加简单易用。
例如:
会计凭证的批导BAPI_ACC_DOCUMENT_POST,在处理往来账时,需要传入客户或供应商编号,而不是科目。或者处理外币时,金额参数currencyamo unt要有两行,00行是凭证货币的金额,01行是本位币金额。
从图3可见,下框重新封装标准BAPI5后,这段代码的调用(上框)中,开发人员并不需要编写上述的“往来账”、“外币”的代码。
具体地,本发明所提供的标准化批导系统的高复用性实现过程如下:
数据层1:在EXCEL上记录上对应字段的相关表字段信息,如图4所示,数据层1读取出这些信息,动态地创建出“内表”、“ALV”,从而实现一种“配置EXCEL”即可生成出对应ALV展示程序的效果。
转换层2:该层根据字段命名约定,将“数据层1的数据”和“功能调用层3”关联到一起,从而提高程序的灵活度,即将来“功能调用层3”不会因为“数据层1”的变动而要作出修改,反过来也是一样。
功能调用层3:最为核心的工作是重新封装“核心功能4”,即预设实现绝大部分标准BAPI5的字段。此“核心功能4”不但可以供批导程序使用,对其外包一层RFC,它就是个接口程序,把它用在平台功能程序上,它就是平台功能程序的功能键对应的逻辑。
以下的实施例是对本发明的进一步说明,但本发明的范围并不限制于此。
BP批导为例:
备注:以下是某云实施项目的供应商批导程序,该供应商批导程序完全按照了图5所示的程序架构编写。图6所示的EXCEL文件是该批导程序对应的模板文件。
业务顾问:
(1)从模板中选取需要的字段,删除不需要的字段,或调整字段顺序。
(2)如需有定制化的“数据校验”、“增强逻辑”要增加到FS中。
开发顾问:
(1)稍微简单的处理一下“转行层功能”。
(2)新增定制化的“数据校验”、“增强逻辑”代码。
数据层1的实现:
A.在EXCEL配置字段信息,如图6所示。
程序运行时:
B.读取EXCEL配置信息,如图7所示。
图7程序内表结构共8个字段:
1.DESCRIPTION<----------->业务名称(EXCEL第2行);
2.FIELDNAME<----------->字段名(EXCEL第3行);
3.REFDICC<----------->参考字典(EXCEL第4行);
4.FIELDTYP<----------->数据类型(EXCEL第5行);
5.REQUIRED<----------->是否必填(EXCEL第6行);
6.REFTABLE和REFFIELD分别是以“-”切分REFDICC而成;
7.另外:
CONVEXIT是SAP字段的内外码转换历程,如图8所示,其通过“REFT ABLE”和“REFFIELD”作为查询条件,读取DD03L表数据,又通过DD03L~DOMNAME=DD01L~DOMNAME查询到DD01L的CONVEXIT字段,按照SAP的官方命名规则CONVERSION_EXIT_+CONVEXIT+_INPUT,即可得到该字段的内外码转换例程,如:
若CONVEXIT为“ISOLA”,则CONVERSION_EXIT_ISOLA_INPUT。
得到该例程名称(即函数名),将EXCEL读取到的数据,传入到该例程中,即可将“外码”自动转义成SAP的内码。
C.根据配置信息动态构建内表、结构。(如图8所示,此处只涉及动态构建内表),通过SAP官方的“RuntimeTypeServices”中的CL_ABAP_TABLEDESCR类,将前面整理好的字段信息(图8t_comp),作为入参传入create_table方法中,即可生成动态内表。
转换层2:
A.点击图10中的“执行导入”按钮时,程序将调用“转换层2功能”,如图11所示。
B.从图12中可见,根据字段名称约定的一致性,如:数据层1中的供应商编码名称是“partner”,“转换功能”中供应商编码名称也是“partner”,其他字段数据也如此,利用(图12的数据转换框)ABAP语法的MOVE-CORRESPONDING逐一将数据从“数据层1的容器”复制到“核心功能4层的容器”,即把“水从一个杯子倒到另外一个形状的杯子中”就是“转换层2”的工作。
最后,将整理准备好的数据作为入参,调用“核心功能4”(图12的核心功能4框)。
另外,从图12开头处可见,在这里做了监控日志。该监控日志底层逻辑功能为:“在开始时记录入参数据到自建表中,结束时记录出参数据到自建表中”。但是,考虑到每个功能函数都要加这些代码,从视觉上会觉得代码冗余。于是采用SAP“全局宏定义”的方式,把代码全部写在TRMAC中(如图13所示)。
“宏定义”本质就是为特定的代码定义为逻辑块,并赋予该逻辑块一个名字,使用宏定义即重复调用其对应的逻辑功能。如:
逻辑:一个数加上另外一个数,得到两数总和。
公式:&1+&2=&3
命名:SUM
结果:DEFINESUM.
&3=&1+&2.
ENDDEFINE.
作用:SUM可以传入两个任意的数字,即可得到两数之和。
“宏定义”能使程序代码组织更具结构性与减少代码冗余。
所以【zfmlog_input‘ZFN_BATCHIN_SUPPLIER’‘Start:’.】和
【zfmlog_output‘End:’ev_typeev_msg.】这2句代码实际上蕴含了197句代码(用来记录接口数据),这种方式能使日志程序使用起来更加简洁方便。
核心功能4:
“核心功能4”的参数名字是按照最常用的标准表来命名,如图14可见(图14中箭头只是随意选取示例的3个字段)。所以使得此功能的使用难度大大降低,其他人员使用起来就像“往表中插入数据一样简单”。
“核心功能4”会预设实现了大部分常规的调用逻辑。另外,只要“数据层1”的EXCEL配置好相应字段信用“额度规则”、“检查规则”、“风险规则”等,且实际填入了数据,“核心层”的代码检查到传入数据后,就会给对应的字段赋值,从而实现相应的功能字段,启用信用管理。
其他功能实现方式同理。
“核心功能4”最终调用了SAP原厂发布的标准BAPI5,如图16所示。简而言之,“核心功能4”可以看作是一个实现了标准BAPI5大部分字段的一段复杂程序,它是一个“考虑周到”的一个功能,但根据项目需求,在本实施例中只使用到了“数据层1”EXCEL配置的字段。
上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。
Claims (10)
1.一种高复用性标准化批导方法,其特征在于,包括以下步骤:
通过数据层收集和整理用户配置的数据;
通过转换层根据字段命名约定将所述数据层和功能调用层关联到一起,并将所述数据层整理的数据复制到所述功能调用层;
通过所述功能调用层中的核心功能调用所述标准BAPI完成所述转换层复制过来的数据的批导;
其中,所述功能调用层包括所述核心功能,所述核心功能内封装有所述标准BAPI,所述核心功能中预设有调用所述标准BAPI的字段。
2.根据权利要求1所述的高复用性标准化批导方法,其特征在于,当所述数据层应用于ABAP批导程序时,包括:
通过所述数据层读取用户在EXCEL配置的字段信息,动态地创建出内表和生成对应ALV展示程序。
3.根据权利要求2所述的高复用性标准化批导方法,其特征在于,在动态地创建出内表时,包括:
得到字段的内外码转换例程,将读取到的数据传入到所述内外码转换例程中,自动转义成SAP的内码;
其中,在得到字段的内外码转换例程时,包括:
通过示例字段和用户数据字段作为查询条件,读取DD03L表数据,又通过DD03L~DOMNAME=DD01L~DOMNAME查询到DD01L的CONVEXIT字段按照SAP的官方命名规则得到字段的内外码转换例程,所述SAP的官方命名规则为:CONVERSION_EXIT_+CONVEXIT+_INPUT。
4.根据权利要求3所述的高复用性标准化批导方法,其特征在于,在动态地创建出内表时,还包括:
通过SAP官方的Runtime Type Services中的CL_ABAP_TABLEDESCR类,将整理好的字段信息作为入参,传入create_table方法中,生成动态内表。
5.根据权利要求1所述的高复用性标准化批导方法,其特征在于,在将所述数据层整理的数据复制到功能调用层时,包括:
根据所述数据层和所述转换层中字段名称约定的一致性,利用ABAP语法的MOVE-CORRESPONDING逐一将数据从所述数据层的容器复制到所述核心功能的容器,并将整理准备好的数据作为入参,调用所述核心功能。
6.根据权利要求1所述的高复用性标准化批导方法,其特征在于,在将所述数据层整理的数据复制到功能调用层时,包括:
采用SAP全局宏定义的方式将监控日志代码全部写在TRMAC中得到宏定义逻辑块;
通过调用所述宏定义逻辑块在开始时记录入参数据到自建表中,结束时记录出参数据到自建表中。
7.根据权利要求1所述的高复用性标准化批导方法,其特征在于,所述批导方法还包括:
在所述数据层的EXCEL配置好相应字段信用,并且实际填入了数据,通过所述核心功能检查到传入数据后,会给对应的字段赋值,从而实现相应的功能字段;
其中,所述字段信用包括:额度规则、检查规则、风险规则。
8.根据权利要求1所述的高复用性标准化批导方法,其特征在于,在通过所述功能调用层中的核心功能调用所述标准BAPI时,包括:
使用常用的标准表的字段名作为所述核心功能的入参名,且预设实现大部分标准BAPI的功能;
根据所述入参名调用相应的标准BAPI的功能完成相应数据的批导。
9.一种高复用性标准化批导系统,其特征在于,包括:
数据层,用于收集和整理用户配置的数据;
转换层,用于根据字段命名约定将所述数据层和功能调用层关联到一起,并将所述数据层整理的数据复制到所述功能调用层;
功能调用层,包括核心功能,所述核心功能封装有标准BAPI,所述核心功能预设有调用所述标准BAPI的字段,并通过调用所述标准BAPI完成所述转换层复制过来的数据的批导。
10.根据权利要求1所述的高复用性标准化批导系统,其特征在于,
当所述数据层应用于ABAP批导程序时,所述数据层为ABAP程序用于读取和整理数据的逻辑代码;
当所述数据层应用于接口程序时,所述数据层为第三方系统的前端用户界面,通过所述前端用户界面收集用户的输入数据,并进行整理;
当所述数据层应用于功能平台程序时,所述数据层为ABAP程序的Dialog屏幕程序,通过所述Dialog屏幕程序收集用户的输入数据,并进行整理;
其中,所述逻辑代码用于读取用户在EXCEL配置的字段信息,动态地创建出内表和生成对应ALV展示程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310968495.6A CN117093186A (zh) | 2023-08-03 | 2023-08-03 | 一种高复用性标准化批导方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310968495.6A CN117093186A (zh) | 2023-08-03 | 2023-08-03 | 一种高复用性标准化批导方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117093186A true CN117093186A (zh) | 2023-11-21 |
Family
ID=88774289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310968495.6A Pending CN117093186A (zh) | 2023-08-03 | 2023-08-03 | 一种高复用性标准化批导方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117093186A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060112123A1 (en) * | 2004-11-24 | 2006-05-25 | Macnica, Inc. | Spreadsheet user-interfaced business data visualization and publishing system |
CN110322313A (zh) * | 2019-05-23 | 2019-10-11 | 唐山钢铁集团有限责任公司 | 基于sap系统批量创建销售订单及交货单过账的方法 |
CN111445196A (zh) * | 2020-05-18 | 2020-07-24 | 江苏电力信息技术有限公司 | 一种基于sap系统实现批量货物上下架的方法 |
-
2023
- 2023-08-03 CN CN202310968495.6A patent/CN117093186A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060112123A1 (en) * | 2004-11-24 | 2006-05-25 | Macnica, Inc. | Spreadsheet user-interfaced business data visualization and publishing system |
CN110322313A (zh) * | 2019-05-23 | 2019-10-11 | 唐山钢铁集团有限责任公司 | 基于sap系统批量创建销售订单及交货单过账的方法 |
CN111445196A (zh) * | 2020-05-18 | 2020-07-24 | 江苏电力信息技术有限公司 | 一种基于sap系统实现批量货物上下架的方法 |
Non-Patent Citations (1)
Title |
---|
SAPMATINAL: ""SAP ABAP 采购订单批导"", Retrieved from the Internet <URL:《https://blog.csdn.net/SAPmatinal/article/details/131987911》> * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110825362B (zh) | 低代码应用软件开发系统及方法 | |
US5390330A (en) | Control system and method for direct execution of software application information models without code generation | |
CN108959076A (zh) | 一种api在线调试方法 | |
CN110245110A (zh) | 数据处理方法、装置及存储介质 | |
CN111722839B (zh) | 一种代码生成方法、装置、电子设备及存储介质 | |
CN104216912A (zh) | 一种无侵入式的业务表单工作流化的实现方法与装置 | |
WO1996032675A9 (en) | Automated enforcement of behavior in application program | |
EP0823084A1 (en) | Automated enforcement of behavior in application program | |
CN110286974A (zh) | 基于h5页面的应用配置方法、装置、设备及存储介质 | |
US20240106768A1 (en) | Conversation-enabled document system and method | |
CN107015804A (zh) | 一种通过配置api快速开发项目的方法及系统 | |
CN114981775B (zh) | 用于api综合管理的基于云的api元数据管理方法及系统 | |
EP2492806A1 (en) | Unified interface for meta model checking, modifying, and reporting | |
CN110309099A (zh) | 接口管理方法、装置、设备及计算机可读存储介质 | |
CN101819551A (zh) | 记录企业信息系统的服务交互数据的方法和系统 | |
CN111090976B (zh) | 基于动态数据的检验文档生成方法及装置 | |
CN114115841A (zh) | 数据流接口动态编排方法、装置、设备、介质及程序产品 | |
CN109885290B (zh) | 应用程序服务描述信息生成与发布方法、装置和存储介质 | |
CN112711414B (zh) | 一种表单界面适配展现方法、装置及存储介质 | |
US20120179711A1 (en) | System and Method for Accessing a Database Including Data Abstraction Layer and Request Table Processing | |
CN113642301A (zh) | 报表的生成方法、装置及系统 | |
CN109614084A (zh) | web程序及其快速开发框架、开发方法与相关设备 | |
CN116301856B (zh) | 一种可视化表单设计器的设计方法、装置、设备及介质 | |
CN117093186A (zh) | 一种高复用性标准化批导方法及系统 | |
JP2008515056A (ja) | ビジネスプロセス管理システムおよび方法 |
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 |