Skip to Content
author's profile photo Former Member
Former Member

Expose SAP BO universe as a ODATA service

Hi Experts,

We are working on a requirement to connect to SAP BusinessObjects Universe from Power BI.

A) I have gone through the below 2 articles to get a high-level understanding of the steps required -

B) Below are the steps that I have performed -

1) Enabled the WACS Server

2) Downloaded the Semantic Layer SDK Samples and imported into Eclipse

3) Modified the sample code for an existing universe. This code is performing the following activities with the use of Semantic Layer RESTFUL Web services -

3.a. Logs on to BIP platform using RESTFUL Webservice

3.b. Creates a query using RESTFUL Webservice (In response we get the Query ID)

3.c. Get the data of that query using the ODATA URL as below :

GET <RESTFUL BASE URL>/queries/<queryID>/data.svc/<flowName>

3.d. Deletes the query using the RESTFUL Webservice as below :


C] Below are my queries -

1) What will be the ODATA URL that will be exposed to external applications ?

2) We tried giving ODATA URL as below, but it was giving authentication error - <RESTFUL BASE URL>/queries/<queryID>/data.svc/<flowName>

3) Can you please share a sample code, if anyone has it with them. High-level description would also be great.

Any help or pointers are really appreciated.

Thank you.



Add a comment
10|10000 characters needed characters exceeded

Related questions

2 Answers

  • Posted on Jul 11, 2017 at 09:28 PM

    Hi Monish,

    in response to your questions:

    1: the query URI to expose to external applications is from your Step 3c.

    2: the queryID that you generate when creating a query (step 3b) is only available during the logon session used to create the query. It is not stored anywhere to be accessed at a later date. Once you delete the query, it needs to be re-created to be accessed.

    Once the session is logged off or the logontoken expires, the query is not usable which most likely explains the authentication error.

    3. it sounds as though you have all of the right code. you will just need to keep the session active or save the data to disk to make it available to another application.


    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Dec 19, 2018 at 12:18 AM

    Hi Ravi,

    You could save the data to disk as a CSV and then consume that with the application. This would no longer have the data as an OData feed.


    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.