Forum Discussion

vojtechremis's avatar
vojtechremis
Frequent Visitor
2 years ago
Solved

PowerBI Embedded with composite model

Hello everyone,

I am trying to use PowerBI Embedded with report which has semantic model with a Direct Query connection to another PBI semantic model. Specifically I am using .NET implementation provided by Microsoft (https://github.com/microsoft/PowerBI-Developer-Samples). But I am ending with XMLA endpoint error:

Cannot connect to dataset xxxxxxxxxx with embed token because XMLA permissions are off.

 

I wrote some information about adding XMLA_perrmision parameter to API calls or providing both dataset IDs. I tried both but end up with errors:
Generate token request for proxy model should include the core model ID.

and

Identity dataset xxxxxxxxxxxxx does not appear in the required datasets.

 

Does anyone have any experience with implementing PowerBI Embedded with this scenario (i think it is also called composite model) and could give an advice?

 

  • Anonymous's avatar
    Anonymous
    1 year ago

    Hi  vojtechremis ,

     

    Based on the information provided in your error message, you first need to make sure that the workspace capacity of the dataset in which this report is located also meets the prerequisites for implementing an XMLA connection, and that the workspace XMLA connection is open:

    Troubleshoot XMLA endpoint connectivity in Power BI - Power BI | Microsoft Learn

    Here's another post with the exact same error report with possible solutions, check out the link:

    Solved: Re: Cannot connect to dataset xxxxxxxx with embed ... - Microsoft Fabric Community

     

    Best Regards,

    Liu Yang

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

  • Hi, thank you very much. I was able to solve the problem by explicitly passing datasetID of parent semantic model and setting parameter xmlaPermission (in .NET implementation dataset´s IDs are being passed automatically based on ReportID). I found a bit of information in one of the threads you provided and here: Generate an embed token in Power BI embedded analytics - Power BI | Microsoft Learn.

     

    In case of anyone else will be dealing with the same problem, I had to:

    • in PbiEmbedService.cs: add parent datasetID to datasetIds before they are being passed to GenerateTokenRequestV2Dataset() method
    • when calling GenerateTokenRequestV2Dataset() add xmlaPermission parameter: GenerateTokenRequestV2Dataset(datasetId.ToString(), xmlaPermissions: XmlaPermissions.ReadOnly). Here I had to use newest PowerBI API (4.20.0).

3 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi  vojtechremis ,

     

    Based on the information provided in your error message, you first need to make sure that the workspace capacity of the dataset in which this report is located also meets the prerequisites for implementing an XMLA connection, and that the workspace XMLA connection is open:

    Troubleshoot XMLA endpoint connectivity in Power BI - Power BI | Microsoft Learn

    Here's another post with the exact same error report with possible solutions, check out the link:

    Solved: Re: Cannot connect to dataset xxxxxxxx with embed ... - Microsoft Fabric Community

     

    Best Regards,

    Liu Yang

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

    • vojtechremis's avatar
      vojtechremis
      Frequent Visitor

      Hi, thank you very much. I was able to solve the problem by explicitly passing datasetID of parent semantic model and setting parameter xmlaPermission (in .NET implementation dataset´s IDs are being passed automatically based on ReportID). I found a bit of information in one of the threads you provided and here: Generate an embed token in Power BI embedded analytics - Power BI | Microsoft Learn.

       

      In case of anyone else will be dealing with the same problem, I had to:

      • in PbiEmbedService.cs: add parent datasetID to datasetIds before they are being passed to GenerateTokenRequestV2Dataset() method
      • when calling GenerateTokenRequestV2Dataset() add xmlaPermission parameter: GenerateTokenRequestV2Dataset(datasetId.ToString(), xmlaPermissions: XmlaPermissions.ReadOnly). Here I had to use newest PowerBI API (4.20.0).
      • dom99's avatar
        dom99
        Advocate V

        Hi, I'm facing the same error of "Identity dataset xxxx-xxxxxxx-xxxxxx does not appear in the required datasets".
        Please could you provide more information on what you mean by 

        • in PbiEmbedService.cs: add parent datasetID to datasetIds before they are being passed to GenerateTokenRequestV2Dataset() method

        I'm not sure what you mean by adding it to datasetIds before they are being passed to GenerateTokenRequestV2Dataset()

         

        I'm doing exactly the same, power bi embedded using composite model