TabularEditor / TabularEditor3

Bug reports, feature requests, discussion and documentation for Tabular Editor 3 (commercial version).
65 stars 7 forks source link

Detect Schema Change not working with some tables #970

Open edhans opened 1 year ago

edhans commented 1 year ago

Describe the issue I created a Shared Expression that was a connection to a dataflow. It contained just the necessary navigation steps.

Then I created a table that used that dataflow as the source, and then selected a few columns. When I right-click to detect schema change, it says there are no changes detected. But my table has NO columns, so there should be a lot of changes.

If I load the M code from the Shared Expression into the table partition directly, detect schema change works. However, I need it in the Shared Expression because there are some changes that I will ultimately need to do that will affect the table and other downstream Shared Expressions and Tables.

One thing that is interesting is when I tell it to detect schema changes, it immediately comes back with no schema changes detected. It doesn't show the "detecting changes" dialog box while it is thinking. So something is either broken, or I have an improper setting. The Shared Expression is set to Kind: M, the Table property Mode: Import, and the partition Mode is set to Import, though it was Default when I started, but changing to Import didn't help.

image

So either there is some sort of bug, or I am missing something in the settings. I am constantly creating tables using Shared Expressions as the source, so a bit stumped.

Which version are you currently using? Tabular Editor 3.9 Enterprise

To Reproduce Power BI Service

Steps to reproduce the behavior:

  1. Create Shared Expression with connection to dataflow. I used the PowerPlatform.Dataflows() connector. Set the kind to M
  2. Create a table that is essentially let Source = #"Shared Expression" in Source
  3. Save model
  4. Right-click on the table and Detect Schema changes.

It should bring in the columns. It isn't.

Windows 10.

Full table properties: image

full partition properties image

full shared expression properties: image

edhans commented 1 year ago

I am leaning towards this is a bug with how the PowerPlatform.Dataflows connector is read. If I use PowerBI.Dataflows in the shared expression it works, or if I use PowerPlatform.Dataflows in the table partition directly it works.

DBojsen commented 1 year ago

Hi @edhans

This seems like a bug - we'll investigate and get back to you.

Best Regards

David - Tabular Editor 3 Support

edhans commented 1 year ago

Thanks David. I've done a little more testing and here is what I have witnessed so far:

My current workaround is to use PowerBI.Dataflows() to get the table schema set, then swap it out for PowerPlatform.Dataflows() when I need to take advantage of query folding against a dataflow with the enhanced compute engine turned on. If I subsequently need to make any other minor changes (adding removing < 3 columns or so) I do it manually.