This is a step by step guide to integrate SAP Cloud for Customer (C4C) with SAP Analytic Cloud (SAC).
I am going to explain step by step how to setup SSO between SAC and C4C using IDP, how to import and configure SAP CRM LOB content along with connection and finally I will provide instructions on authoring Mashup in C4C and embed SAC story into C4C.
SAC is used as analytics client consuming C4C data exposed via OData analytical queries. For this purpose, you can configure a data acquisition connection in SAP Analytics Cloud. This allows you to create a SAP Analytics Cloud model based on an OData analytical query and consume the result set in an SAP Analytics Cloud Story. These stories can be embedded into C4C using C4C’s mashup technology.
Get your C4C, SAC and SAML Identity Provider (IDP) provisioned. For the steps in the SAP Analytics Cloud system, the System Owner role is required. For the steps in the SAP Cloud for Customer, the Administrator role is required.
The end to end SSO will work for a user who logs on to both the SAP Cloud for Customer and SAP Analytics Cloud system via the Identity Provider.
The end to end SSO between C4C and SAC will work only when same IDP is configured as identity provider as shown in diagram above. There are documentations available to accomplish this.
Please see this Step by step guide for end to end setup of SSO between SAC & C4C.
In order to make SSO work end to end, please make sure to map user attribute to your identity provider.
E.g.. In SAC choose Login Name as user attribute
And in SAP IdP for both the SAC and C4C applications, choose Default Name ID format to “Login Name”. This will ensure SAC user and IdP user are mapped via their assigned Login Name attribute.
SAC Application in IdP:
C4C Application in IdP:
- As an administrator, log on to your SAP Analytics Cloud system
- From the top left menu, select Browse > Files
- On the left pane, choose Content Library.
- Choose the type of content that you want to add. This can be either Samples or Business Content. Select Business Content.
- Select SAP CRM – Sales Performance – C4C by clicking on title
- A popup comes up with the details of the content in the package. Choose Import to import the content
- The SAC stories are now available in below highlighted folder
Below connection is also imported. Go to Home -> Connection. Notice that below connection is already created
- To refresh the stories, you will need a business user from C4C. You will have to login with same user in SAC as same credentials gets used to refresh story at backend C4C tenant.
Edit imported connection “SAP_C4C” to configure C4C system as shown below.
Specify Data Service URL, C4C User Name and Password.
The Data Services URL should be constructed as below
https://<C4C Tenant Domain name>/sap/c4c/odata/cc_home_analytics.svc
- In SAC navigate to Main Menu > Browse > Models and search for SAP__CRM
- Select the model Ex SAP_CRM_GEN_IM_SPTEASER. Click on Import Data and select Import Data from Cloud for Customer Analytics
- Select connection name to import data from
- Navigate to the folder where C4C content is imported and open the story
- Click on any report to verify it open without any error. Ex. SAP_CRM_C4C_SPTEASER
- This completes importing SAP CRM LOB content and verification that report works.
- In C4C login as administrator and navigate to Main Menu > Administrator > Business Flexibility > Mashup Authoring.
- Click on New > HTML Mashup and fill in all the details as shown below. Mashup category and port binding can be selected based on your scenario. In the example below, I am going to embed “Sales Performance Teaser” story from SAC which we imported from pre-built business content in earlier steps. This story is going to be embedded in account object in C4C.
- Now, prepare the SAC URL. Please follow blog to get the URL. Once URL is composed, select type as URL and enter URL. Click on Extract to extract the parameters from URL as shown below. The URL I used for example is as below.
https://<SAC Tenat Domain>/sap/fpa/ui/tenants/031/bo/story/<Story ID>?mode=embed&f01Model=t.S.SAP__CRM_C4C_IM_SPTEASER:SAP__CRM_C4C_IM_SPTEASER&f01Dim=Account_ID&f01Val= AccountInternalID&f01Op=in
Replace <SAC Tenant Domain> with your own tenant
Replace <Story ID> with your own story ID from SAC
In this case I am using Account_ID dimension to apply filter on story which is bound to AccountInternalID from C4C account object. This is used to pass contextual data to SAC story. In this case we are using Account_ID.
- Save the Mashup and select Activate so that it will be available for embedding in C4C
- Add the mash-up in the appropriate Tab of Account Object. This can be done by an Admin in Adapt mode. Click Adapt > Edit Master Layout.
- Now navigate to the Main Menu > Customers > Account Tab and select select on of the account. In the example below, I have selected account ID 10001 for Intelligent Systems
- Click on Overview Tab because that is where I am going to add my mashup. Identify the section where you want to add the SAC story and look for + Click on + Sign and select Add Mashup
- Select the mashup we created in earlier steps. Select full width or as desired. Click Apply
- You will see that SAC Story is now added to the Account Overview page.
- Now click on Adapt > End Layout Changes to save changes. The SAC Story will now be shown on Overview tab for every account we select from account list.
Ex. I selected Intelligent Systems and on Overview tab I see my Sales Performance story refreshed for the same account. The parameter Account_ID is passed from C4C Account Object to SAC story.
So to summarize, we were able integrate C4C with SAP Analytic Cloud. We setup SAML SSO between C4C and SAC, imported and configured pre-delivered LOB content for SAP CRM, Imported data from C4C into SAC Model. We then embedded same SAC story to account object in C4C to provide context aware analytics.
Please leave a comment or ask question below.