2020-09-28 06:51发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
HI团队,我的要求是将确认控制键更新为空白(EKPO-BSTAE)。
要更新此值,我们在自定义程序中使用了批量事务MEMASSSA,因为无法更新空值ME32l。
我已经完成了MEMASSSA T代码的BDC记录,但是当我处理它时,空值没有得到更新。 我可以手动使用MEMASSSA来做到这一点。
我们可以为Memasssa t代码进行BDC录制吗?
如果由于收到收据而无法在线更新控制键,则也无法使用批量更改交易和BDC进行更新。
感谢您的答复,
我已经在SHDB中记录了MEMASSSA t代码的记录,当我处理记录数据时会正确更新,并且当我将相同的记录转换为程序或创建会话后会成功处理,但是值没有更新。
要了解此问题,我已经调试了MEMASSSA t代码背后的标准代码。
仅在SHDB中处理记录:该FM负责功能模块I_MASS_SAVE_DATA,以成功更新表值。 FM内部包含COMMIT WORK语句。
转换为程序后处理相同的记录:当COMMIT WORK触发时,= SAVE编译器到达I_MASS_SAVE_DATA并在FM内部后,BDC SESSION将完成,并且值也不会更新,因为编译器在COMMIT WORK之后不会处理FM 声明。
在COMMIT WORK语句之后,是否有任何解决方案来处理BDC SESSION并像RECORDING一样更新值。
谢谢。
不知道MEMASSSA,但是对于任何"不起作用"的BDC,经典的故障排除步骤是逐个屏幕运行它,并查看在哪里 问题是,并解决它(或者向论坛提出更具体的问题/在询问之前先搜索论坛)。
谢谢您的答复,
我同意您的要求,但是根据我的要求,确认控制密钥需要通过ME32L更新,但不能为具有GR值的SA更新EKPO-BSTAE,因此我的团队决定使用MEMASSSA t代码来更新EKPO- 程序中的BSTAE值。 我在SHDB中录制了屏幕录像,当我处理时,它会更新确认控制键,但是在将录像转换为程序并执行该值后,不会更新。
在'BDC_OKCODE''= SAVE'执行批处理之后,将成功完成批处理,但不会更新值。
请找到示例录音。
使用'SAPMMSDL''0200'执行bdc_dynpro。
使用'BDC_OKCODE''= TAB2'执行bdc_field。
使用'BDC_CURSOR''MASSTABS-TABTXT(03)'执行bdc_field。
使用'MASSTABS-MARK(03)''X'执行bdc_field。
使用" BDC_CURSOR"," MASSSCREEN-VARNAME"执行bdc_field。
使用'BDC_OKCODE''= FIND'执行bdc_field。
使用'SAPLSPO4''0300'执行bdc_dynpro。
使用'BDC_CURSOR''SVALD-VALUE(01)'执行bdc_field。
使用'BDC_OKCODE''= FURT'执行bdc_field。
使用'SVALD-VALUE(01)''BSTAE'执行bdc_field。
使用'BDC_OKCODE''= NEXT'执行bdc_field。
使用'BDC_CURSOR''MASSFVIEW-FIELDTEXT(01)'执行bdc_field。
使用'MASSFVIEW-CHECKBOX(01)''X'执行bdc_field。
使用'SAPLMASS_SEL_DIALOG''0100'执行bdc_dynpro。
使用'BDC_OKCODE''= CRET'执行bdc_field。
使用'BDC_CURSOR''MASSFREESEL-LOW(01)'执行bdc_field。
使用'MASSFREESEL-LOW(01)''5500000100'执行bdc_field。
使用'SAPLMASSINTERFACE''0200'执行bdc_dynpro。
使用'BDC_OKCODE''= FDAE'执行bdc_field。
使用'BDC_CURSOR''NR_ITEMS'执行bdc_field。
使用'BDC_OKCODE''= SAVE'执行bdc_field。
我正在将PO编号循环传递到此记录,以使用BDC会话方法为所有行itesms审核键值。
您可以为此租赁服务吗?
为什么需要记录进行大规模维护的事务并且不能直接使用,甚至可以批量运行。
>
这种更改应该是一次性的活动,您应该更正主数据,以免获得不需要的确认控制键
请不要 添加进一步的调查作为答案,但也可以作为对您问题的评论。
最多设置5个标签!
如果由于收到收据而无法在线更新控制键,则也无法使用批量更改交易和BDC进行更新。
感谢您的答复,
我已经在SHDB中记录了MEMASSSA t代码的记录,当我处理记录数据时会正确更新,并且当我将相同的记录转换为程序或创建会话后会成功处理,但是值没有更新。
要了解此问题,我已经调试了MEMASSSA t代码背后的标准代码。
仅在SHDB中处理记录:该FM负责功能模块I_MASS_SAVE_DATA,以成功更新表值。 FM内部包含COMMIT WORK语句。
转换为程序后处理相同的记录:当COMMIT WORK触发时,= SAVE编译器到达I_MASS_SAVE_DATA并在FM内部后,BDC SESSION将完成,并且值也不会更新,因为编译器在COMMIT WORK之后不会处理FM 声明。
在COMMIT WORK语句之后,是否有任何解决方案来处理BDC SESSION并像RECORDING一样更新值。
谢谢。
不知道MEMASSSA,但是对于任何"不起作用"的BDC,经典的故障排除步骤是逐个屏幕运行它,并查看在哪里 问题是,并解决它(或者向论坛提出更具体的问题/在询问之前先搜索论坛)。
谢谢您的答复,
我同意您的要求,但是根据我的要求,确认控制密钥需要通过ME32L更新,但不能为具有GR值的SA更新EKPO-BSTAE,因此我的团队决定使用MEMASSSA t代码来更新EKPO- 程序中的BSTAE值。 我在SHDB中录制了屏幕录像,当我处理时,它会更新确认控制键,但是在将录像转换为程序并执行该值后,不会更新。
在'BDC_OKCODE''= SAVE'执行批处理之后,将成功完成批处理,但不会更新值。
请找到示例录音。
使用'SAPMMSDL''0200'执行bdc_dynpro。
使用'BDC_OKCODE''= TAB2'执行bdc_field。
使用'BDC_CURSOR''MASSTABS-TABTXT(03)'执行bdc_field。
使用'MASSTABS-MARK(03)''X'执行bdc_field。
使用'SAPMMSDL''0200'执行bdc_dynpro。
使用" BDC_CURSOR"," MASSSCREEN-VARNAME"执行bdc_field。
使用'BDC_OKCODE''= FIND'执行bdc_field。
使用'SAPLSPO4''0300'执行bdc_dynpro。
使用'BDC_CURSOR''SVALD-VALUE(01)'执行bdc_field。
使用'BDC_OKCODE''= FURT'执行bdc_field。
使用'SVALD-VALUE(01)''BSTAE'执行bdc_field。
使用'SAPMMSDL''0200'执行bdc_dynpro。
使用'BDC_OKCODE''= NEXT'执行bdc_field。
使用'BDC_CURSOR''MASSFVIEW-FIELDTEXT(01)'执行bdc_field。
使用'MASSFVIEW-CHECKBOX(01)''X'执行bdc_field。
使用'SAPLMASS_SEL_DIALOG''0100'执行bdc_dynpro。
使用'BDC_OKCODE''= CRET'执行bdc_field。
使用'BDC_CURSOR''MASSFREESEL-LOW(01)'执行bdc_field。
使用'MASSFREESEL-LOW(01)''5500000100'执行bdc_field。
使用'SAPLMASSINTERFACE''0200'执行bdc_dynpro。
使用'BDC_OKCODE''= FDAE'执行bdc_field。
使用'BDC_CURSOR''NR_ITEMS'执行bdc_field。
使用'SAPLMASSINTERFACE''0200'执行bdc_dynpro。
使用'BDC_OKCODE''= SAVE'执行bdc_field。
使用'BDC_CURSOR''NR_ITEMS'执行bdc_field。
我正在将PO编号循环传递到此记录,以使用BDC会话方法为所有行itesms审核键值。
您可以为此租赁服务吗?
为什么需要记录进行大规模维护的事务并且不能直接使用,甚至可以批量运行。
>
这种更改应该是一次性的活动,您应该更正主数据,以免获得不需要的确认控制键
请不要 添加进一步的调查作为答案,但也可以作为对您问题的评论。
一周热门 更多>