Skip to Content
0
Former Member
May 19, 2008 at 09:26 AM

BAPI_CONTRACT_CHANGE fails to update validity in A016

1252 Views

Dear All,

i implemented the source as follows. However, though my return parameters declares the bapi steps to be successful, there is no update in a016-datbi, as it is intended to be.

Can you tell me, what i do wrong?

>>>>

report z_b_upm002.

tables: a016.

data: wa_a016 type a016,

t_016 type standard table of a016,

item_cond_validity like bapimeoutvalidity occurs 0 with header line,

item_cond_validityx like bapimeoutvalidityx occurs 0 with header line,

h_return like bapiret2 occurs 0 with header line.

selection-screen begin of block sel with frame title text-sel.

select-options: s_evrtn for a016-evrtn default '4600001066' obligatory,

s_evrtp for a016-evrtp.

parameters: p_bis type datum default sy-datum.

parameters: p_commit as checkbox default 'X'.

selection-screen end of block sel.

start-of-selection.

select * from a016 into table t_016 where evrtn in s_evrtn and evrtp in s_evrtp.

loop at t_016 into wa_a016.

write: / wa_a016-evrtn, at 20 wa_a016-evrtp, at 55 wa_a016-datbi, '=>', p_bis, ' -> '.

item_cond_validity-item_no = wa_a016-evrtp.

item_cond_validity-serial_id = wa_a016-knumh.

item_cond_validity-valid_to = p_bis.

item_cond_validity-valid_from = wa_a016-DATAB.

append item_cond_validity.

move-corresponding item_cond_validity to item_cond_validityx.

item_cond_validityx-valid_to = 'X'.

item_cond_validityx-valid_from = 'X'.

append item_cond_validityx.

call function 'BAPI_CONTRACT_CHANGE'

exporting

purchasingdocument = wa_a016-evrtn

  • HEADER =

  • HEADERX =

  • VENDOR_ADDRESS =

  • TESTRUN =

  • TECHNICAL_DATA =

  • IMPORTING

  • EXP_HEADER =

tables

  • ITEM =

  • ITEMX =

  • ACCOUNT =

  • ACCOUNTPROFITSEGMENT =

  • ACCOUNTX =

  • DELIVERY_ADDRESS =

item_cond_validity = item_cond_validity

item_cond_validityx = item_cond_validityx

  • ITEM_CONDITIONX =

  • ITEM_COND_SCALE_VALUE =

  • ITEM_COND_SCALE_QUAN =

  • ITEM_TEXT =

  • HEADER_TEXT =

  • HEAD_COND_VALIDITY =

  • HEAD_COND_VALIDITYX =

  • HEAD_CONDITION =

  • HEAD_CONDITIONX =

  • HEAD_COND_SCALE_VAL =

  • HEAD_COND_SCALE_QUAN =

  • PARTNER =

  • PARTNERX =

  • RELEASE_DOCU =

  • EXTENSIONIN =

  • EXTENSIONOUT =

return = h_return

.

write: /.

loop at h_return.

case: h_return-type.

when 'S'. write: 'Success'.

when 'E'. write: 'Error'.

when 'W'. write: 'Warning'.

when 'I'. write: 'Info'.

when 'A'. write: 'Abort'.

endcase.

write: h_return-message.

endloop.

clear: item_cond_validity, item_cond_validityx, h_return.

refresh: item_cond_validity, item_cond_validityx, h_return.

if p_commit = 'X'.

call function 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = 'X'

importing

return = h_return.

.

skip.

if sy-subrc = 0. write 'Commit OK'. else. write: 'Fehlerim Commit'. endif.

loop at h_return.

case: h_return-type.

when 'S'. write: 'Success'.

when 'E'. write: 'Error'.

when 'W'. write: 'Warning'.

when 'I'. write: 'Info'.

when 'A'. write: 'Abort'.

endcase.

write: h_return-message.

endloop.

clear: h_return. refresh: h_return.

endif.

skip 2.

endloop.

Regards Ralf