Use this url for example:
https://<host>:44354/sap(bD1lbiZjPTAwMSZkPW1pbg==)/bc/bsp/sap/crm_ui_start/default.htm?crm-object-type=BPFS&crm-object-action=B&crm-object-value=120&crm-object-keyname=PARTNER
the overview page of business partner with id 120 in current application server could directly be opened:html
How does CRM WebUI framework know which target UI view should be used for rendering?
In the url the CRM object type BPFS and action B ( display ) is specified, both of which are used for target UI view resolvation.web
In my example, the determined target ID is TBPFSOV.shell
This mapping is configured in customizing below:app
This target ID will further be used to determine the target WebClient UI component view.ui
The mapping between a target ID and corresponding UI component is maintained in customizing below:this
Sample url: http://<host>:50033/sap/bc/ui5_ui5/ui2/ushell/shells/abap/FioriLaunchpad.html?sap-client=001&sap-language=EN#Lead-manageLead&/detail1/Leads(guid’40F2E963-AFAA-1EE5-88AD-D6FD7FB9D1CE’)url
Semantic object Lead and action 「manageLead」 are specified in the url.
How Fiori knows which UI5 view is used as target UI for rendering?
Open the Catalog page in Fiori catalog designer:spa
The combination of semantic object plus action used in my example leads to the target Fiori application with alias 「MyLeads」 in LPD_CUST.3d
Open transaction code LPD_CUST, locate the UI5 application by application alias 「MyLeads」.excel
Open the Component.js of this application and the target view, S3, is configured for route pattern 「detail1/{contextPath}」.
This explains why S3.view.xml and S3.controller.js are loaded in the runtime when the direct url is accessed.
Example:
https://<host>.c4c.saphybriscloud.cn/sap/public/byd/runtime?bo=COD_OPPORTUNITY_THINGTYPE&nav_mode=TI¶m.
Key=00163E217B181EE6AFB52FAEC14878E2
And the TI page of given opportunity is displayed.
The supported type for corresponding TI page are listed in SAP help.
If you monitor network request in Chrome development tool, it is easy to find out that the navigation target, Opportunity TI page, is resolved by a ABAP backend function module OBERON_OBN_TARGET_RESOLVE, which is not visible to C4C customer & partner.
Jerry’s blogs regarding the comparison how CRM and Cloud for Customer implement a given feature using different approaches:
要獲取更多Jerry的原創文章,請關注公衆號"汪子熙":