Lauren Luttrell on 14 May 2016 01:50:29
I would like ability to switch from loading data to direct query. I can switch from direct query to load, but not back. If I add features that aren't supported, I understand I may need to fix them, but I would still like this ability. Currently, I have to re-create the report from scratch.
- Comments (6)
RE: Switch from load data to direct query
I also like to switch from direct query to snapshot and from snapshot data to direct query in the powerbi.com website. The reason for this is sometimes, the gateway is down or under going maintenance. During this time the dashboard will not work. It is good if we can preserve a snapshot of the data so the dashboard will continue to work even the gateway is down. And switch it back to direct query when the gateway is up again.
RE: Switch from load data to direct query
Agreed, this should be an option. During development, or during subsequent user activity, it is not always apparent if the data set should be live, or have a scheduled refresh.
RE: Switch from load data to direct query
One of the feature I prefer Tableau over Power BI is the ability to switch between import (Tableau extracts) and Direct Query (Live).
This feature is essential for rapid development (direct query over a subset of data for rapid iteration and then change to import for performance or remains direct query for large data set).
RE: Switch from load data to direct query
I have added my vote to this post. I agree that the functionality to switch from Import mode to DirectQuery is a must have! Having to create reports from scratch is crazy. Especially since you can't do a copy/paste from one report to another!
RE: Switch from load data to direct query
Updating Queries to use DirectQuery (Wildly unsupported and a very Bad Idea™)
I stuck this in a post that's a little easier to read. But I'm leaving it here for when my blog inevitably dies along with me.
http://blog.teknikcs.ca/2017/03/25/converting-powerbi-desktop-reports-from-import-to-directquery/
Updating Queries
1. Attach a debugger to the PowerBI desktop application.
2. Replace all instances of the following bytes:
44 69 72 65 63 74 51 75 65 72 79 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 14
with
44 69 72 65 63 74 51 75 65 72 79 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 14
Updating Relationships:
There's two ways of going about this:
1. Be smart and write a little asm patch that replaces any calls to read the memory location to read back from your own location.
2. Be lazy like me and let pbi desktop reinsert the overwritten IgnoreCase setting (reason being that you can't just 'add space' to the memory of a loaded application for our new tag).
Since I am inherently lazy this is the second way.
Search the memory for the string below and replace it with the one after INCLUDING WHITESPACE (probably best to just edit in memory, whitespace out the rest of the unreplaced IgnoreCase option (hex 20))
PreferOrdinalStringEquality="true">
PreferOrdinalStringEquality="true" DirectQueryMode="DirectQuery" />
Now after saving and reloading (on a copy of the report obviously) PBI should ask to revalidate the queries and you'll need to remove unsupported functions like calculate and datetime stuff. I personally lost my computed columns and measures but everything else worked. If you search memory again PBI should have reinserted the IgnoreCase option in the relationships after the direct query option. If it didn't.... well.... like I said. Bad Idea!