天天看點

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

Use this url for example:

https://: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:

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

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.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

In my example, the determined target ID is TBPFSOV.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

This mapping is configured in customizing below:\

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

This target ID will further be used to determine the target WebClient UI component view.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

The mapping between a target ID and corresponding UI component is maintained in customizing below:

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

Direct navigation in CRM Fiori

Sample url: http://: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’)

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

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:

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

The combination of semantic object plus action used in my example leads to the target Fiori application with alias “MyLeads” in LPD_CUST.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

Open transaction code LPD_CUST, locate the UI5 application by application alias “MyLeads”.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

Open the Component.js of this application and the target view, S3, is configured for route pattern “detail1/{contextPath}”.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

This explains why S3.view.xml and S3.controller.js are loaded in the runtime when the direct url is accessed.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

Direct navigation in C4C

Example:

https://.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.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

The supported type for corresponding TI page are listed in 

SAP help

.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

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.

SAP CRM WebUI, CRM Fiori和C4C裡的Direct Navigation

Further reading

Jerry’s blogs regarding the comparison how CRM and Cloud for Customer implement a given feature using different approaches:

OData Service backend implementation in C4C, CRM and S4 HANA

Excel export in CRM and C4C

Saved query in C4C, CRM and S/4 HANA

Direct navigation in CRM WebUI, CRM Fiori and C4C

Formatted Text Edit in CRM and Cloud for Customer

How Table column resize works in CRM and Cloud for Customer

繼續閱讀