Build Analysis Services Projects (SSDT)
In SQL Server Data Tools (SSDT), you build an Analysis Services project much like you build any programming project in Visual Studio. When you build the project, a set of XML files are created in the output directory. These XML files use Analysis Services Scripting Language (ASSL), which is the XML dialect the client applications including SQL Server Management Studio and SQL Server Data Tools (SSDT) use to communicate with an Analysis Services instance to create or modify Analysis Services objects. These XML files are used to deploy Analysis Services object definitions in an Analysis Services project to a specified Analysis Services instance.
Building a Project
When you build an Analysis Services project, SQL Server Data Tools (SSDT) will build a complete set of XML files in the output folder containing all of the necessary ASSL commands needed to build all of the Analysis Services database objects in the project. If the project was previously built and incremental deployment specified for the active configuration, SQL Server Data Tools (SSDT) will also build an XML file containing the ASSL commands to perform an incremental update to the deployed objects. This XML file is written to the ..\obj\<active configuration> folder for the project. Incremental builds can save time when deploying and processing a very large project or database.
You can use the Rebuild All command to ignore the incremental deployment setting.
Building an Analysis Services project validates the object definitions in the project. The validation includes any referenced assemblies. Build errors appear in the Task List window, along with the Analysis Management Objects (AMO) error text. You can click an error to open the designer that is required to fix the error.
Successful validation does not guarantee that objects can be created on the destination server during deployment or processed successfully after deployment. The following issues can prevent successful deployment or processing after deployment:
Security checks for the server are not performed, so locks can prevent deployment.
Physical locations are not validated on the server.
Details of data source views are not checked against the actual data source on the destination server.
If validation is successful, SQL Server Data Tools (SSDT) generates the XML files. After the build, the output folder will contain the files described in the following table.
|Files (in bin folder)||Description|
|Projectname.asdatabase||Contains the ASSL elements that define metadata for the objects in the Analysis Services project in a deployment script file. This file is used by the deployment engine to deploy the objects to an Analysis Services database.|
|Projectname.configsettings||Contains configuration settings using during deployment that you can modify directly or in the Analysis Services Deployment Wizard (for example, the connection string for the data sources).|
|Projectname.deploymenttargets||Contains the destination settings used during deployment that you can modify directly or in the Analysis Services Deployment Wizard (for example, the server and database names)|
|Projectname.deploymentoptions||Contain various option settings used during deployment that you can modify directly or in the Analysis Services Deployment Wizard (for example, storage locations)|
|Assemblyname/dllname.dll||Separate folders for each referenced assembly; each folder contains the DLL for the assembly, any referenced assembly, and any associated .pdb files for output debug information.|
|Files (in obj folder)||Description|
|<Configuration Name>\LastBuilt.xml||Contains the time stamp and hash code that identifies the last time the Analysis Services project was built.|
These XML files do not contain <Create> and <Alter> tags, which are constructed during deployment.
Referenced assemblies (excluding standard system and Analysis Services assemblies) are also copied to the output directory. When references are to other projects in a solution, those projects are built first, using the appropriate project configuration and build dependencies established by the project references, and then are copied to the project output folder.