如果多个线程除了同时调用BAPI_GOODSMVT_CREATE,还需要访问同一滚动区(如表单中的话),则必须在这两个方面协调。解决方法包括以下步骤:
DATA: ls_return TYPE bapiret2. DATA: lv_rollback TYPE char1 VALUE 'X'. CALL FUNCTION 'BAPI_GOODSMVT_CREATE' EXPORTING rollback = lv_rollback IMPORTING return = ls_return.
DATA: lref_context TYPE REF TO cl_bsp_wd_context. lref_context = cl_bsp_wd_context=>get_instance( ). lref_context->create_private( 'MY_ROLLAREA' ).
通过以上这些步骤,可以解决BAPI_GOODSMVT_CREATE的序列化调用及滚动区问题。