Skip to Content
0
Former Member
Feb 24, 2006 at 04:43 PM

Change Price Agreements in Business Transaction

50 Views

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