SAP Analytics Cloud Integration with S4 on premise

SAP Analytics cloud (formerly BOBJ Cloud / Cloud for Analytics) is SaaS packaged Analytics solution. The tool is capable of analytics, planning and predictive with R integration.

Last week  we successfully configured analytics cloud with on premise sap application for one of our customers. Below is the detailed architecture over over-view of the integration

Components

S4 1610 Fp02 On-prem, BOBJ 4.2, BW4 and HANA 2.0. All the applications are running on amazon virtual private cloud .

092817_1922_SAPAnalytic1.png

SAP Analytics cloud connection type

  • Import
  • Direct
  • Reverse Proxy

Import Connection – Requires SAP Cloud connector , the data connection is not live , cannot be usefull for live stream data

Direct – Using the standara INA services in SAP application, Analytics cloud will directly connect to source systems. Requires to open up the ports to cloud

Reverse Proxy – making use of a web server paths  in a DMZ layer, Live data connections can be created . we used apache as a web-server for this setup

 

Live Data connection using reverse proxy

092817_1922_SAPAnalytic2.jpg

High level configuration steps

  • 1 – Install apache on the server
  • 2- Configure SSL for the web server ( default port 443)
  • 3 – Configure Proxy paths with redirection to backend SAP systems ( BW, S/4 , HANA and BOBJ* are supported)
  • 4 – Configure the default path route to your cloud tenant

*Additional installation and config is required for tomcat

**SAML SSO is supported

 

 

 

 

 

 

 

Advertisements

Custom Fonts in Design Studio

