如何建立自己的SAP CRM產品主資料search scenario
Created by Jerry Wang, last modified on Oct 03, 2016
Technically it is possible to create your own search scenario, filter class and search tool, and put your custom search logic there. Then write another report to trigger search implemented by your own search scenario:
(1) Create your filter class with interface IF_COM_PRSEARCHFILTER.
Put your own filter logic in method FILTER. It will be called by your own search tool. Define which search criteria will be relevant for your filter. In my example since I need to re-implement search by object description, so I make short text set type as relevant criteria.
(2) Create your own search tool with interface IF_COM_PRSEARCHTOOL.
Implement method RELEVANT_CRITERIA which has the same logic as your own filter class.
Implement method GETLIST_ACTIVE. Put your optimized solution in this method.
(3) Create your search scenario class with super class CL_COM_PRSEARCHSCENARIO_BASE. Redefine DETERMINE_STANDARD_TOOL. Just specify your own search tool and filter class in this method.
CREATE OBJECT lr_tool TYPE ZCL_NEW_SEARCH_TOOL_AFTER_OPT.
ei_tool = lr_tool.
CREATE OBJECT lr_filter TYPE ZCL_NEW_FILTER_AFTER_OPT.
INSERT lr_filter INTO TABLE et_filter.
(4) [Optional] integrate your own search in PREPARE_DB_RANGE_SEARCH ( standard code change necessary )
(5) Since currently we do not need to integrate the new search via end-to-end way, we simply write a report to trigger search which will use our own search: This FM will not be used by UI search, so when you are comparing your search performance with standard search, please also trigger standard search via this report, too.
ls_option-frgtype_id = 'COMM_PR_SHTEXT'.ls_option-attribute = 'SHORT_TEXT'.ls_option-sign = 'I'.ls_option-option = 'EQ'.ls_option-low = 'object mass created of 200124'.ls_option-high = space.INSERT ls_option INTO TABLE lt_option.CALL FUNCTION 'COM_PRODUCT_GETLIST_API'
EXPORTING
it_gen_sel_options = lt_option
iv_scenario = 'ZCL_NEW_SCENARIO_AFTER_OPT'
IMPORTING
et_product = lt_product
et_bapireturn = lt_return
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2704039/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 關於SAP CRM產品主資料建立頁面上的產品類別顯示邏輯分析
- SAP CRM產品主資料ID的生成邏輯介紹
- SAP CRM裡產品主資料的文字模型設計模型
- SAP CRM和C4C的產品主資料price維護
- 如何把SAP CRM產品主資料隱藏的batch ID欄位顯示出來資料隱藏BAT
- SAP CRM產品主資料頁面的縮圖顯示設計原理
- SAP CRM產品主資料應用裡value node和model node的轉換
- SAP CRM產品主資料搜尋功能的With individual object搜尋引數Object
- SAP CRM行業解決方案裡的產品主資料高階搜尋功能行業
- SAP CRM 產品主資料搜尋alternative ID type下拉選單的渲染邏輯
- CRM產品主資料在行業解決方案industry solution中的應用行業
- 如何給SAP C4C的產品主資料division配置出新的下拉選項
- 如何使用程式碼建立和讀取 SAP CRM 訂單的 Text 資料
- SAP CRM如何建立支援Web Service的word模板Web
- SAP CRM如何建立支援Web Service的PDF模板Web
- 如何在SAP裡建立configurable material物料主資料
- 如何處理新建的SAP CRM產品category沒有出現在列表的問題Go
- 關於 SAP 產品 UI 的搜尋引擎優化 SEO - Search Engine OptimizationUI優化
- SAP不同的產品是如何支援使用者建立自定義欄位的
- Hybris產品主資料的價格折扣維護
- 在SAP UI中使用純JavaScript顯示產品主資料的3D模型檢視UIJavaScript3D模型
- SAP CRM Advanced search和Simple search裡Max hit表現行為的差異
- Hybris commerce產品主資料的搜尋API,批量返回若干主資料的值API
- github 建立自己的主頁Github
- 如何在SAP CRM裡建立和消費Web serviceWeb
- SAP物料主資料建立時間和建立個數的函式關係函式
- 談談如何使用資料產品畫布構建高價值資料產品
- SAP主資料管理
- SAP產品的Field Extensibility
- BlueHost美國主機如何建立資料庫資料庫
- 各種 SAP 產品的自定義 UI 建立和整合方法一覽UI
- 如何使用程式碼的方式刪除 SAP CRM 訂單 Text 資料
- 資料產品:CDP(客戶資料平臺)必備的產品能力
- SAP 固定資產主資料
- 對產品資料庫建立與維護機制的探索(轉)資料庫
- SAP EWM - 其他主資料 - 運輸主資料-2
- SAP PP C201使用ECR建立Recipe主資料
- CRM系統的產品型別有哪些?型別