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

BAPI EXTENSIONIN

former_member397166
Participant
0 Likes
1,368

Hi ALL,

     I want to change a contract by BAPI_CUSTOMERCONTRACT_CHANGE.

     But it is not work when changing a custom field(J_4KRCAT).And there is no error.

     I had append the field J_4KRCAT to VAPE_VBAP and VBPE_VBAPX.

    

     how to solve ?

     pass parameters code:

    

    DATA: vbeln TYPE vbeln.
  DATA: it_return LIKE TABLE OF bapiret2 WITH HEADER LINE.
  DATA: wa_contract_header_in TYPE  bapisdh1.
  DATA: wa_contract_header_inx  TYPE  bapisdh1x.
  DATA: it_contract_partners  LIKE  TABLE OF bapiparnr WITH HEADER LINE.
  DATA: wa_logic_switch LIKE  bapisdls.
  DATA: it_contract_item_in LIKE  TABLE OF bapisditm WITH HEADER LINE.
  DATA: it_contract_item_inx  LIKE  TABLE OF bapisditmx WITH HEADER LINE.

  data: BAPE_VBAP like  bape_vbap.
  data: BAPE_VBAPx like bape_vbapx.
  DATA: BAPIPAREX  LIKE  TABLE OF BAPIPAREX WITH HEADER LINE.

    

    wa_logic_switch-cond_handl = 'X'.
  vbeln = '0000001076'.

  wa_contract_header_in-ct_valid_f = sy-datum.
  wa_contract_header_in-ct_valid_t = '20170101'.
  wa_contract_header_inx-ct_valid_f = 'X'.
  wa_contract_header_inx-ct_valid_t = 'X'.
  wa_contract_header_inx-updateflag = 'U'.

  it_contract_item_in-itm_number = '000010'.
  it_contract_item_in-material = '000000000010000874'.
  it_contract_item_in-prc_group2 = 'T1'.
  it_contract_item_in-purch_no_c = 'item 1'.
  it_contract_item_in-SALES_UNIT = 'PAA'.
*  it_contract_item_in-SHIP_POINT = 'A'.
  APPEND it_contract_item_in.

  it_contract_item_inx-itm_number = 'X'.
  it_contract_item_inx-material = 'X'.
  it_contract_item_inx-prc_group2 = 'X'.
  it_contract_item_inx-purch_no_c = 'X'.
  it_contract_item_inx-SALES_UNIT = 'X'.
*  it_contract_item_inX-SHIP_POINT = 'X'.
  IT_CONTRACT_ITEM_INX-UPDATEFLAG = 'U'.
  APPEND it_contract_item_inx.

   *  EXTENSIONIN
  BAPE_VBAP-VBELN   = vbeln.
  BAPE_VBAP-POSNR   = '000010'.
  BAPE_VBAP-J_4KRCAT   = 'BURTON'.
  BAPIPAREX-STRUCTURE = 'VBPE_VBAP'.
  BAPIPAREX+30 = BAPE_VBAP.
  APPEND BAPIPAREX.

  BAPE_VBAPX-VBELN   = vbeln.
  BAPE_VBAPX-POSNR   = '000010'.
  BAPE_VBAPX-J_4KRCAT   = 'X'.
  BAPIPAREX-STRUCTURE = 'VBPE_VBAPX'.
  BAPIPAREX+30 = BAPE_VBAPX.
  APPEND BAPIPAREX.

    CALL FUNCTION 'BAPI_CUSTOMERCONTRACT_CHANGE'
    EXPORTING
      salesdocument         = vbeln
      contract_header_in    = wa_contract_header_in
      contract_header_inx   = wa_contract_header_inx
*     SIMULATION            =
*     BEHAVE_WHEN_ERROR     = ' '
*     INT_NUMBER_ASSIGNMENT = ' '
      logic_switch          = wa_logic_switch
*     NO_STATUS_BUF_INIT    = ' '
    TABLES
      return                = it_return
     CONTRACT_ITEM_IN      = it_contract_item_in
     CONTRACT_ITEM_INX     = it_contract_item_inx
*     PARTNERS              =
*     PARTNERCHANGES        =
*     PARTNERADDRESSES      =
*     CONDITIONS_IN         =
*     CONDITIONS_INX        =
*     CONTRACT_CFGS_REF     =
*     CONTRACT_CFGS_INST    =
*     CONTRACT_CFGS_PART_OF =
*     CONTRACT_CFGS_VALUE   =
*     CONTRACT_CFGS_BLOB    =
*     CONTRACT_CFGS_VK      =
*     CONTRACT_CFGS_REFINST =
*     CONTRACT_TEXT         =
*     CONTRACT_DATA_IN      =
*     CONTRACT_DATA_INX     =
*     CONTRACT_KEYS         =
     EXTENSIONIN           = BAPIPAREX
    .

  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

1 ACCEPTED SOLUTION
Read only

JarosBaw
Active Participant
0 Likes
1,120

Hi,

Why do You fill BAPIPAREX-STRUCTURE = 'VBPE_VBAP' ?

try BAPIPAREX-STRUCTURE = 'BAPE_VBAP'.

Regards,

Jarek

4 REPLIES 4
Read only

JarosBaw
Active Participant
0 Likes
1,121

Hi,

Why do You fill BAPIPAREX-STRUCTURE = 'VBPE_VBAP' ?

try BAPIPAREX-STRUCTURE = 'BAPE_VBAP'.

Regards,

Jarek

Read only

0 Likes
1,120

Hi ,

    

     Thank you !

     But it still not works.

Kical

Read only

JarosBaw
Active Participant
0 Likes
1,120

Should be:

BAPIPAREX-STRUCTURE = 'BAPE_VBAP' and BAPIPAREX-STRUCTURE = 'BAPE_VBAPX' for 'X' table.

You can go to function SD_SALESDOCUMENT_CHANGE, find form  ms_move_extensionin and put breakpoint in this form in the begining of LOOP. Try to fund out why Your structure isn't read correctly.


Read only

0 Likes
1,120


Hi Jaroslaw,

     Solved.

     Thanks you very much.

Freddy