There are a lot of fonts which are supported by Design studio by default, but there are infinite varieties of fonts available in the internet and not all of them are supported by Design Studio directly. If you need to use one of the fonts in your design studio application, there is an easy way of doing so without having to install the font library on the end user’s computer. There are a lot of fonts which convert alphabets into images which can be used on the dashboards as images. Here is how to do so.

  1. Usually the default font types are supported on all browsers and don’t need any installations on the end user’s machines or any CSS scripting to add the font families. But for font types like “SAP-Icons” (this is a font type which converts unique texts to images you can use on the dashboards. Ex : https://openui5.hana.ondemand.com/iconExplorer.html)
  2. There are a lot of websites where you can look up for fonts you need but most of them are not free. I found one website which offers font types for free for commercial use as well.

    http://www.fontsquirrel.com/fonts/list/find_fonts

  3. Go into the website and download the .ttf file for required fonts. In the below example I am trying to add a new font called “Roman Caps”.

  4. To start adding a new font family to your design studio dashboard, you will need a .ttf file and .eot/.woff file as well.

    Note: .eot is a file type which is supported only in IE. If your target browser is anything other than IE, you might have to get the .woff file as well.

  5. Creating an .eot or .woff file can be done using a lot of websites for free available on google.
  6. Once you have the .eot and .ttf files ready, you have to upload these files to the repository folder and create a CSS file where you can import these 2 files.

  7. Now, to import the above 2 files into a CSS file and add the new font-family to your design studio dashboard put in the below code in your CSS file.

  8. With the above step, when you reference the .css file in your dashboard as custom CSS file, the new font face will be available for use in your dashboard.
  9. I used a text component to test if the new font type is working, and to do so, I created a CSS class in the .css file to use the new font family that I just imported.

  10. After I save the css file also and reference it in the dashboard and apply the CSS class to the text object here is the result I get.

  1. As a next step, I am exploring if I can use the same kind of CSS scripting to change the font types on charts and other components as well and I will update the post as soon as I find something.

Happy designing

Naveen Mamidi

Tek Analytics BI Practice

Custom Alert icons in Design studio

I would like to share an easy and effective solution that I tried a couple of days ago for one of my business requirements. The business users already had a lot of xcelsius dashboards in production that were built a few years ago and I was converting one of the dashboards to Design studio. One of the key feature that is not directly available in Design studio is to display alerts on the crosstab. Xcelsius had a variety of options to display these alerts and the users were very specific on having a particular kind of alerts shown up on the dashboard. So, this is what I did and I thought it would be helpful for some others as well.

 

  • Design studio crosstab has a property to display conditional formatting on the dashboard. There are a handful of options to enable the conditional formatting on Design Studio Crosstab. Some of the straight forward methods are
  1. Enabling Exceptions on BEx query level and having the same conditional formatting carried forward to Design Studio
  2. Using the data source (BEx query or HANA View) in AO and enabling conditional formatting using AO and getting a smart copy of the data set as a data set in to design studio
  3. Smart copy from Analysis office

However, all of these options have their own limitations in terms of visual alerts that can be displayed. For Ex: AO Conditional formatting offers only 3 different types of icons to be displayed.

 

This limitation can be overcome using CSS changes at the design Studio level to use any kind of status alert to be displayed on the crosstabs of the dashboard.

 

This is how it can be done:

  1. Create an Analysis Office report with the required data source

  1. Apply Conditional formatting on the column needed using the “Conditional Formatting” button on the top menu.

  1. After applying conditional formatting on required measure, the report will look like below screenshot. Right click on the report and click on option “Smart Copy”. This will copy the Data source along with the settings that are made like dimension and measure selection, any background filters applied in the AO report and Conditional formatting also. This Smart copy can be used as a data source in Design Studio. The AO report need not be saved anywhere in the repository.

 

  1. Once you “Smart Copy” the AO report, you will be able to see an option “Smart Paste” when you right click in the “Data Sources” section of Design Studio.

  2. Once you “Smart Paste” in design Studio, this will become a data source just like all other data sources that are directly added via BICS connections in Design Studio. You can perform all operations on this data source that are allowed by Design Studio on all other data sources.
  3. Once you add a crosstab in Design Studio and set the property of Conditional formatting as ‘true’ in the properties section of the crosstab, the conditional formatting that you set in AO will be visible in the design studio crosstab.

  1. Now, if you want to change the kind of visual alert that is being displayed on the crosstab, there is no direct option to do so in design studio client tool itself. But it can be changed using CSS scripting as below.
  2. Run the dashboard in a browser and hit F12 to open debugger mode. There is an option called “DOM Explorer” in the F12 console. You can tackle each and every minor CSS detail using the DOM Explorer by selecting the Mouse events button and clicking anywhere needed on the dashboard.

 

  1. There are few CSS Classes assigned by default, to all the conditional formatting that is enabled on the crosstab. All we have to do is fetch for the CSS class that is providing the images as alerts for crosstab and change the image to our desired image by using a new CSS file. To find out which css class is being used for the Green Traffic light icon, I just opened the F12 console and using the mouse events button, I clicked on the green traffic light icon.

  1. Once I click on the green icon, there is some information collected in the F12 console regarding the icon. (in the below screenshot sapzencrosstab-DataCellAlert3StatusSymbol is the CSS class assigned to all the green color traffic lights in the crosstab.) The right side pane shows more detail specifications of the CSS class like background, position, color and image used etc.

 

  1. Now to replace the existing image with a Green colored Tick mark ( business requirement in my case), I have to use the same CSS class in a new CSS File and copy the same CSS properties from the F12 console. In place of the default ‘background-image’ that is visible in the F12 console, I need to replace it with my desired image.
  2. To do so, we cannot directly post an image (.png or .jpg) file on the repository and reference it in the CSS file. We have to convert every image into base64 format (lot of sites available to convert .jpg/.png to base 64)

  1. Once you get the Base64 code for the image, you have to reference it in the CSS File as below

 

  1. Reference this CSS File as your Custom CSS file in the design studio dashboard and the alert icon will now be changed to a new icon

 

You can change the icons similarly for other alerts also using a different CSS class which can be found in the same F12 console.

 

 

Happy designing.

Naveen Mamidi

Tek Analytics BI Practice

 

 

Fiori look Web I Interface – BOBJ 4.2 SP4

With BI 4.2 SP4, the new Fiori look BI Launchpad is introduced. The new portal is addition and is not replacing the classic BI launchpad.

This Blog is intended to walk through the options available while viewing a Webi report in New BI Launchpad. Once the user Logs into New BI Launchpad, all the documents will be shows as tiles.


Comparison (Look) with Old BI Launchpad


Below are the quick options available in the new interface for the end user.


By default, the report opens in normal interface and user can switch to advanced interface by choice. Below Screenshot shows the quick options available.

By Switching to Advanced interface, all the interactive options will be active. Users can quickly Rank/sort the data in the report


Changing Prompt values



Unlike classic BI launchpad , there is no in-built design applet for new version. There is an option to “Open in designer” which will takes you to Old version through Opendoc link



Thanks

Karthik Addula

Principle Architect

Fiorified BI Launchpad

Quick picks

Url to accesshttp://server:port/BOE/BILaunchpad

Security Changes – Yes, new right needs to be granted

Old Version – No confusions please, Classic BI launchpad still available and can be used for many advanced functions. In my opinion , new launchpad is strictly a consumer interface.

First Look


Changing preferences

Go to User profile > Click on settings



The setting are very similar to classic BI Launchpad.

    Users can set preferred Landing tab

    Pixels for web-based look

    Hide/show totals for Analysis OLAP

By default the landing page navigates to Home Tab (with Show all selected). Users can change the documents to view as below


Context Menu

Context menu of Tile/document can be launched by clicking the 3 dots at bottom on each tile, which lists all the properties of the document

Context menu is similar to right-click on report in classic BI. Below options available under the context menu


Working with Categories

Document tiles in new BI Launchpad can be grouped by categories.( Standard BOBJ categories). Security can be configured at CMC level. Documents can be tagged to categoris from context menu.


Once the document is assigned to a category . changing the landing page view to categories will display all categories .


Viewing standard BI folders

Once you login to BILaunchpad, select Folders Tab which displays all the folders for which the account has access to.


 

Bharat Sunkari

Managing Partner – Tek Analytics

 

 

Certificate not trusted warning – How to Import wildcard certificate into Tomcat (BOBJ web application server)

The document discusses on how to enable https on BOBJ web application server and import the wild card CA trusted certificate.

Enabling the https

Enabling https on the web application (Tomcat in this case) requires generation of key store and self-signed certificates using in-built keytool or openssl

Using command line navigate to <installdir>\SAP BusinessObjects Enterprise XI 4.0\win64_x64\sapjvm\bin

Run the below command, this will generate a keystore.jks file at keytool home directory, copy it to another folder say (C:/SSL)

keytool -genkey -alias tomcat -keyalg RSA –keystore keystore.jks

Export the .crt self-signed certificate using the below command

keytool –export -alias tomcat -keystore c:\SSL\Keystore.jks -file c:\ssl\tomcat.crt

A self-signed certificate tomcat.crt will be stored under C:\SSL folder.

Stop the tomcat

Open server.xml file. Location – <Tomcathome>/conf

Uncomment the https entry and add the below parameter.

keystoreFile= “location of keystore.jks file” keystorePass=”password”

Restart the tomcat, now https links to BI-Launchpad and CMC should work

https://server:httpsport/BOE/BI

https://server.httpsport/BOE/CMC

Importing the wild card certificate

By following the above process, https links will work as expected. However, a certificate not-trusted warning will appear on the browser which is expected. The reason for this is Tomcat certificate is self-signed but not CA signed

To overcome this error, you can create .CSR file and send it to CA providers , who in return provide certified CRT files. Use the below commands to import the same

Keytool –import –trustcacert –alias tomcat –keystore keystore.jks –file cacertified.crt

If you have root certificate, please import the same into root alias.

Most of time, internal CA have wildcard certificates for the domain already, importing those will be little bit tricky. Importing the wildcard certificate into same alias will give “Public keys mismatch error”. Please follow the below process to import.

Using Openssl tool convert the required wildcard.crt certificate into pfx format

openssl pkcs12 -export -in wildcard.crt -inkey wildcard.key -out C:\SSL\wildcard.pfx

the above command will generate a wildcard.pfx under C:\SSL folder.

Stop the tomcat and make the below changes to https entries

keystoreType =”PKCS12” keystoreFile=”wildcard.pfx” keystorePass=”password”

Restart the tomcat.

All set, now the tomcat will be using the internal wildcard certificate.

 Karthik Addula

SAP BI reports on Hadoop

What is Hadoop?

Hadoop is an open source software platform for distributed storage and distributed processing of very large data sets on computer clusters built from commodity hardware.  Hadoop services provide for data storage, data processing, data access, data governance, security, and operations.

HDFS – Hadoop Distributed file system – data storage and processing layer, data will be store on multiple slave nodes with metadata on master node

Hive – Query tool for Hadoop, we can say SQL wrapper on HDFS

All the reporting suite in SAP BOBJ platform consumes Hadoop HDFS data via HIVE through BOBJ Universe. SAP Lumira has self-inbuilt Hadoop data connectors (Both Hive and HDFS)

Steps involved in creating BOBJ report over Hadoop Hive

1) Creating a Connection

