Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Hello!
I have got the following scenario:
I tried to create a nested API call from a column of the "Sales" table using the following code in the Query Editor:
=Table.AddColumn(#"context", "test column", each Json.Document(Web.Contents("https: //webapiurl?$filter=client_id eq " & [client_id], [Headers=[accept="application/json"]])))
After adding this step, the result was just fine, but the following message appears in the query editor:
"This step results in a query that is not supported in DirectQuery mode." [Switch all tables to Import mode]
When trying to apply the query changes, I get the following error:
"Vehicle
This query contains transformations that can't be used for DirectQuery."
I also tried to use the OData.Feed() function instead of using Json.Document(), and also tried to create a Power Query function to call the API, but the result is still the same.
I thought that the composite models functionality would enable me to do that, but it looks like it is not possible.
Any ideas on how to accomplish this goal without changing the model to Import mode?
Thank you all in advance!
Solved! Go to Solution.
HI @Anonymous ,
>>I need that to be loaded to the model only when a user tries to see data from a specific client.
It is impossible to achieve dynamic data import based on report view options, you can use query parameter to design parametrized query but it still need to manually change parameters.
Deep Dive into Query Parameters and Power BI Templates
In my opinion, I'd like to suggest you to import whole records and enable RLS based on current username to filter unmatched records.
Regards,
Xiaoxin Sheng
Hi @Anonymous ,
In fact, this notice not related to your connector. When you works with directquery mode, power bi will limit advanced operations in query edit.
You can extract 'client id' list as new query and do invoke operation on new query table with composite mode.
Use composite models in Power BI Desktop
Regards,
Xiaoxin Sheng
@v-shex-msft wrote:Hi @Anonymous ,
In fact, this notice not related to your connector. When you works with directquery mode, power bi will limit advanced operations in query edit.
You can extract 'client id' list as new query and do invoke operation on new query table with composite mode.
Use composite models in Power BI Desktop
Regards,Xiaoxin Sheng
Hi @v-shex-msft ,
Thanks for your reply!
The issue to me is importing the raw data from the API. I need that to be loaded to the model only when a user tries to see data from a specific client. And that data should be removed after certain time. I was thinking about combining Power BI and Logic Apps, but could not come up with a solution yet.
Best regards!
HI @Anonymous ,
>>I need that to be loaded to the model only when a user tries to see data from a specific client.
It is impossible to achieve dynamic data import based on report view options, you can use query parameter to design parametrized query but it still need to manually change parameters.
Deep Dive into Query Parameters and Power BI Templates
In my opinion, I'd like to suggest you to import whole records and enable RLS based on current username to filter unmatched records.
Regards,
Xiaoxin Sheng
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.
User | Count |
---|---|
100 | |
69 | |
42 | |
37 | |
30 |
User | Count |
---|---|
157 | |
89 | |
62 | |
46 | |
40 |