Application Development and Automation 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: 
Read only

using BAPI for change quantity in returnorder

Former Member
0 Likes
1,010

Hi All,

I need urgent Information.

I am using BAPI_CUSTOMERRETURN_CREATE and BAPI_CUSTOMERRETURN_CHANGE to create and change quantity of return order. In both cases I am getting the result that quantity value is not getting updated.

are these BAPIs are correct to fulfil my requirement, if yes could you please clarify?

other wise, can I use BAPI_SALESORDER_CREATEFROMDAT2 and BAPI_SALESORDER_CHANGE?

and could you please some details about quantity change in Outbound delivery?

I am using BAPI_OUTB_DELIVERY_CHANGE for this

5 REPLIES 5
Read only

Former Member
0 Likes
912

HI Aravind,

can you show your code?

Regards,

Ravi

Read only

0 Likes
912

Hi Ravi, here the code, don't get confuse I am using same tables for both FMs

REPORT yra_qty_change NO STANDARD PAGE HEADING.

DATA:IT_HEADER LIKE BAPISDHD1 OCCURS 0 WITH HEADER LINE,

IT_HEADERX LIKE BAPISDHD1X OCCURS 0 WITH HEADER LINE,

IT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE,

IT_RETURN1 LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE,

IT_ITEM LIKE BAPISDITM OCCURS 0 WITH HEADER LINE,

IT_ITEMX LIKE BAPISDITMX OCCURS 0 WITH HEADER LINE,

IT_PARTNER LIKE BAPIPARNR OCCURS 0 WITH HEADER LINE,

IT_KEY LIKE BAPISDKEY OCCURS 0 WITH HEADER LINE.

DATA: V_VBELN LIKE BAPIVBELN-VBELN VALUE '0060000008',

C_W LIKE BAPITA-WAIT VALUE 'X'.

DATA: C_X VALUE 'X'.

IT_HEADER-DOC_TYPE = 'ZPMR'.

IT_HEADER-SALES_ORG = '1000'.

IT_HEADER-DISTR_CHAN = '30'.

IT_HEADER-DIVISION = '01'.

IT_HEADER-ORD_REASON = '102'.

IT_HEADER-CUST_GRP1 = 'F'.

APPEND IT_HEADER.

IT_HEADERX-UPDATEFLAG = 'U'.

IT_HEADERX-DOC_TYPE = C_X.

IT_HEADERX-SALES_ORG = C_X.

IT_HEADERX-DISTR_CHAN = C_X.

IT_HEADERX-DIVISION = C_X.

IT_HEADERX-ORD_REASON = C_X.

IT_HEADERX-CUST_GRP1 = C_X.

APPEND IT_HEADERX.

IT_ITEM-PURCH_NO_S = 'IWO NUMBER'.

IT_ITEM-RNDDLV_QTY = '15'.

IT_ITEM-ITM_NUMBER = '10'.

IT_ITEM-MATERIAL = 'PM-123456'.

IT_ITEM-PLANT = '6000'.

IT_ITEM-TARGET_QTY = '5'.

IT_ITEM-TARGET_QU = 'EA'.

APPEND IT_ITEM.

IT_ITEMX-PURCH_NO_S = C_X.

IT_ITEMX-UPDATEFLAG = 'U'.

IT_ITEMX-RNDDLV_QTY = C_X.

IT_ITEMX-ITM_NUMBER = '10'.

IT_ITEMX-MATERIAL = C_X.

IT_ITEMX-PLANT = C_X.

IT_ITEMX-TARGET_QTY = C_X.

IT_ITEMX-TARGET_QU = C_X.

APPEND IT_ITEMX.

IT_PARTNER-PARTN_ROLE = 'WE'.

IT_PARTNER-PARTN_NUMB = 'P768921R'.

APPEND IT_PARTNER.

IT_KEY-ITM_NUMBER = '10'.

IT_KEY-DOC_NUMBER = V_VBELN.

APPEND IT_KEY.