2) Create a Data Foundation Layer

3) Publish the Universe

4) Create a Webi Report

Creating a Connection and Universe

In this article , I am using generic database connections. Theoretically, you can also use Apache/Simbha JDBC drivers to connect Hive (I any day prefer JDBC over ODBC)

  • Download Hadoop ODBC drivers (32bit) on to your local machine. ( 4.2 Client tools automatically installed the drivers on my machine J )
  • Configure the 32 bit Hadoop ODBC on the local machine. if the hadoop environment is kerborized , please make sure you installed MIT Kerberos and ticket is active.

  • Create a relation connection in BOBJ IDT

  • Create a Data foundation layer

  • Create a Business layer and export it to BOBJ repository

Creating a Webi report on top of Hadoop Universe

Once the Universe is exported, the reporting tools consume the universe as any other relational universe (Some exceptions to middleware drivers used)

In my next post, i will detail on consuming and exploring Hadoop data in Lumira

Thanks

Karthik Addula

 

Integrating Fiori with BOBJ – SSO

Fiori – BOBJ integration with SSO.

Requirement

Considering Fiori Launchpad as global point of entry for SAP applications, Users always want to see analytical content in the same place. To avoid users launching Business Objects documents via portal or BI Launchpad separately, this document outlines the process of integrating Fiori with Business Objects

