Symptom
You have implemented SAML SSO authentication in your SAP Analytics Cloud Live Data Connection to HANA using Direct Connection (CORS).
If you open an incognito tab in your browser, you can see your stories without problems and refresh your data. If you open a normal browser window, you get the error:
Failed to connect to System.
or
Unable to retrieve data from the datasource.
Error: Unable to get property “getlanguage” of undefined or null reference
If you clean your browser cookies, you can connect correctly.
If you capture network traffic using Chrome development tools, you can see that when connecting to your HANA server, instead of the usual HTTP response 200, you see a 303 See Other (redirection). It is going to be redirected to the SAML IdP as it considers that the session has expired:
Environment
- SAP Analytics Cloud
Cause
The CORS connection to HANA is keeping an old expired session and it tries to redirect the call to the SAML IdP.
Resolution
Google Chrome
- Log on to your SAP HANA server's Web IDE https://<HANA_SERVER>:<PORT>/sap/hana/ide/editor using the SYSTEM user credentials.
- Navigate to sap.bc.ina.service.v2.cors package.
- Right-click the cors package, and select New > File, type the name .xsaccess and click Create.
- Open this new .xsaccess file, and add the following code:
{"cache_control" : "no-cache, no-store"}
- Save the .xsaccess file.
- Right-click the cors package, and click Activate All.
In addition, it may be necessary to clear your Google Chrome Redirect Cache:
- Open the Google Chrome Developer tools using the F12 key on the keyboard or "Customize and control Google Chrome" | "More tools" > "Developer tools".
- Open the Google Chrome Developer tools Settings using the F1 key on the keyboard or "Customize and control DevTools" | "Settings".
- In the "Network" section of "Settings" check "Disable cache (while DevTools is open)".
- Close "Settings".
Microsoft Edge, Microsoft Internet Explorer and Google Chrome:
- Log on to your SAP HANA server's Web IDE at https://<xs-host:port>/sap/hana/ide/editor/ with the system user credentials.
Replace <xs-host:port> with your SAP HANA XS server host and port. - Navigate to sap.bc.ina.service.v2.
- Right-click the v2 package, and select
New
Package
.
- In Package Name enter cors and click Create.
- Right-click the cors package and select
New
File
.
- Enter auth.html and click Create.
- Open auth.html, and add the following code:
<html>
<script type="text/javascript">
open(location, '_self').close();
</script>
</html>
- Save the auth.html file.
- Right-click the cors package, and click Activate All.
See Also
- Live Data Connection to SAP HANA Using a Direct Connection and SSO
- How to find User Assistance for SAP Analytics Cloud?
- Ask a question on the SAP Community!
- 2487011 - What information do I need to provide when opening incidents with SAP Analytics Cloud (Hint: Use component LOD-ANA*)
Keywords
SSO, incognito, cookie, HANA, live, direct, cors, SBOC, SAC, SAP BusinessObjects Cloud, Business Objects, SAC, SAP AC, Cloud-Analytics, CloudAnalytics, SAPCloudAnalytics , KBA , sso not working in edge , no assertion found in the body , of request , the website cannot display the page , LOD-ANA , SAP Analytics Cloud (SAC) , LOD-ANA-BI , Business Intelligence Functionality, Analytic Models , LOD-ANA-BR , SAC Boardroom , Problem