How to get propose products in Sales Order

简介:

Logon on HN1/Q2U using SALESPRO role, Sales Cycle -> Sales Order Search -> Edit List in Items AB -> More -> Propose Items from Listings (please see CRM_PT_SALES_Product_Proposal.xls for detail steps)

After clicked Propose Items from Listing, the propose products will be rendered in the list table.
Question: How to get products in Sales Order? Does it use Product Search component or itself?

Conclusions

As you see, when adding items in list, not only include product id, but also include Unit, Currency, and Net Value and so on. There are three steps to render products in Items AB:

Step1: Get product list by additional function modules, not Product Search Component. This step just get product id list.
Step2: Get product attributes by Product Search Component based on the product id list in step1.
Step3: get price based on products with attributes.
So in sales order, they get product id list by their own function modules. Product Search Component is used to get attributes of result products which will be used to get product price.

Explanation

(1) using St05 to trace the sql when clicked Propose Items form Listing, see screenshot:

The highlight item is sql in SQL_issue.txt.
Setting a breakpoint in SAPLCRM_PRODUCT_GETLIST/CRM_PRODUCT_GETLIST2 to debug, see call stack screenshot:

UI Component: BT115IT_SLSO
View: BT115IT_SLSO/Items
Trigger event: eh_onpp_listings
Call stack 21: trigger event en_onpp_listings
Call stack 30: CRM_PRODUCT_PROPOSAL_DETERMINE is key function
first, function CRM_MKTPR_PP_GENERATE is the funtion to get product id list.

In it, it reads method schema.

Then loop schemas to execute function modules to get propose products:

Then call funtion CRM_PRODUCT_PROPOSAL_PRICEDET to get net price

More Info here:
Spro -> img -> crm -> transactions -> settings for sales transaction -> product proposals in Quotations and Orders -> method schemas for product proposals -> assign method schema to transaction type.
You can assign a method schema to a sales organization with a transaction type

Every method schema has a list of function modules:

Call stack 32: In BEA_CNPL_API_SIMULATE to call funtion BEA_CNPL_PDL_O_DATA_ENRICH to get product attributes.

Call stack 35: call function COM_PRODUCT_GETLIST_API with scenario parameter.

Call stack 36: delegate to product search component with proposed product in it_criteria.

本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。

相关文章
|
10月前
|
SQL 关系型数据库 MySQL
GROUP BY和ORDER BY的区别
GROUP BY和ORDER BY的区别
239 0
|
SQL
ORDER BY && GROUP BY
ORDER BY && GROUP BY
61 0
ORDER BY && GROUP BY
|
存储 .NET C#
C# LINQ 详解 From Where Select Group Into OrderBy Let Join
目录 1. 概述 2. from子句 3. where子句 4. select子句 5. group子句 6. into子句 7. 排序子句 8. let子句 9. join子句 10. 小结 1. 概述     LINQ的全称是Language Integrated Query,中文译成“语言集成查询”。
1977 0
|
存储 关系型数据库 MySQL
使用filesort来满足ORDER BY (Use of filesort to Satisfy ORDER BY )
filesort ORDER BY (Use of filesort to Satisfy ORDER BY ) MySQL
130 0
SAP RETAIL 维护Plant Profile 报错 - No customer account group assigned to business partner grouping ZNM2
SAP RETAIL 维护Plant Profile 报错 - No customer account group assigned to business partner grouping ZNM2
SAP RETAIL 维护Plant Profile 报错 - No customer account group assigned to business partner grouping ZNM2
SAP SD 基础知识之Cash Sales和Rush Order的区别
SAP SD 基础知识之Cash Sales和Rush Order的区别
SAP SD 基础知识之Cash Sales和Rush Order的区别
|
SQL 关系型数据库 MySQL
order by使用
order by使用
134 0
order by使用
SAP Cloud for Customer Sales Order Pricing Date的配置
SAP Cloud for Customer Sales Order Pricing Date的配置
SAP Cloud for Customer Sales Order Pricing Date的配置
|
Web App开发 前端开发 开发者
SAP Cloud for Customer里Sales Order和Sales Quote的建模方式
SAP Cloud for Customer里Sales Order和Sales Quote的建模方式
118 0
SAP Cloud for Customer里Sales Order和Sales Quote的建模方式