这是一个有异议的需求,具体需求如下:
在MIGO增强一个页签,通过页签里的数据+行项次的数据创建资产卡片,然后会写回MIGO行项次的指定栏位。
思路如下:
1.通过MIGO的增强MB_MIGO_BADI实现增加一个页签的功能
2.通过增强的方法LINE_MODIFY去创建资产卡片并回写数据
(有异议出在,创建资产卡片需要调用BAPI:BAPI_FIXEDASSET_CREATE1,并执行COMMIT,这样存着影响MIGO功能的潜在风险)
这边使用异步调用,希望能解决潜在危险!!!!!!!
具体操作如下:
1.创建表,结构,表类型

此结构用于创建资产卡片的函数调用
2.创建函数组(里面包括6个FUNCTION和一个屏幕):
ZCREATE_ASSET :因为要异步调用,所以需要勾上远程启用的模块
源代码如下:
ZMIGO_BADI_ITEM_CREATE_ASSET
源代码如下:
ZMIGO_BADI_ITEM_GET_DATA
源代码如下:
ZMIGO_BADI_ITEM_SET_DATA
ZMIGO_BADI_ITEM_SET_GOACTION
ZMIGO_BADI_ITEM_UPDATE_DATA
屏幕9001
包含文件:LZMIGOF01
包含文件:LZMIGOO01
包含文件:LZMIGOTOP
包含文件:LZMIGOUXX
3.针对BADI:MB_MIGO_BADI 创建新的实施 ZMB_MIGO_BADI
类/接口ZCL_IM_MB_MIGO_BADI做如下操作:
新增属性
如下几个方法 写入代码:
IF_EX_MB_MIGO_BADI~INIT
IF_EX_MB_MIGO_BADI~PBO_DETAIL
IF_EX_MB_MIGO_BADI~PAI_DETAIL
IF_EX_MB_MIGO_BADI~LINE_MODIFY
IF_EX_MB_MIGO_BADI~LINE_DELETE
IF_EX_MB_MIGO_BADI~RESET
IF_EX_MB_MIGO_BADI~POST_DOCUMENT
IF_EX_MB_MIGO_BADI~MODE_SET
最后效果图:
OK.......不知道有没有漏,将就用吧,不行在百度