Code: Alles auswählen.
lv_ponumb = <fs_po_update>-ebeln.
CALL FUNCTION 'BAPI_PO_GETDETAIL1'
EXPORTING
purchaseorder = lv_ponumb
TABLES
RETURN = lt_return_gd
POITEM = lt_poitem
POSCHEDULE = lt_schedule.
* lt_poitem-po_item = <fs_po_update>-ebeln.
lt_poitem-material = <fs_po_update>-matnr.
lt_poitem-quantity = <fs_po_update>-menge.
ls_poitemx-po_item = <fs_po_update>-ebeln.
ls_poitemx-material = 'X'.
ls_poitemx-quantity = 'X'.
APPEND ls_poitemx TO lt_poitemx.
* lt_schedule-po_item = <fs_po_update>-ebeln.
lt_schedule-delivery_date = <fs_po_update>-eindt.
ls_schedulex-po_item = <fs_po_update>-ebeln.
ls_schedulex-delivery_date = 'X'.
APPEND ls_schedulex TO lt_schedulex.
CALL FUNCTION 'BAPI_PO_CHANGE'
EXPORTING
purchaseorder = lv_ponumb
testrun = p_test
TABLES
return = lt_return_ch
poitem = lt_poitem
poitemx = lt_poitemx
poschedule = lt_schedule
poschedulex = lt_schedulex.
zu ersterem : Fehlermeldung ME 664 „Änderung konnte nicht durchgeführt werden“black_adept hat geschrieben: ↑06.01.2020 15:25Der BAPI hat einen RETURN-Parameter der die die Fehler ausgibt
Hast du auch BAPI_TRANSACTION_COMMIT ausgeführt?
Folgende Benutzer bedankten sich beim Autor wreichelt für den Beitrag:
Mockingbird
Code: Alles auswählen.
* Headerdaten
lv_bapimepoheader = VALUE #( po_number = p_po
pmnttrms = 'ZB03'
).
* Flags zum Ändern der Headerdaten
lv_bapimepoheaderx = VALUE #( po_number = abap_true
pmnttrms = abap_true
).
Folgende Benutzer bedankten sich beim Autor wreichelt für den Beitrag:
Mockingbird
Folgende Benutzer bedankten sich beim Autor schick für den Beitrag:
Mockingbird