Forum Discussion
How get data directly from SAP ECC
The answer is yes, it can be done. The 3 methods I know are:
1. SAP HANA connector (I have not tried the connector)
2. SAP BW connector via Power BI Desktop. I am assuming if you have SAP ECC, then there will be equivalent SAP BW cubes. You will need your SAP/IT area to provide you with the relevant credentials). My company has been using this method.
3. Ask IT to build a custom API that will work (ie. JSON with OAUTH2 security) - probably the best long term method, but will be difficult to convince IT.
The challenges you face will be getting SAP Admin OR IT to allow Power BI to connect to SAP ECC. Security will always be the number 1 reason they use. With the right governance and implementation, it won't be an issue.
Cheers,
Dan
I would say BW or HANA are not the approach we want to use ... the Power BI connectors for these sources are already defined. But they require ETL/staging to bring the desired data from ECC to BW or HANA.
The need is for DIRECT access to ECC data, ideally using SAP-sanctioned API's.
Up until last year, Power BI had a "BObj Universe" connector, which would be a desireable. But this connector was removed due to licensing issues (so I hear).
I think there is a market for this if someone would develop it.
Pete
- Fossgm8 years agoFrequent Visitor
Do you have the Netweaver Gateway installed? The one used for fiori apps. It is a free SAP product. You just need to install it. You can write simple report function modules in ECC (say for sales or inventory data) and then map them through the gateway. Super simple. Then you've just created a REST oData feed that can be consumed in PowerBI. Straight Up...now BW garbage, cubes, all that muck and no Hana required. I've done it numerous times...only downfall is if you are trying to read too much (like financials for five years).
- npowerbi7 years agoAdvocate II
Can you put some more explaination to this? I am also looking for similar functionality to connect to SAP ECC via Power BI. What you have mentioned makes more sense.
Appreciate if you can explain in little greater details.
- Anonymous7 years agoNot applicable
Hi,
There are couple of options that we can use and the decision will based on the method that you would like to use. But as a disclaimer, I would like to tell you that it is not a good idea for analysis, because SAP ECC's underlying database will be optimised for transaction processing with many table linkages (OLTP). If you import the data directly to Power BI, the performance will not be optimal. So the first step that we have to do is to convert the OLTP data into an OLAP data model (Star Schema, Snowflake Schema etc..) and then connect Power BI to this OLAP data source.
This OLAP data source can either be SAP BW (with or without BI/BO) or any other databased modelled as OLAP. If you choose not to use SAP BW, and bring the data into a database like SQL Server from ECC to normalise them / optimise for analysis, and then connect Power BI to this database, then we have two options.
Option I: Exporting SAP ECC data to another database.
SAP ECC has a transaction code - "DBCO". Using this, we can configure a connection to an external database and define a connection string for that. We can create as many connections as we want. Then write an ABAP program to create a report in SAP and instead of throughing the output as ALV, the output of the report can be written to this external database using this connection string. You can schedule a background job in SAP to run this report periodically and the output will be available in the external database like SQL server. In this SQL server, you may write queries, normalise them, optimise for reporting, create views etc... and connect Power BI to the tables and views in this database for reporting.
In this case, the data between SAP ECC and Power BI will not be live. It will be as per the frequency of the scheduled background job. Moreoever, the background job might put load on the ECC production client.
Option 2: Using SAP PI (Process Integration)
We can use SAP PI to sync the data in SAP ECC to another database or Power BI dataset. The dataset in Power BI can be used as the source of data for creating reports. In this case, the data from SAP ECC has to be pushed to the Power BI dataset or the external database through REST APIs, JSON etc...
From what I understand, the major difference between these two options is that, in Option 1, the method of data transfer is similar to Pull Method where it is based on a time schedule. Whereas in the 2nd Option, it is more like a Push Method which happens in real-time.
Another major consideration is what kind of SAP licensing you have and the option you choose to use has to be careful as not to violate any licensing terms.
Search Terms: "SAP transaction code : DBCO", "Power BI REST APIs", "SAP Process Integration", "Push data into Power BI dataset using JSON" , "SAP BW Connector for Power BI"
- Anonymous7 years agoNot applicable
Could you please specify the steps to connect SAP ECC to power BI.
- Anonymous7 years agoNot applicable
1. Launch Power BI
2. Select 'Get Ddata'
3. Select the Database Source that your instance of ECC is on. In my case its a SQL Server Database
4. Enter the Server Name that the database is on
5. Enter the Database Name
6. (I do it this way) Expand 'Advanced Options' and paste your SQL Statement
7. Click Ok and your done. Here is the output from my select statement.
As mentioned in previous posts this requires you to have a full use database license. There are instances where the database that SAP runs on is a runtime license which means that the application is the only one that can access the database. This is licensing issue more than a technical issue. If you have a runtime license you can still technically do the above but from a licensing standpoint you'll most likely run into issues with SAP.
Also, you'll need your DBA or who ever manages your databases to create a Read-Only databse user that you can use to login with. I don't know what else to add, your simply connecting to a database just like any other database.
Please note that we do have a Full-Use SQL Server Database License.
Hope that helps.