09-22-2021 7:15 AM
When I created a MM contract using BAPI_CONTRACT_CREATE, I got a return error like this:
" No instance of object type PurchasingContract has been created. External reference: # 1
# 1 System error (error in method CL_API_MASTER_CONDITION_MM=>PROCESS) "
I can't understand the error.
Can anybody help me?
09-22-2021 7:21 AM
09-22-2021 7:33 AM
09-22-2021 7:50 AM
I hope you are passing all the required data in structure as well as condition records. Please compare your code with the below code(already running perfectly in our production environment)
REFRESH : gt_item_condx , gt_item_cond , gt_item_cond_valx , gt_item_cond_val ,
gt_return , gt_item , gt_itemx , gt_account ,
gt_accountx , gt_item_cond_val , gt_item_cond_valx .
CLEAR : gs_return , gs_item , gs_itemx , gs_account , gs_item_cond_val , gs_item_cond_valx ,
gs_accountx , gs_item_cond_val , gs_item_cond_valx , gs_item_condx ,
gs_item_cond , gs_item_cond_valx , gs_item_cond_val .
CLEAR : ls_header , ls_headerx , lv_connum , gs_updata_final_sr .
DATA : lv_item TYPE i .
LOOP AT gt_updata_final_sr INTO gs_updata_final_sr .
CLEAR : lv_stdate , lv_ststr ,lv_enddate ,lv_endstr , gs_item , gs_itemx , gs_updata_final .
CLEAR lv_item .
REFRESH : gt_item_condx , gt_item_cond , gt_item_cond_valx , gt_item_cond_val ,
gt_return , gt_item , gt_itemx , gt_account ,
gt_accountx , gt_item_cond_val , gt_item_cond_valx .
IF gs_updata_final_sr IS NOT INITIAL .
CONCATENATE gs_updata_final_sr-st_date+6(4) gs_updata_final_sr-st_date+3(2) gs_updata_final_sr-st_date+0(2) INTO lv_ststr .
lv_stdate = lv_ststr .
ENDIF .
IF gs_updata_final_sr-en_date IS NOT INITIAL .
CONCATENATE gs_updata_final_sr-en_date+6(4) gs_updata_final_sr-en_date+3(2) gs_updata_final_sr-en_date+0(2) INTO lv_endstr.
lv_enddate = lv_endstr .
ENDIF .
LOOP AT gt_updata_final INTO gs_updata_final WHERE slno = gs_updata_final_sr-slno .
COMPUTE lv_item = lv_item + 1 .
gs_item-item_no = lv_item .
gs_item-material = gs_updata_final-matnr .
gs_item-plant = gs_updata_final-werks .
gs_item-stge_loc = gs_updata_final-lgort .
gs_item-target_qty = gs_updata_final-menge .
gs_item-po_unit = gs_updata_final-meins .
gs_item-net_price = gs_updata_final-netpr . "Net price
* gs_item-PRICE_UNIT = gs_updata_final- .
gs_item-acctasscat = gs_updata_final-knttp .
gs_itemx-item_no = lv_item .
gs_itemx-material = 'X'.
gs_itemx-plant = 'X' .
gs_itemx-stge_loc = 'X' .
gs_itemx-target_qty = 'X' .
gs_itemx-po_unit = 'X' .
gs_itemx-net_price = 'X' . " Net Price
* gs_itemx-price_unit = 'X' .
gs_itemx-acctasscat = 'X' .
gs_item_cond-item_no = lv_item .
gs_item_cond-serial_id = lv_item .
gs_item_cond-cond_count = 01 .
gs_item_cond-cond_type = 'PB00' .
gs_item_cond-cond_value = gs_updata_final-netpr .
* CURRENCY
gs_item_condx-item_no = lv_item .
gs_item_condx-serial_id = lv_item.
gs_item_condx-cond_count = 01 .
gs_item_condx-item_nox = 'X' .
gs_item_condx-serial_idx = 'X' .
gs_item_condx-cond_type = 'X' .
* gs_item_condx-CURRENCY
gs_item_condx-cond_value = 'X' .
gs_item_cond_val-item_no = lv_item.
gs_item_cond_val-serial_id = lv_item .
gs_item_cond_val-valid_from = lv_stdate.
gs_item_cond_val-valid_to = lv_enddate.
gs_item_cond_valx-item_no = lv_item.
gs_item_cond_valx-serial_id = lv_item .
gs_item_cond_valx-item_nox = 'X'.
gs_item_cond_valx-serial_idx = 'X'.
gs_item_cond_valx-valid_from = 'X'.
gs_item_cond_valx-valid_to = 'X'.
APPEND gs_item_cond_val TO gt_item_cond_val .
APPEND gs_item_cond_valx TO gt_item_cond_valx .
APPEND gs_item_cond TO gt_item_cond .
APPEND gs_item_condx TO gt_item_condx .
gs_item_cond-item_no = lv_item .
gs_item_cond-serial_id = lv_item .
gs_item_cond-cond_count = 02 .
gs_item_cond-cond_type = 'Z000' .
gs_item_cond-cond_value = 10 .
* CURRENCY
gs_item_condx-item_no = lv_item .
gs_item_condx-serial_id = lv_item .
gs_item_condx-cond_count = 02 .
gs_item_condx-item_nox = 'X' .
gs_item_condx-serial_idx = 'X' .
gs_item_condx-cond_type = 'X' .
* gs_item_condx-CURRENCY
gs_item_condx-cond_value = 'X' .
APPEND gs_item_cond TO gt_item_cond .
APPEND gs_item_condx TO gt_item_condx .
APPEND gs_item TO gt_item .
APPEND gs_itemx TO gt_itemx .
CLEAR : gs_updata_final , gs_item_cond , gs_item_condx ,
gs_item , gs_itemx .
ENDLOOP .
ls_header-comp_code = '1000' .
ls_header-doc_type = gs_updata_final_sr-bsart .
ls_header-vendor = gs_updata_final_sr-lifnr .
ls_header-pmnttrms = gs_updata_final_sr-zterm .
ls_header-purch_org = gs_updata_final_sr-ekorg .
ls_header-pur_group = gs_updata_final_sr-ekgrp .
ls_header-vper_start = lv_stdate . "gs_updata_final_sr- .
ls_header-vper_end = lv_enddate . "gs_updata_final_sr- .
ls_header-incoterms1 = gs_updata_final_sr-inco1 .
ls_header-incoterms2 = gs_updata_final_sr-inco2 .
ls_header-acum_value = gs_updata_final_sr-ktwrt .
ls_header-currency = 'INR' .
ls_headerx-currency = 'X' .
ls_headerx-comp_code = 'X' .
ls_headerx-doc_type = 'X'.
ls_headerx-vendor = 'X' .
ls_headerx-pmnttrms = 'X' .
ls_headerx-purch_org = 'X' .
ls_headerx-pur_group = 'X' .
ls_headerx-vper_start = 'X' .
ls_headerx-vper_end = 'X' .
ls_headerx-incoterms1 = 'X' .
ls_headerx-incoterms2 = 'X' .
ls_headerx-acum_value = 'X' .
PERFORM call_bapi_contract_create .
CLEAR : gs_updata_final_sr .
ENDLOOP .
*&---------------------------------------------------------------------*
*& Form CALL_BAPI_CONTRACT_CREATE
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM call_bapi_contract_create .
DATA : gw_com_ret LIKE bapiret2 .
REFRESH : gt_return .
CALL FUNCTION 'BAPI_CONTRACT_CREATE'
EXPORTING
header = ls_header
headerx = ls_headerx
* VENDOR_ADDRESS =
* TESTRUN =
* TECHNICAL_DATA =
IMPORTING
purchasingdocument = lv_connum
* EXP_HEADER =
TABLES
return = gt_return
item = gt_item
itemx = gt_itemx
* ACCOUNT =
* ACCOUNTPROFITSEGMENT =
* ACCOUNTX =
* DELIVERY_ADDRESS =
* ITEM_COND_VALIDITY = gt_item_cond_VAL
* ITEM_COND_VALIDITYX = gt_item_cond_VALX
item_condition = gt_item_cond
item_conditionx = gt_item_condx
* 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 =
* EXTENSIONIN =
* EXTENSIONOUT =
.
IF sy-subrc EQ 0 .
READ TABLE gt_return INTO gs_return WITH KEY type = 'E' .
IF sy-subrc EQ 0 .
gs_output-msg_typ = 'E' .
gs_output-slno = gs_updata_final_sr-slno .
* GS_OUTPUT-PO = lv_connum .
gs_output-lifnr = gs_updata_final_sr-lifnr .
LOOP AT gt_return INTO gs_return_e WHERE type = 'E' .
gs_output-text = gs_return_e-message .
APPEND gs_output TO gt_output .
CLEAR gs_return_e .
ENDLOOP .
CLEAR gs_output .
ELSE .
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'
IMPORTING
return = gw_com_ret.
gs_output-msg_typ = 'S' .
gs_output-slno = gs_updata_final_sr-slno .
gs_output-po = lv_connum .
gs_output-lifnr = gs_updata_final_sr-lifnr .
gs_output-text = 'Contract Successfully Created'.
APPEND gs_output TO gt_output .
CLEAR gs_output .
ENDIF .
ENDIF .
ENDFORM
09-22-2021 8:05 AM
Hi, I have checked. All the requirements are mentioned, it's actually coming for any file I try to upload
09-22-2021 9:48 AM
Can you share the entire error that you are getting?
Thanks, Ramya Kothamasu
09-22-2021 12:42 PM