Tools used

SAP Business Objects enterprise – BOBJ 4.1 SP4

Design studio – 1.6 SP02

SAP Gateway, Fiori

 Architecture

 

Configuration – (Assuming, the sapgateway protocol is https (which is most likely to be))

Configuring BOBJ Platform

Enable https on BOBJ web application server, no backend https is required.  I am using Tomcat in this example

  • Use Keytool in tomcat java home bin directory to create a self-signed keystore

 

keytool -genkey -alias tomcat -keyalg RSA –keystore keystore.jks.

This command will create a self-signed keystore named keystore.jks under keytool home   directoty

  • Please export self-signed certificate in .crt format.

3.Fiori

keytool -export -alias tomcat -keystore keystore.jks –file https.crt

This command will create https.crt in same directory.

  • Generate SSO certificates and keystore files using PCKS12 tool

Windows location : <INSTALLDIR>\SAP BusinessObjects Enterprise XI4.0\java\lib

Windows Command :  “<INSTALLDIR>\SAP BusinessObjects Enterprise XI 4.0\win64_x64\sapjvm\bin\java” -jar PKCS12Tool.jar -alias bobj -storepass password -dname CN=BOS

The above command generates keystore and cert.der files .

Stop the tomcat, navigate to <Tomcathomedir>/conf/server.xml . Edit the server.xml file as below

