根据信息包进行数据上载时可能出于业务需要或系统性能的考虑,需要对信息包中的特性选择条件进行手工限制。例如,在ERP系统中建立了一个全量抽取的数据源,但是我们可能希望每次抽取与上月、本月、下月相关的数据到BW系统中,一方面业务上有这样的需要,另一方面也是降低系统之间数据的传输,提高数据上载过程中的系统性能。
为了在信息包中使用例程来确定特性的选择条件,需要按照以下步骤进行例程的创建(本处以之前新建的采购申请的数据源为例)。
第1步:在信息包的“数据选择”标签页,找到需要进行选择的字段,这里选择“需求(请求)日期”作为选择条件,如图5-3所示。
图5-3 数据源的选择界面
第2步:在需要进行选择的字段后面的“类型”字段输入“6”,表明需要对该字段进行ABAP例程增强选择条件,如图5-4所示。
图5-4 在BADAT字段选择“类型”字段并输入“6”
输入“6”后,系统会弹出对话框提示输入例程的文本描述,这里输入“获取上月、本月、下月的数据”,如图5-5所示。
图5-5 例程文本描述输入(www.daowen.com)
第3步:单击“编辑器”按钮即可进入例程的编辑界面,系统自动产生的代码如下:
在代码段中可以看到该代码段的相关接口。其中,L_T_RANGE包含了所有的选择条件,因此需要做出限制或更改的就是这个内表;参数P_SUBRC必须被赋值为0,否则系统将会取消该信息包的运行,因为这会被系统认为有参数丢失。在表L_T_RANGE中,必须给表格字段FIELDNAME以及相关的RANGES(包含字段SIGN、OPTION、LOW和HIGH)赋值。
值得说明的是,对于BCT业务目录或ERP系统传输过来的字段中包含的特性,FIELD-NAME只需去掉前面的“0”或使用ERP字段名即可,如果是用户自定义的特性,则FIELDNAME必须在特性前面加上前缀“/BIC/”。例如,公司代码如果是业务目录的特性0COMP_CODE,则FIELDNAME应该赋值COMP_CODE或ERP中的字段名BUKRS;如果是自定义GSDM,则FIELDNAME应该赋值/BIC/GSDM。
信息包中特性选择的ABAP例程增强实施,代码段如下。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。