Export Data from Power Bi Report to Excel File Using RPA

Hi team,

Here’re are the high-level steps I would like to follow for my upcoming Automation.

  1. Extract data from Power BI report and export to Excel file
  2. Use data that was exported to excel file and upload and process in the app called Jesta row by row
  3. The process would continue until all the data in the excel is ingested and processed in the application.
    My question
  4. Is it possible to directly use data in Power BI as an input and process it in Jesta App? I wanted to make sure if we can use power Bi directly as a data source and process it in our app.
  5. If we have to export/ download data from power Bi to excel file first and then use excel data as an input to process it in our app. Can anyone help me design and let me know the possibilities? By the way, I use classic design.

Please let me know if you need more information/ explanation.
Thanks in advance.

@Anil_G , @fernando_zuluaga , @Yoichi , @Shanmathi and et al.

1 Like


To start with we can do from
Power bi as well…but it would be easy and better to use export file to excel and then read the data

So the steps would be like this…

  1. In initlaization state machine perform your power bi steps and downlod the file…and give the data yo Transactiondata variable…
  2. In get transaction data modify the get queu items to get each row from the io_transactiondata… for this use a if condition with in_transactionnumber<=io_transactiondata.rowcount then on then side assign transactionitem as io_transactiondata.rows(in_transactionnumber-1) and on the else side assign nothing…
  3. Now your jest app steps go into process xaml…

If you want to use queue…you can lod your excel to queue and the remaining wverything stays same

Hope this helps


@Anil_G thank you for your insight. Yes, I have to upload queue items into orchestrator. Also, fyi - I am considering the dispatcher to be integrated in performer in the same process. I am not very much clear on the downloading data from power bi to excel process part. Do I have to download and send to certain folder path or there in the debatable variable? I would greatly appreciate if you can send me a link or something like that. Thanks in advance.


The steps i mentioned to do in initialization state is to intigrate dispatcher into performer…it should be placed in the first run if condition…So basically create a xaml for power bi export and invoke it in first run if condition…

Then then you need to add the items to queue using loop or bulk queue items in the same first run if condition of initialization state

How are you accessing power BI?

are you accessing power BI db through db connection? if yes you will directly get the data to datatable and you should be good to use that to create your queue items


How are you accessing power BI? That’s a very good question. The subject matter expert (SME) who does this manually, usually exports data from Power BI interface in customized table format and downloads it to Excel. After that the processing in the application starts.


So can you get access to db by any chance?

If not…you need to try from interface itself…but try to check if there are any menu options which will help in gwtting the exports easily rather than clicking on some icons…


@Anil_G I know this is a very belated response. I confirmed from my team that we cannot access the DB, rather we will use power Bi template (customized report) for this particular process. Therefore, the input data is going to be directly from power Bi. I look forward to seeing the steps in this case. Thanks a lot!


Then this is more ui interactive now…

So we need to open power bi ui…then navigate to custome tables…select the report and export…

All these steps will be added in the initialization state of re framework…

Then read the data into transactiondata in the same initialization state…

Remaining is same as listed above


@Anil_G I take the exported xlsx data to a folder where the data temporary rests until the bot reads it, right? I just wanted to understand the designing better.


Yes…you would download the file to a temp location and then read it oimmediately…then can delete it or can upload to a shared location for reference.


@Anil_G I got it. I am going to give it a try. Thanks!

1 Like

@Anil_G I have two applications to go through initialiazation. The first one is Power BI to extract report from and the second one is the application is used to process row by row the data that was captured from power Bi. I am not sure what the steps could be sequence wise.
in short:

  1. Access PBI
  2. Extract Data
  3. Populate (process row by row) into another application called Jesta

I stuck in the initialization stage! The question is do I have to have separate InitAllApplication each for power BI and Jesta apps?



The second step of entering the data is not a dispatcher part right…its basically the main bot…or the transaction item…so the second one login will happen in initallapplications …and steps to enter data will be there in process .

As already built a process for power bi extraction it will be in initialization and we will add the data to queue immediately.so that data is present in queue by the time it reaches get transaction data



Thanks for the help. Let me try to make it clearer. I understand that the PBI data entry to Queue items happen in INIT state and the data processing into the main app (Jesta) happens at the Process State.

Here is what I failed to understand. In the INIT part there are two apps I am supposed to initialize, right? One is PBI and the second app (Jesta) is the one I use for the input data from PBI to be processed. For example, I have the following InitAllApplications that I used for Jesta login/out initializations.
image (43)

How about for PBI initializations? Can I do that before the workflow you see here? Where does that happen? Any thoughts? Thanks a lot!



So before initallapplications…you will have a if condition for first tun…

You should place the pbi part there itself… so that it runs right after the first time config is read and will never run again



Thanks a lot! One follow up question. is the initilization of PBI part of the first run for config or it should have its own first run condition?
Then, initallapplication follows. Please have a look at the following design.



It can be directly inside the first if first run condition itself…

If it is outside…it would run whenever a system exception occurs in process and it redirects to init state


This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.