Uncomment the https entries and add below parameters.

keystoreFile=”keystore.jks” keystorePass=”password”

 

Restart the tomcat , https links should work .

Configuring Fiori server

Install the https.crt ( certificate generated from keystore.jks )  into fiori abap stack using the below command at OS level

sapgenpse.exe maintain_pk -p <Client_PSE> -a https.crt

Configure SAP gateway to forward the requests to BOBJ platform.

wdisp/system_<number> = SID=BOE, EXTSRV=https://bod:8443 SRCSRV=*:8000 SRCURL=/BOE/

On the ABAP front end server using T code Strustss002 , please import the SSO certifictes generated by BOBJ Platform.

Setting up single sign on on BOBJ Platform

1) Add the ABAP front end as the entitlement system in CMC

2) Import the required Roles and keystore in CMC

3) Setup SAP ABAP stack to send SAP Logon Tokens

Now create a Tile in Fiori Launchpad, redirecting to BOBJ Design studio Opendocument link.  The navigation should work seamlessly

 

Karthik Addula

 

BI on BI – Metadata Browsing – BOBJ 4.2 SP3

BI on BI – Metadata Browsing – BOBJ 4.2 SP3

BI on BI – metadata repository reporting

 

It is always a good practice and needy thing for IT managers to know what is happening with in their BI environment. Use cases to browse metadata of BI tool are quite many including report inventory, user analysis, Schedules and the metadata combined with Audit records this is make the house cleaning activities simple.

 

The CMS database, which holds the BOBJ metadata, has always been locked (encrypted to be precise) to query. Hence connecting via standard SQL tool was nit possible. We need to develop an SDK solution , in order to accomplish the same. The in-built admin tool has capability to query the CMS, but that is more HTML bases form kind of reporting.

 

With the new 4.2 SP3 , SAP released inbuilt CMS driver, which can be used for creating universes and can be consumes in bobj suite of reporting tools.

 

1

 

After successful installation of 4.2 SP3 client tools, you can find CMS database driver under SAP drivers.

2

 

Using the session token will use the current CMS session and credentials used for IDT login.

3

4

Creating the data foundation and unx is regular standard process.

5

6

 

Once the universe is published, you can use the native BOBJ reporting tools and consume the universe.

Below is the sample user – folder mapping report

7

Sample report – unx mapping

8

Here are the detailed documents on query Builder basics and CMS database tables

 

http://scn.sap.com/docs/DOC-42952

 

References: http://scn.sap.com/docs/DOC-74580

 

Karthik Addula – Tek analytics

New CSV datasource in Design studio 1.6

With the new Design Studio 1.6 release, it is now possible to create an application on CSV datasources for offline dashboarding and demos

However, the process is not as simple as said. This document is intended to provide step by step guide on how to use CSV as a datasource

Whenever we try to add a CSV as a data source, the application will not initialize the data source as it needs a metadata file along with actual CSV file. Below are the steps to easily create the CSV files for design studio usage

Step 1) Login to Design studio platform and create a data source(In the below screenshot connection is based on BICS )

Step 2) click on edit initial view ( Drag and drop the objects needed for CSV file)

Step 2- CSV design studio

 

Step 3) You will see new “ Extract to CSV” option in the query designer

Step 3- CSV design studio

 

Step 4) Select a folder to save the files

Step 4- CSV design studio

 

Step 5) 3 new files will be created under the folder specified in the previous step

Step 5- CSV design studio

 

Step 6) Now close and open the design studio in Local mode

Step 6- CSV design studio

 

Step 7) create a new data source “ select Add CSV Datasource” , navigate to the .CSV file created above

Step 7- CSV design studio

Step 7 A- CSV design studio

 

 

Step 8) files will be copied to application.

 

Step 8- CSV design studio

Happy Designing J

-Karthik Addula