Forum Discussion

Berty's avatar
Berty
Frequent Visitor
9 years ago
Solved

Cloning and Rebinding Reports for powerbi embedded

I'm trying to create a feature where I can rebind one report interchangeably with multiple datasets.    What do I need to enable to do this? I've tried a couple of ways, but none seemed to work. Fo...
  • TedPattison's avatar
    TedPattison
    9 years ago

    The one thing I do not see in this thread is an indication of whether you are working with imported datasets or with DirectQuery-mode datasets. That will make all the difference in finding the right answer. I answered another post yesterday that ocvered the same issues.

     

    If your project is based on a DirectQuery mode dataset then you can upload the PBIX file to create a new dataset-report pair and then update the datase connection string and configure the credentials for database access using using the .NET Power BI API. It turns out that you don't even need to create multiple PBIX files. You can use a single PBIX file to crate as many imports as you need.

     

    If your project is based on an imported dataset is is critical to know one important fact. Power BI Embedded does not yet support server-side dataset refesh on imported datasets. That means you must update the PBIX file using Power BI Desktop and then overwrite the old PBIX import in the Azure workspace with the new version. The other big painpoint we have here is that there is no automated approach to regenerate a PBIX file with the most recent data. You have to fire up BI Desktop and build the PBIX file manually.

     

    The bottom line is that today you cannot completely automate the PBIE report publishing process you need if you are using imported datasets. You need to open Power BI Desktop and refresh the data for a specific client before uploading the PBIX file into Power BI Embedded. However, if you takle this approach, I would definitely look at he previous post by @Eric_Zhang and take his suggestion to make use of query parameters to parameterize away the connection string that will change across the PBIX files for each client.