This project has moved. For the latest updates, please go here.


Deploy "Actions" to Production Server


We have a production server with a tabular model on it.  On my Visual Studio, I do not have the same thing as one the production server (things like partitions are different).

I want to use your tool to create "Actions" and then I would like to deploy them to the production server without reploying everything which could cause issues elsewhere.

Is there anyway to extract a script from your tool on the created "actions" and run that against the production server?
Closed Sep 11, 2013 at 9:34 PM by dgosbell
This is a limitation imposted by the Microsoft deployment APIs. There are 2 possible work arounds listed in the comments


dgosbell wrote Sep 11, 2013 at 9:27 PM

You don't need to do this with BIDS Helper this functionality is built in to SSDT. If you change the deployment processing option in the properties of your project to "Do Not Process" then SSDT will deploy just the metadata (which includes the action definitions).

If you would prefer a script you can use the SSAS deployment utility from Microsoft to generate an XMLA Alter script for the database.

Note there is no way to just deploy the actions, this is not supported by the Microsoft APIs - you need to deploy the whole database. BUT if you use an alter script the SSAS service does an internal diff and will only apply changes to the model. So if the actions are the only difference between your project and the production model then that is the only change that will be applied and you will not need to re-load the data.

If you have a different number of partitions on production the SSAS deploy utility has an option to deploy and retain the existing partitions.

wrote Sep 11, 2013 at 9:34 PM

furmangg wrote Sep 11, 2013 at 10:14 PM

If you are feeling unsure about using the deployment utility, you should be able to open the .bim file in notepad, go to the bottom, and search up for the <Actions> tag. (Note, not the <Actions> tag inside the BIDS_Helper_Tabular_Actions_Backups annotation.) If you want to script the production cube as an Alter, then add the <Actions></Actions> tag from the .bim file into the <Cube> tag of your Alter script, then run the alter, that should work. Backup the model first :-)

But I would agree with Darren that using the deployment utility is probably preferred.

furmangg wrote Sep 11, 2013 at 10:15 PM

Oh... and if you have perspectives, the steps I just mentioned won't assign the actions to perspectives... So Darren's suggestion is still better.

pasccout wrote Sep 12, 2013 at 5:24 PM

Thank you for your quick answers. I have used one of your approaches and it works great. I basically told SQL Server Management Studio to generate me an alter script of the ssas database and pasted in the Actions section of my .bim file.

I hope Microsoft eventually enhances their APIs so that we can update or remove only parts of the BiSM model.

Thanks again!