以下是数据源定义的详细步骤和相关代码。
第1步:创建EBAN的数据库视图ZEBAN,如图4-48所示。将EBAN的所有字段加入到视图ZEBAN中,如图4-49所示。
图4-48 新建数据库视图ZEBAN
第2步:使用RSO2进行数据源的创建,为了保持数据源命名的一致性,本处使用ZDS_DEMO_EBAN作为数据源的名称,如图4-50所示。在数据源的定制中,将应用程序组件层次节点指定为MM,如图4-51所示。保存后,选择数据源的选择字段,这里选择“采购申请编号”“采购申请的项目编号”和“更改日期”作为数据源的选择字段,如图4-52所示。
图4-49 数据库视图ZEBAN的字段
图4-50 新建数据源ZDS_DEMO_EBAN
图4-51 指定层次节点
图4-52 新建数据源的选择字段
第3步:在系统中新建程序Z_CHANGE_DELTA_PROCESS,本程序的目的是要修改ROOSOURCE数据库表中的DELTA类型,原先为空,此处将增量类型设置为“AIM”,如图4-53所示。
图4-53 新建程序Z_CHANGE_DELTA_PROCESS
程序2_CHANGE_DELTA_PROCESS的代码如下:
运行程序,输入数据源ZDS_DEMO_EBAN,输入增量处理方式AIM,如图4-54所示。
图4-54 输入数据源和增量处理方式
系统提示,数据源的增量方式已被成功修改,如图4-55所示。
图4-55 程序运行成功提示
第4步:使用事务码FINF找到与采购申请对应的BTE事件的样本函数。FINF输入参数界面如图4-56所示,找到采购申请BTE 01000710事件如图4-57所示。
图4-56 FINF输入参数界面
图4-57 找到采购申请BTE 01000710事件
单击“样本函数模块”按钮,可以看到样本函数的定义,如图4-58所示。
图4-58 采购申请BTE对应的函数
单击“Display(显示)”按钮,可以查看样本函数的相关接口情况。可以看到在BTE中有两种类型的内表接口:X表和Y表,其中Y表包含了修改之前的数据记录,X表包含了修改之后的数据记录。采购申请BTE对应的函数代码如图4-59所示。
图4-59 采购申请BTE对应的函数代码
第5步:使用T-CODE FIBF新建一个用户产品,并将产品和函数进行关联,选择“产品”→“一个客户的”,如图4-60所示。
图4-60 设置一个客户的产品
在产品中新建Z_DELTA,并勾选是否激活的复选框,说明要正式启用该产品,如图4-61所示。
图4-61 新增Z_DELTA产品
返回FIBF界面,选择“P/S函数模块”→“一个客户的”命令,如图4-62所示。
图4-62 设置一个客户的P/S函数模块
在出现的界面中,新建条目,输入事件“01000710”、产品“Z_DELTA”以及即将要建立的功能函数ZDS_PR_DELTA_CAPTURE_01000710,这样就将事件、产品和函数链接起来了,如图4-63所示。
图4-63 指定BTE事件对应的产品和函数模块
图4-64 新建函数组ZDS_PR
第6步:新建函数组ZDS_PR和获取增量数据以及更新增量队列的函数。新建函数组ZDS_PR,如图4-64所示。新建函数ZDS_PR_WRITE_TO_QUEUE,如图4-65所示。新建函数输入接口设置如图4-66所示,输出接口设置如图4-67所示,变更设置如图4-68所示,数据表设置如图4-69所示,例外设置如图4-70所示,函数的接口如图4-71所示。
图4-65 新建函数ZDS_PR_WRITE_TO_QUEUE
图4-66 新建函数输入接口设置
(www.daowen.com)
图4-67 新建函数输出接口设置
图4-68 新建函数变更设置
图4-69 新建函数数据表设置
图4-70 新建函数例外设置
图4-71 函数的接口
函数ZDS_PR_WRITE_TO_QUEUE的相关代码段如下:
第7步:新建函数ZDS_PR_DELTA_CAPTURE_01000710,如图4-72所示。新建函数输入接口设置如图4-73所示,输出接口设置如图4-74所示,变更接口设置如图4-75所示,数据表设置如图4-76所示,例外设置如图4-77所示,函数的接口如图4-78所示。
图4-72 新建函数ZDS_PR_DELTA_CAPTURE_01000710
图4-73 新建函数输入接口设置
图4-74 新建函数输出接口设置
图4-75 新建函数变更接口设置
图4-76 新建函数数据表设置
图4-77 新建函数例外设置
图4-78 函数的接口
函数ZDS_PR_DELTA_CAPTURE_01000710的代码段如下:
第8步:通过以上对于数据源ZDS_DEMO_EBAN的设定后,进入BW系统,在数据源处理界面的应用组件MM上单击鼠标右键,在弹出的快捷菜单中选择“复制数据源”选项,可以将数据源同步到BW系统。同步到数据源时,系统弹出对话框,让用户选择数据源的复制类型,选中默认值“作为数据源(RSDS)”单选按钮,如图4-79所示。
图4-79 BW复制数据源选项
同步完毕后就会在MM组件下面出现新的数据源对象ZDS_DEMO_EBAN,如图4-80所示。
图4-80 BW数据源列表中的新的数据源对象
第9步:此时的数据源出于未激活状态,系统尚未分配对应的PSA用以存储数据,所以需要进入数据源修改界面,激活数据源,如图4-81所示。
图4-81 激活数据源
第10步:激活完毕后,在数据源上单击鼠标右键,在弹出的快捷菜单中选择“创建信息包”选项以加载数据。此时先创建一个初始化信息包,由于是测试,因此可以选中“不含数据传输的初始化模拟”单选按钮,如图4-82所示。
图4-82 新建信息包维护界面
信息包执行完毕后,回到ERP系统,通过事务码RSA7可以查看数据源的增量队列,其中可以看到ZDS_DEMO_EBAN的增量为0,如图4-83所示。
图4-83 增量队列查看界面
第11步:此时通过事务码ME52N进入采购申请修改界面,修改采购申请数量,将20修改为30,修改前和修改后的采购申请界面如图4-84和图4-85所示。
图4-85 采购申请修改后界面
再次通过事务码RSA7进入增量队列查看界面,此时可以看到在数据源ZDS_DEMO_EBAN后多了一条数据,如图4-86所示。通过查看功能查看到的增量如图4-87所示。
图4-86 增量队列查看界面
图4-87 增量队列数据查看界面
从图4-87中可以看到,由于将数据源的增量类型改为了“AIM”,因此每次发生变化后的数据情况被传递到了增量队列中,因此本数据源需要DSO的支持,而不能直接更新到信息块。
通过采用系统标准BTE事件驱动,将变更或新增的采购申请数据通过函数写入到增量队列,进而传输到BW系统中,从而避免了传统的对EBAN表的全量读取和传输的方法,大大提高了数据访问性能和加载效率。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。