Solved

Deploy and Execute SSL models in Tabular and/or PowerBi Premium

  • 26 October 2023
  • 8 replies
  • 130 views

Userlevel 3
Badge +1

When designing a model, in TX we have to options:

  • Deploy. It deploy all the model to the server without data
  • Execute. Reads the data from the DW and fills the model in the server.

After we have the model in the server, we can use external tools like Tabular Editor or Power Bi in the service to add custom measures that it’s not possible in TX, for example calculation groups (see video from @fwagner :

Until here, all ok. The problem appears wen you Execute the model again from TX that deletes all the external changes.

In think that it’s an issue.

icon

Best answer by fwagner 9 November 2023, 13:55

View original

8 replies

Userlevel 6
Badge +5

Hi @rvgfox 

What sort of custom measures is it that can’t be added to the normal model?

Also a option to only update custom measures, could that be a solution?

Userlevel 3
Badge +1

Hi @Thomas Lind No, as you can see in the video there are some types of measures that cannot be defined in TX, for example “calculation groups” or KPIs.

Until the update of October, calculation groups was not possible to define it in Power Bi Desktop neither.

I can use a PowerShell script for update the data in the model without delete the external changes, but I think that the execution part in TX must respect the external changes too.

Userlevel 2
Badge +3

Hi @rvgfox,

you’re right, at the moment the deployment from TimeXtender will always full-deploy the model and not respect external changes.

What does work is to have a Base model in TimeXtender (tables, measures, etc).

On top of that Base Model you can build your enhanced model, containing e.g. calculation groups.

MSFT calls that “Composite Models using Analysis Services Live Connection” and “model chaining”, it is described here: https://learn.microsoft.com/en-us/power-bi/transform-model/desktop-composite-models#building-a-composite-model-on-a-dataset-or-model

 

This way, the enhanced model will “Direct Query” the Base model for the actual data and measures, and only add the things TimeXtender can’t manage as of today, like Calculation Groups.

 

I hope that helps, let us know if that approach works for you.

Userlevel 3
Badge +1

Thanks @fwagner 

 

Currently I’m using a Tabular editor script to fix all the external changes and call it from powhershel.

 

It’s amazing, but it works.

Userlevel 2
Badge +3

@rvgfox yes, that also works :-)

Before Calculation Groups were released, I came up with a Measure generation system based on measure templates using TabularEditor (https://github.com/datadu-de/MeasureMagic) - it is really crazy what you can do with it!

Userlevel 1
Badge +1

Hi @rvgfox 

When you want to include calculation groups, do you script the entire model from the Tabular Editor then?
I'm thinking of the little property "Discourage Implicit Measures" that needs to be set to True to be able to bring in calculation groups. This property is not included in the model when it’s deployed from TimeXtender.

BR
Anders

Userlevel 3
Badge +1

Hi @anders.e.jonsson 

 

I’m using scripts in Tabular Editor to change the model that was generated by TX to include some things that reduce the size of the model too.

For example, change from Double to decimal data type, set the property IsAvailableInMDX to false in the hidden columns and so on.

Userlevel 1
Badge +1

Hi @rvgfox ,

OK, but then you will have to recreate the script in Tabular Editor every time you have made changes to the SSL in TimeXtender, I guess.
I’m looking for a way to create a script that adds calculation groups every time a new version of the SSL has been deployed from TimeXtender.
And that’s no problem with powershell scripts and External Executables, apart from the "Discourage Implicit Measures"  property. I haven’t been able to set that property without recreating the entire model with Tabular Editor.
BR
Anders

Reply