Forum Discussion

ElenaN's avatar
ElenaN
Icon for Resolver V rankResolver V
5 years ago

Dynamics 365 BC OData v4 PBI Service error

Hello all,

 

Since the update of Dynamics 365 BC to v18 we can only use ODATA V4 with our PBI reports. When the ODATA v3 URL was modified to the ODATA v4 URL in our PBI reports, the refresh in PBI Desktop works, however when the report is published to the Service, and we are asked to enter credentials, after choosing OAuth2 authentication method and entering the credentials we get this error message:

"Cannot process the request because the default company cannot be found. You can specify a default company in the service configuration file, or specify one for each tenant, or you can add a query string in the form of "company=[name]". You can see the available companies by accessing the default OData web service, Company. For more information, see "OData Web Services" in Help"

 

Have any of you encountered this situation? Do you have any hints how to solve this?

 

Thank you in advance!

EMN

4 Replies

  • v-janeyg-msft's avatar
    v-janeyg-msft
    Icon for Community Support rankCommunity Support

    Hi, ElenaN 

     

    There are indeed many differences between OData v4 and OData v3 URLs. If the problem occured after updating Dynamics 365 BC, it may be that OData v3 is not supported. But according to the prompt of the error message, it seems that something needs to be configured or changed in the url. Have you clicked 'help' for more information?

    What are the differences between the two versions of the OData url, Can you share it? 

    I found a document for reference:

    URL Conventions (OData Version 3.0) · OData - the Best Way to REST

    If it doesn't solve your problem, please feel free to ask me.

     

    Best Regards

    Janey Guo

     

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

  • This is an old post but I thought it would be helpful to others to put an answer here.

     

    I ran into this issue as well and what resolved it for me was to adjust the OData string.

     

    When you put a specific webservice URL directly into Power BI you end up with something like this:

    let
    Source = OData.Feed("https://api.businesscentral.dynamics.com/v2.0/TENANT/ENVIRONMENT/ODataV4/Company('COMPANY NAME')/WEBSERVICE NAME", null, [Implementation="2.0"])
    in
    Source

     

    I had to put the webservice name on a separate line like this:

     

    let
    Source = OData.Feed("https://api.businesscentral.dynamics.com/v2.0/TENANT/ENVIRONMENT/ODataV4/Company('COMPANY NAME')/", null, [Implementation="2.0"]),
    WEBSERVICE NAME = Source[WEBSERVICE NAME]
    in
    WEBSERVICE NAME

     

    You can build this by putting the connection string in without a specific web service and it will bring up a query with all of the available web services.  You can then select one from the list and it will build the above for you.

     

    After doing this I no longer received the error.

  • PabloVR's avatar
    PabloVR
    Frequent Visitor

    Just to adding to what Shane mentions, we had the same error but his solution didn't work for us. The problematic bit was the '%20' in the URL beacuse of a blank space in the Company Name.

     

    Our Business Central app was giving us the ODATAv4 URL like this too: 

    https://server.domain.com:port/instance-name/ODataV4/Company('Company%20Name')/ 

    This URL worked fine in Power BI Desktop but after uploading to Power BI service we were getting the same error message.

     

    The only solution we've found so far is to change the '%20' back to a space ' ':

    https://server.domain.com:port/instance-name/ODataV4/Company('Company Name')/ 

    This URL works in both Desktop and Service

     

    Cheers