2009 Mar 23 7:42 AM
Hi experts,
I want to use 'BAPI_CUSTOMERCONTRACT_CHANGE' to set the cancellation reason on a contract.when I execute below coding, the return message tell me that is successfully.But according to VA43,I found the cancellation reason hasn't changed.Please give me some advice.Many thanks!Below is my coding.
data: g_HEADER_IN type BAPISDH1,
g_CONTRACT_HEADER_INX type BAPISDH1X,
g_CONTRACT_DATA like table of BAPICTR,
wa_CONTRACT_DATA like BAPICTR,
g_CONTRACT_DATA_INX like table of BAPICTRX,
wa_CONTRACT_DATA_INX like BAPICTRX,
g_return like table of BAPIRET2,
wa_return like BAPIRET2.
data: contractitemin LIKE bapisditm OCCURS 0 WITH HEADER LINE,
contractiteminx LIKE bapisditmx OCCURS 0 WITH HEADER LINE.
g_CONTRACT_HEADER_INX-UPDATEFLAG = 'U'.
contractitemin-itm_number = '000010'.
APPEND contractitemin.
contractiteminx-itm_number = '000010'.
contractiteminx-updateflag ='U'.
APPEND contractiteminx.
wa_CONTRACT_DATA-ITM_NUMBER = '000010'.
wa_CONTRACT_DATA-CANCREASON = 'B'.
wa_CONTRACT_DATA-CANC_R_DAT = sy-datum.
wa_CONTRACT_DATA-R_CANC_DAT = sy-datum.
append wa_CONTRACT_DATA to g_CONTRACT_DATA.
wa_CONTRACT_DATA_INX-ITM_NUMBER = '000010'.
wa_CONTRACT_DATA_INX-UPDATEFLAG = 'U'.
wa_CONTRACT_DATA_INX-CANCREASON = 'X'.
wa_CONTRACT_DATA_INX-CANC_R_DAT = 'X'.
wa_CONTRACT_DATA_INX-R_CANC_DAT = 'X'.
append wa_CONTRACT_DATA_INX to g_CONTRACT_DATA.
data: g_salesnumber like BAPIVBELN-VBELN.
g_salesnumber = '0030029885'.
CALL FUNCTION 'BAPI_CUSTOMERCONTRACT_CHANGE'
EXPORTING
SALESDOCUMENT = g_salesnumber
CONTRACT_HEADER_IN = g_HEADER_IN
CONTRACT_HEADER_INX = g_CONTRACT_HEADER_INX
TABLES
RETURN = g_return
CONTRACT_ITEM_IN = contractitemin
CONTRACT_ITEM_INX = contractiteminx
CONTRACT_DATA_IN = g_CONTRACT_DATA
CONTRACT_DATA_INX = g_CONTRACT_DATA_INX.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
loop at g_return into wa_return.
write: wa_return-MESSAGE,/.
endloop.
Hi experts,
I want to use 'BAPI_CUSTOMERCONTRACT_CHANGE' to set the cancellation reason on a contract.when I execute below coding, the return message tell me that is successfully.But according to VA43,I found the cancellation reason hasn't changed.Please give me some advice.Many thanks!Below is my coding.
data: g_HEADER_IN type BAPISDH1,
g_CONTRACT_HEADER_INX type BAPISDH1X,
g_CONTRACT_DATA like table of BAPICTR,
wa_CONTRACT_DATA like BAPICTR,
g_CONTRACT_DATA_INX like table of BAPICTRX,
wa_CONTRACT_DATA_INX like BAPICTRX,
g_return like table of BAPIRET2,
wa_return like BAPIRET2.
data: contractitemin LIKE bapisditm OCCURS 0 WITH HEADER LINE,
contractiteminx LIKE bapisditmx OCCURS 0 WITH HEADER LINE.
g_CONTRACT_HEADER_INX-UPDATEFLAG = 'U'.
contractitemin-itm_number = '000010'.
APPEND contractitemin.
contractiteminx-itm_number = '000010'.
contractiteminx-updateflag ='U'.
APPEND contractiteminx.
wa_CONTRACT_DATA-ITM_NUMBER = '000010'.
wa_CONTRACT_DATA-CANCREASON = 'B'.
wa_CONTRACT_DATA-CANC_R_DAT = sy-datum.
wa_CONTRACT_DATA-R_CANC_DAT = sy-datum.
append wa_CONTRACT_DATA to g_CONTRACT_DATA.
wa_CONTRACT_DATA_INX-ITM_NUMBER = '000010'.
wa_CONTRACT_DATA_INX-UPDATEFLAG = 'U'.
wa_CONTRACT_DATA_INX-CANCREASON = 'X'.
wa_CONTRACT_DATA_INX-CANC_R_DAT = 'X'.
wa_CONTRACT_DATA_INX-R_CANC_DAT = 'X'.
append wa_CONTRACT_DATA_INX to g_CONTRACT_DATA.
data: g_salesnumber like BAPIVBELN-VBELN.
g_salesnumber = '0030029885'.
CALL FUNCTION 'BAPI_CUSTOMERCONTRACT_CHANGE'
EXPORTING
SALESDOCUMENT = g_salesnumber
CONTRACT_HEADER_IN = g_HEADER_IN
CONTRACT_HEADER_INX = g_CONTRACT_HEADER_INX
TABLES
RETURN = g_return
CONTRACT_ITEM_IN = contractitemin
CONTRACT_ITEM_INX = contractiteminx
CONTRACT_DATA_IN = g_CONTRACT_DATA
CONTRACT_DATA_INX = g_CONTRACT_DATA_INX.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
loop at g_return into wa_return.
write: wa_return-MESSAGE,/.
endloop.
2009 Mar 23 12:35 PM
REPORT y_OTC_bapi .
data: header_in like BAPISDH1 occurs 0 with header line.
data: header_inx like BAPISDH1X occurs 0 with header line.
data: return like BAPIRET2 occurs 0 with header line.
data: item_in like BAPISDITM occurs 0 with header line.
data: item_inx like BAPISDITMX occurs 0 with header line.
data: var like BAPIVBELN-VBELN value '0040000366'.
header_in-SALES_ORG = '0060'.
header_in-DISTR_CHAN = '10'.
header_in-DIVISION = '10'.
header_in-DATE_TYPE = '10242001'.
header_in-CT_VALID_F = '10242000'.
header_in-CT_VALID_T = '10312003'.
header_in-PURCH_NO_S = '054Z03M01'.
header_in-PO_DAT_S = '10312003'.
header_inx-updateflag = 'U'.
*header_inx-SALES_ORG = ''.
*header_inx-DISTR_CHAN = 'X'.
*header_inx-DIVISION = 'X'.
*header_inx-DATE_TYPE = 'X'.
*header_inx-CT_VALID_F = 'X'.
*header_inx-CT_VALID_T = 'X'.
*header_inx-PURCH_NO_S = 'X'.
*header_inx-PO_DAT_S = 'X'.
item_in-ITM_NUMBER = '000010'.
item_in-MATERIAL = '000000000022626260'.
item_in-PLANT = 'RL01'.
item_in-TARGET_QTY = '600'.
item_in-TARGET_QU = 'PC'.
*MATL_GROUP =
append item_in.
item_inx-updateflag = 'U'.
*item_inx-ITM_NUMBER = 'X'.
*item_inx-MATERIAL = 'X'.
*item_inx-PLANT = 'X'.
*item_inx-TARGET_QTY = 'X'.
*item_inx-TARGET_QU = 'X'.
**MATL_GROUP =
*append item_inx.
CALL FUNCTION 'BAPI_CUSTOMERCONTRACT_CHANGE'
EXPORTING
salesdocument = var
contract_header_in = header_in
contract_header_inx = header_inx
SIMULATION =
BEHAVE_WHEN_ERROR = ' '
INT_NUMBER_ASSIGNMENT = ' '
LOGIC_SWITCH =
NO_STATUS_BUF_INIT = ' '
tables
return = return
CONTRACT_ITEM_IN = item_in
CONTRACT_ITEM_INX = 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 =
.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT =
IMPORTING
RETURN = return.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |