I tried to change delivery priority of PO but it didn't work. Here is the code. Is there anything wrong with this?
report z_bapi_po_change. data: * shipping lt_bapiitemship type standard table of bapiitemship, ls_bapiitemship type bapiitemship, lt_bapiitemshipx type standard table of bapiitemshipx, ls_bapiitemshipx type bapiitemshipx, * item lt_bapimepoitem type standard table of bapimepoitem, ls_bapimepoitem type bapimepoitem, lt_bapimepoitemx type standard table of bapimepoitemx, ls_bapimepoitemx type bapimepoitemx, * return lt_return type bapiret2_t, ls_return like line of lt_return, * alv lo_alv type ref to cl_salv_table. parameters: pa_ebeln type ebeln, pa_ebelp type ebelp, pa_lprio type lprio. start-of-selection. ls_bapimepoitem-po_item = pa_ebelp. append ls_bapimepoitem to lt_bapimepoitem. ls_bapimepoitemx-po_itemx = 'X'. append ls_bapimepoitemx to lt_bapimepoitemx. ls_bapiitemship-po_item = pa_ebelp. ls_bapiitemship-dlv_prio = pa_lprio. append ls_bapiitemship to lt_bapiitemship. ls_bapiitemshipx-po_item = pa_ebelp. ls_bapiitemshipx-po_itemx = 'X'. ls_bapiitemshipx-dlv_prio = 'X'. append ls_bapiitemshipx to lt_bapiitemshipx. call function 'BAPI_PO_CHANGE' exporting purchaseorder = pa_ebeln tables return = lt_return poshipping = lt_bapiitemship poshippingx = lt_bapiitemshipx. read table lt_return into ls_return with key type = 'E'. if sy-subrc NE 0. call function 'BAPI_TRANSACTION_COMMIT' exporting wait = 'X'. endif. end-of-selection. cl_salv_table=>factory( importing r_salv_table = lo_alv changing t_table = lt_return ). lo_alv->display( ).