Forum Discussion

otmaka98's avatar
otmaka98
Frequent Visitor
1 year ago

How to Rebind the Report's Datasource Before Deploying to a Different Customer Without PBI Desktop

 

I am following a multi tenant approach to PowerBI, where each customer will have their own workspace. In each workspace, there will be an identical set of semantic models and reports. 

 

Using the PowerBI API, I was able to achieve this easily with the semantic models. For each one: I deploy the .pbix file, update the parameters, and bind it to a gateway. For reports however, I am struggling to do so. The issue seems to be that the reports are published with the dataset connection. So for example, when developing a report I used customer A which points to a semantic model in customer A's workspace. 

 

Once satisfied, I publish the report to customer A's workspace and can then go download the .pbix file. However when I want to deploy .pbix file to customer B, it fails because customer B cannot access the datasource that is in customer A's workspace & provides the following error message:

"""

We couldn't import data from
ServerError_PowerBIInsufficientPermissionsOnProxyModelOrCompositeModelNotExistException

"""

 

 

 

Are there any suggestions for this workflow? Updating the datasource manually in PowerBI Desktop is not a scalable approach and we shouldn't be expected to do so. 

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi otmaka98 

     

    Here are some suggestions that might help you:

    Implementing service principal profiles can help manage multiple tenants more efficiently. This feature allows you to create and manage Power BI content for each customer tenant, providing better scalability and security:

    Develop scalable multitenancy applications with Power BI embedding - Power BI | Microsoft Learn

     

    Utilize the Admin API to manage workspace access and automate the addition of necessary permissions. This can help ensure that each tenant has the appropriate access to their respective datasets and reports.

    Use service principal profiles to manage customer data in multitenant apps - Power BI | Microsoft Learn

    Workspace Management in the Admin Portal | Microsoft Power BI Blog | Microsoft Power BI

     

    Here's a blog may help you:

    Duplicating workspaces by using Power BI cmdlets | Microsoft Power BI Blog | Microsoft Power BI

     

    Best Regards

    Zhengdong Xu
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

  • otmaka98's avatar
    otmaka98
    Frequent Visitor

    I am following a multi tenant approach to PowerBI, where each customer will have their own workspace. In each workspace, there will be an identical set of semantic models and reports. 

     

    Using the PowerBI API, I was able to achieve this easily with the semantic models. For each one: I deploy the .pbix file, update the parameters, and bind it to a gateway. For reports however, I am struggling to do so. The issue seems to be that the reports are published with the dataset connection. So for example, when developing a report I used customer A which points to a semantic model in customer A's workspace. 

     

    Once satisfied, I publish the report to customer A's workspace and can then go download the .pbix file. However when I want to deploy .pbix file to customer B, it fails because customer B cannot access the datasource that is in customer A's workspace & provides the following error message:

    """

    We couldn't import data from
    ServerError_PowerBIInsufficientPermissionsOnProxyModelOrCompositeModelNotExistException

    """

     

     

     

    Are there any suggestions for this workflow? Updating the datasource manually in PowerBI Desktop is not a scalable approach and we shouldn't be expected to do so.