Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

BAPI_PO_CHANGE

Former Member
0 Kudos

Hi Experts,

I have existing 500 POs .I want to change only Delivery date of all POs Please Help me the best solution like BAPI_PO_CHANGE or any other solution to Change Delivery date for existing POs.

If I will use BAPI..then plz let me know input parameters in brief.

Thanks in advance,

Binod

1 REPLY 1

Former Member
0 Kudos

Hi,

Check this sample code for updating the delivery date of the PO..

PARAMETERS: P_EBELN LIKE EKKO-EBELN.

DATA: T_POITEM LIKE BAPIMEPOITEM OCCURS 0 WITH HEADER LINE.

DATA: T_POITEMX LIKE BAPIMEPOITEMX OCCURS 0 WITH HEADER LINE.

DATA: T_SCHEDULE LIKE BAPIMEPOSCHEDULE OCCURS 0 WITH HEADER LINE.

DATA: T_SCHEDULEX LIKE BAPIMEPOSCHEDULX OCCURS 0 WITH HEADER LINE.

DATA: V_DATE TYPE SYDATUM.

DATA: T_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.

T_SCHEDULE-PO_ITEM = '00010'.

T_SCHEDULE-SCHED_LINE = '0001'.

T_SCHEDULE-DEL_DATCAT_EXT = 'D'.

V_DATE = SY-DATUM + 10.

WRITE: V_DATE TO T_SCHEDULE-DELIVERY_DATE.

APPEND T_SCHEDULE.

T_SCHEDULEX-PO_ITEM = '00010'.

T_SCHEDULEX-SCHED_LINE = '0001'.

T_SChEDULEX-PO_ITEMX = 'X'.

T_SCHEDULEX-DEL_DATCAT_EXT = 'X'.

T_SCHEDULEX-DELIVERY_DATE = 'X'.

T_SCHEDULEX-SCHED_LINEX = 'X'.

APPEND T_SCHEDULEX.

T_POITEM-PO_ITEM = '00010'.

APPEND T_POITEM.

T_POITEMX-PO_ITEM = '00010'.

T_POITEMX-PO_ITEMX = 'X'.

APPEND T_POITEMX.

CALL FUNCTION 'BAPI_PO_CHANGE'

EXPORTING

purchaseorder = P_EBELN

TABLES

RETURN = T_RETURN

POITEM = T_POITEM

POITEMX = T_POITEMX

POSCHEDULE = T_SCHEDULE

POSCHEDULEX = T_SCHEDULEX

.

COMMIT WORK.

Thanks,

Naren