Accessing SAP BusinessObjects from Tableau using Web Data Connector
October 1, 2015
, , , , , , , , , , , , , , ,

Regardless the sad facts I just can’t hate Business Objects. It belongs to my professional career: ugly but useful Web Intelligence reports, long running bursts for personalized mega excels – I still have nostalgic emotions. But what is bittersweet memory for me, is an everyday encounter for many of my customers. They still manage large SAP BusinessObjects portals in addition to their Tableau heaven. Up till now there were no good ways to integrate these platforms without any 3rd party tool but with Tableau 9.1 WDC this isn’t the case anymore. Let’s see how can we access BOBJ data from Tableau and how it works behind the scenes.

UPDATE: I released a new SAP Business Objects data connector that connects to BO Universes directly. It’s free and open source. You can get more information here.

How to use the connector? It’s as simple as with any other connector. Just paste the WebI or QaaWS/DaaWS proxy address URL to the WDC connection window with your BusinessObjects credentials and the data will be loaded immediately:

Loading SAP BusinessObjects to Tableau

Loading SAP BusinessObjects to Tableau

How to publish Reports and Queries with Tableau?

In SAP Business Objects there is an option to publish the reports as Web Services. This enables us to query the data behind and make it accessible in a more convenient format than soap.

First let’s se how to publish a Web Intelligence report as a web service. It is quite straightforward after one figures out that only the applet and the rich client are capable of doing it and where to right click. To get the Publish as a web service option you need to right click on the edge of the data in the report.

Publishing Webi Reports

Publishing Webi Reports

Copy the newly published web service URL and paste the WSDL URL to our WDC and you are ready to go.

How it works?

We’ve already showed some pretty cool Web Data Connectors for Tableau such as Github commits and MongoDB. With this BusinessObjects web connector things are a bit different. It has the usual SAP complexity. Fortunately there is an npm package (yes, we built that) that takes the burden of dealing with SAP BO Web Services off of our shoulders. We could use this package right from our WDC javascript but there are some problems with that approach.

  1. The package connects to another server for data and it can cause CORS to block the data from there.
  2. This package uses some other packages and their browserified, combined size can be huge.

To get rid of these issues we’ve added two endpoints to our web server that just do the proxying of the data:

In the WDC code we only need to set up only two callbacks, the rows and the columns of the Starschema WDC Base object:

We’ve also set up the state machine and the Jade template for getting WSDL url and credentials as user input. They can be found in the Starschema Tableau Web Table Connector repository.

If you need any help to set this up just leave a comment or open an issue on github.

Tamás Földi

Related items

/ You may check this items as well

sync frelard

Tableau Extensions Addons Introduction: Synchronized Scrollbars

At this year’s Tableau Conference, I tried t...

Read more

Tableau External Services API: Adding Haskell Expressions as Calculations

We all have our own Tableau Conference habits.  M...

Read more
Scaling Tableau Image

Scaling out Tableau Extracts – Building a distributed, multi-node MPP Hyper Cluster

Tableau Hyper Database (“Extract”) is ...

Read more