Skip to Content
avatar image
Former Member



I need to use both BAPIs to update some Sales Orders' positions from a report.

I cannot use 'BAPI_SALESORDER_CHANGE' alone, because the field I need to change (Item category -> PSTYV) is blocked in 'VA02' transaction due to customizing. So, I will have to get all positions with 'BAPISDORDER_GETDETAILEDLIST', delete them with a first call to 'BAPI_SALESORDER_CHANGE' and create them again, with the small change, with a second call.

The problem is that the item structure of the table parameters in the two BAPIs is different (one is named 'BAPISDIT' and the other 'BAPISDITM') and, even the names of the fields (and their related data elements!!!) are different too. Therefore I cannot perform a "move-corresponding", nor use some RTTS dynamic progamming (relating them by data type).

I have found some 'MAP2E*' functions related to each one, but none for both (to act as an interface "bridge").

Has anyone faced the same problem?

Thanks a lot!,


Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

2 Answers

  • Best Answer
    Mar 30, 2016 at 08:49 AM

    You could build your own MAP2* FM with transaction BDBS.

    Or you could read yourself data from vbap, vbkd, etc to map a VBAPKOM structure (perform some where used to find how SAP does this), then call MAP2E_VBAPKOM_TO_BAPISDITM.



    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Apr 06, 2016 at 08:39 AM

    Hello Eloi,

    I've worked on similar requirement! The only was to fill each field data and append to BAPI_SALESORDER_CHANGE table parameters.


    K Prabhu

    Add comment
    10|10000 characters needed characters exceeded