CRM and CX Blogs by Members
Find insights on SAP customer relationship management and customer experience products in blog posts from community members. Post your own perspective today!
Showing results for 
Search instead for 
Did you mean: 
Yes!! Now you can create an order seamlessly with minimum clicks and with automated mechanism to pull all the product information in one go. And all this is possible with SAP C4HANA - C4C product and a little customization as suggested in this blog!!

In this blog we are going to create a fully automated algorithm to generate a list of products from various sources to create an Order. In other words, it can be called as an Order Template.

In a retail execution scenario, a product proposal would typically be used by a Sales Representatives while creating an order at the customer site. The logic is designed to look into various data sources and pull products in to the template. Sales Order History to be taken as basis of the data where as other specific conditions like price promotion for specific products should also be taken care.

A final list of products will be auto populated in the order template, which is a combination of products from Order history, Product Proposal and products under Promotion. Sales Representative will be able to edit the list and modify quantity as per the Order need.


It can serve as a reusable tool with an intelligence to accommodate additional logic if there is a demand.

For Business, it can be useful as a readily available template in the order taking process.

With minimal clicks the sales rep would have access to an entire list of possible products meant for a specific customer. This list provides the flexibility to be customized or enhanced further as per the customer need.

Basically, the solution would give overall improvement to the Order taking process.

Solution Design:

We have worked on the solution where we have populated the Item Proposal with the products from Sales Order History, Product List and Promotions on a custom button click. On saving, the products in Item Proposal are copied to Products in Sales Order by standard functionality.

Technical Details:

  1. Extend Sales Order BO – CustomerQuote.xbo and add custom Action - action Add_Product under root node.

  2. Enhance the QC screen and create a new button on QC screen for Adding Products.

  3. On the custom Action write the following logic.

  4. Pick last 1 month sales order for the selected account using Query CustomerQuote.QueryByElements taking following conditions into account:

Type Code = 2059(Sales order) and

Account id = Selected account and

Creation date of sales order >= past 1 month.

  1. Pick the products for sales order in result list via loop.

  2. In case of same products in different orders pick the one with maximum quantity.

  3. Pick the products from product list using standard query and relation. Fetch selected customer details using Query - Customer.QueryByBusinessObjectCustomer. Fetch Product lists for that customer using relation – ProductBusinessPartnerRelation.

  4. In case of same products in different product list add the quantity for that product.

  5. Pick the products from promotions for the selected customer using standard BO Query Promotion.QueryByElements and keep default quantity one.

  6. In case of same product from Sales Order and Product list add the quantity for that product.

  7. In case of same product from Sales Order/Product list and Promotion, no need to show product from promotion.

  8. Show the final list in item proposal on QC screen and on Save these products will be updated in items/products.


The conditions can be modified as per specific needs and requirements. Please write to me to get more details.