Skip to Content
avatar image
Former Member

How to trigger SAP CRM pricing for quoation line items

Hi All,

Can anyone tell me how to trigger pricing using ABAP Function Module in SAP CRM?

I tried using FM CRM_ORDER_MAINTAIN to trigger pricing but no luck? I need this pricing trigger for quotation.

Thank You.

Best Regards,

Tushar

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Jan 09, 2017 at 10:54 PM

    Hi

    Pricing is updated by FM CRM_PRIDOC_UPDATE_EC. See below for some input.

    Point 1:

    CRM_PRIDOC_UPDATE_EC is a event call FM.

    Run tcode crmv_event, you will see

    Trans. Category BUS2000115 Sales
    Execution Time 50 End of Document Processin
    Priority 14
    Object Name ORDER
    Event TRIGGER_FUNCTION
    Attribute PRICING_COMPLETE
    Function CRM_PRIDOC_UPDATE_EC

    This FM is called to update pricing document in the sales order by crm_order_maintain. This is default logic. See call stack below.

    20 FUNCTION CRM_PRIDOC_UPDATE_EC SAPLCRM_PRIDOC_COM_EC
    19 FORM EXECUTE_CALLBACKS_PLANNED SAPLCRM_EVENT_OW
    18 FUNCTION CRM_EVENT_SET_EXETIME_OW SAPLCRM_EVENT_OW
    17 FUNCTION CRM_ORDER_COMPLETE_SINGLE_OW SAPLCRM_ORDER_OW
    16 FUNCTION CRM_ORDER_MAINTAIN_SINGLE_OW SAPLCRM_ORDER_OW
    15 FUNCTION CRM_ORDER_MAINTAIN_MULTI_OW SAPLCRM_ORDER_OW
    14 FUNCTION CRM_ORDER_MAINTAIN SAPLCRM_ORDER_API
    13 METHOD MAINTAIN_1O CL_CRM_1O_MAIN================CP

    If you are not creating a BUS2000115, you may maintain the same entry in crmv_event for the target BUS2000*** like the existing one for sales order.

    Though crm_order_maintain is called in your z code, this event should be called by design.

    Point 2

    When you change anything in header, header conditions are always updated. But item conditions are not updated by default when item field is changed, the solution is in sap kba 2410013 Input value on item level is not considered in pricing.

    Point 3

    "I tried using FM CRM_ORDER_MAINTAIN to trigger pricing but no luck?"

    crm_order_maintain is used to create or change a sales order. If you simply want to update conditions, how about calling CRM_PRIDOC_UPDATE_EC directly?

    Spencer

    Add comment
    10|10000 characters needed characters exceeded