Updates

The following are some of the new features and improvements that you will find in v2.14 of DAX Studio

Blank Canvas Help Text

Help text has been added when the edit control is empty. This is designed to help people that are new to writing DAX queries. There are links to an article with information on writing DAX queries as well as a link to display the query builder. This help text will automatically fade away as soon as you start typing and once you no longer need it you can turn it off.

New Privacy Settings

There are new privacy settings now available in the options. We don’t recommend enabling these for general use, but if you are working with data of a highly sensitive nature and you need to ensure that DAX Studio does not send any information externally you can enable these options.

Note: DAX Studio never sends any data from your model externally.

However if the text of your queries contain sensitive information such as customer names or account numbers and you choose to use the Format DAX option that query text gets sent to daxformatter.com. And if you happen to suffer a fatal crash the crash reporter includes the option to send a screenshot and if you don’t untick the option to include the screenshot there maybe some data visible or some information in the query text.

So you as the user have complete control over any information that is sent externally. But if you work in a highly secure environment and you need to ensure that no accidental information leakage can occur then you can enable some or all of these options.

Enabled Discussions on the Github site

Discussions are a new feature on Github and this now gives us a place where people can ask questions or make suggestions without having to log a formal issue.

Multiple Queries Detected dialog

The “Multiple Queries Detected” dialog will appear when pasting in queries from Power BI Performance Analyzer that came from a Composite model. Such queries will sometimes have 2 queries where the second query is prefixed with a // SQL Query comment. The query after this comment will sometimes be SQL however if your model is a composite model over AzureAS or Power BI it might be in DAX.

New Server Timings Options

There are new options for Server Timings that help make the xmSQL text easier to understand. These new processing options are enabled by default and strip out internal IDs, Aliases and Lineage guids and highlight Formula Engine callback operations to make these events easier to understand

Other Miscellaneous Updates

  • Help Ribbon updates
    • Updating link in help ribbon to Analysis Services forum
    • Adding link to Discussions https://github.com/daxstudio/daxstudio/discussions
  • Query Builder moved out of preview status
  • Benchmarking moved out of preview status
  • Adding Query Builder documentation to daxstudio.org
  • Updating AdomdClient and TOM references to v19.14
  • Added retry logic when fetching Database and Model lists
  • #450 Database Last Updated Datetime is now shown in local time instead of UTC (and the timezone information is displayed)
  • Added keyboard short cuts in metadata pane to work with Query Builder
  • #492 added description to function tooltip

Fixes

  • Fixed crash when doing Replace All with an invalid RegEx expression
  • Fixed crash when clicking Refresh Metadata after connection has dropped
  • Fixed #469 Server Timings busy spinner was activating incorrectly when doing Clear Cache
  • Fixed #467 Database Name was being incorrectly injected into all new connections when DAX Studio was opened from External Tools in Power BI Desktop
  • Fixed #466 PBI XMLA connections not being parsed correctly
  • Fixed #457 crashing on startup after setting view hidden objects = false in options
  • Fixed #356 Clear Cache throwing errors against PBI XMLA endpoint
  • Fixed #449 Connection lost during Benchmarking
  • Fixed a trace timeout issue when connecting to PBI XMLA endpoint (sometimes it is still necessary to increase the default timeout to 90 seconds or more)
  • Query Builder
    • Fixed a bug when filtering dates that reported an error parsing an empty string
    • Added the ability to drag KPI components into the Query Builder
    • Fixed a crash when trying to alter the expression for a dynamic format string for a calculation group item
  • Fixed hang when pasting in code with extremely long lines (tens of thousands of characters)
  • Fixed #451 up/down keys not work consistently
  • Fixed #446 Aggregate rewrite events causing an error
  • Fixed #444 to use correct culture in csv export
  • Fixed #445 defaulting the selected model to the base model not the first perspective
  • Fixed an issue with the trace layout options not displaying
  • Fixed a bug with swap delimiters feature and block comments
  • Fixed drag/drop of text not working within editor
  • Fixed #475 proxy auth error when entering AAD credentials
  • Fixed #485 Swap delimiters incorrectly affecting functions with periods in the name
  • Fixed #486 Define Measure not using Separator specified in Options
  • Fixed #497 Define Measures not working when connected to a model with active translations
  • Fixed #499 “Show Objects that Reference this Column” feature did not include table name.
  • Fixed #501 avoiding bug with EXCEPT function in Query Builder

Miscellaneous Crash fixes

In addition to the fixes listed above a number of other fixes have been made that should address some issues that came in via crash reports, but the majority of these reports were submitted anonymously. What this means is that for many of them it is impossible to verify that the fix has worked as we have no steps to reproduce the issue and the fix is based on assumptions and best guesses of the root cause of the issue.

If you are experiencing a regular crash or issue I would encourage you to open a bug on github so that I can help resolve your issues.