Hi,
I'm using CRM_ORDER_MAINTAIN to create/change price agreements within a CRM contract, but nothing gets changed.
The contract is created successfully, but without price agreements at item level.
Following is the sample code.
LS_INPUT_FIELD-REF_HANDLE = LS_REF_HANDLE.
LS_INPUT_FIELD-REF_KIND = 'B'.
LS_INPUT_FIELD-OBJECTNAME = 'PRICE_AGREEMENTS_CRM'.
LS_INPUT_FIELD_NAMES-FIELDNAME = 'KAPPL'.
INSERT LS_INPUT_FIELD_NAMES INTO TABLE
LS_INPUT_FIELD-FIELD_NAMES.
LS_INPUT_FIELD_NAMES-FIELDNAME = 'KSCHL'.
INSERT LS_INPUT_FIELD_NAMES INTO TABLE
LS_INPUT_FIELD-FIELD_NAMES.
LS_INPUT_FIELD_NAMES-FIELDNAME = 'KWERT'.
INSERT LS_INPUT_FIELD_NAMES INTO TABLE
LS_INPUT_FIELD-FIELD_NAMES.
INSERT LS_INPUT_FIELD INTO TABLE GT_INPUT_FIELDS.
DATA:LS_AGR TYPE CRMT_PRICE_AGREEMENTS_CRM_COM.
DATA: LS_COND TYPE /1CN/WORKING_SET_I_D_CRM.
LS_AGR-REF_HANDLE = LS_REF_HANDLE.
LS_AGR-REF_KIND = 'B'.
LS_COND-KAPPL = 'CRM'.
LS_COND-KSCHL = 'Z7PB'.
LS_COND-KSCHL_SUPP = 'Z7PB'.
LS_COND-KBETR = '900'.
LS_COND-KRECH = 'A'.
LS_COND-KONWA = '%'.
INSERT LS_COND INTO TABLE LS_AGR-PRICE_AGREEMENTS_CRM.
INSERT LS_AGR INTO TABLE GT_AGR.
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
EXPORTING
IT_ORGMAN = GT_ORGMAN
IT_PARTNER = GT_PARTNER
IT_PRICE_AGREEMENTS_CRM = GT_AGR
IMPORTING
ET_EXCEPTION = GT_EXCEPTION
CHANGING
ct_orderadm_h = gt_orderadm_h
ct_orderadm_i = gt_orderadm_i
ct_input_fields = gt_input_fields
ct_doc_flow = gt_doc_flow
cv_log_handle = gv_log_handle.
I have used CRM_ORDER_SAVE and COMMIT, but no help.
Any help is very much appreciated.
Thanks
Kamal