*CALL FUNCTION 'BAPI_CUSTOMERRETURN_CREATE'

  • EXPORTING

    • SALESDOCUMENTIN =

  • return_header_in = IT_HEADER

  • RETURN_HEADER_INX = IT_HEADERX

    • SENDER =

    • BINARY_RELATIONSHIPTYPE =

    • INT_NUMBER_ASSIGNMENT =

    • BEHAVE_WHEN_ERROR =

    • LOGIC_SWITCH =

    • TESTRUN =

    • CONVERT = ' '

  • IMPORTING

  • SALESDOCUMENT = V_VBELN

  • tables

  • RETURN = IT_RETURN

  • RETURN_ITEMS_IN = IT_ITEM[]

  • RETURN_ITEMS_INX = IT_ITEMX[]

  • return_partners = IT_PARTNER[]

    • RETURN_SCHEDULES_IN =

    • RETURN_SCHEDULES_INX =

    • RETURN_CONDITIONS_IN =

    • RETURN_CFGS_REF =

    • RETURN_CFGS_INST =

    • RETURN_CFGS_PART_OF =

    • RETURN_CFGS_VALUE =

    • RETURN_CFGS_BLOB =

    • RETURN_CFGS_VK =

    • RETURN_CFGS_REFINST =

    • RETURN_TEXT =

    • RETURN_KEYS =

    • EXTENSIONIN =

    • PARTNERADDRESSES =

*.

*IF SY-SUBRC EQ 0. .

*CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

  • EXPORTING

  • WAIT = C_W

  • IMPORTING

  • RETURN = IT_RETURN1.

  • .

*

*

*

*WRITE:/ 'MESSAGES FROM BAPI_TRANSACTION_COMMIT'.

*WRITE: V_VBELN.

*LOOP AT IT_RETURN1.

  • WRITE:/ IT_RETURN1-TYPE, SPACE, IT_RETURN1-MESSAGE.

*ENDLOOP.

*ENDIF.

CALL FUNCTION 'BAPI_CUSTOMERRETURN_CHANGE'

EXPORTING

salesdocument = V_VBELN

RETURN_HEADER_IN = IT_HEADER

return_header_inx = IT_HEADERX

  • SIMULATION =

  • INT_NUMBER_ASSIGNMENT =

  • BEHAVE_WHEN_ERROR =

  • LOGIC_SWITCH =

  • CONVERT = ' '

  • NO_STATUS_BUF_INIT = ' '

TABLES

RETURN = IT_RETURN

RETURN_ITEMS_IN = IT_ITEM

RETURN_ITEMS_INX = IT_ITEMX

PARTNERS = IT_PARTNER

  • PARTNERCHANGES =

  • PARTNERADDRESSES =

  • RETURN_CFGS_REF =

  • RETURN_CFGS_INST =

  • RETURN_CFGS_PART_OF =

  • RETURN_CFGS_VALUE =

  • RETURN_CFGS_BLOB =

  • RETURN_CFGS_VK =

  • RETURN_CFGS_REFINST =

  • SCHEDULE_LINES =

  • SCHEDULE_LINESX =

  • RETURN_TEXT =

RETURN_KEYS = IT_KEY[]

  • CONDITIONS_IN =

  • CONDITIONS_INX =

  • EXTENSIONIN =

.

IF SY-SUBRC EQ 0. .

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = C_W

IMPORTING

RETURN = IT_RETURN1.

.

WRITE:/ 'MESSAGES FROM BAPI_CUSTOMERRETURN_CHANGE'.

LOOP AT IT_RETURN.

WRITE:/ IT_RETURN-TYPE, SPACE, IT_RETURN-MESSAGE.

ENDLOOP.

WRITE:/ 'MESSAGES FROM BAPI_TRANSACTION_COMMIT'.

WRITE: V_VBELN.

LOOP AT IT_RETURN1.

WRITE:/ IT_RETURN1-TYPE, SPACE, IT_RETURN1-MESSAGE.

ENDLOOP.

Read only

0 Likes
912

Did you try with item number = 000010 inhstead of 10?

Read only

0 Likes
912

Yes Ravi,

I tried on that option also. It is giving success message for ITEM table with out updating any of the item field

Thanks

Read only

0 Likes
912

Hi ravi,

A message appeared like "Express document Updation terminated"