Skip to content

Commit 3ec3f29

Browse files
committed
adding linked server and SSIS
1 parent 9db2000 commit 3ec3f29

11 files changed

+1648
-3
lines changed
12.5 KB
Binary file not shown.
Binary file not shown.

README.md

+23-3
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Though Power BI Desktop appears to work well, the Power BI website has a pretty
4040

4141
#### ResumeAzureAS
4242

43-
The ResumeAzureAS.json file contains an Azure Data Factory v2 pipeline which is able to resume Azure AS looping until the resume is complete. It uses only Web Activities. There are no dependencies on .NET custom activities or Azure Logic Apps or SSIS.
43+
The ADFv2/ResumeAzureAS.json file contains an Azure Data Factory v2 pipeline which is able to resume Azure AS looping until the resume is complete. It uses only Web Activities. There are no dependencies on .NET custom activities or Azure Logic Apps or SSIS.
4444

4545
Set the following parameters upon execution of the pipeline:
4646
* **TenantID** - The GUID identifier for your Azure Active Directory (AAD) tenant. In the Azure Portal go to the Azure Active Directory tab and the Properties tab and copy the Directory ID property.
@@ -55,19 +55,39 @@ The AAD application must be granted contribute permissions in the Access Control
5555

5656
#### ProcessAzureAS
5757

58-
The ProcessAzureAS.json file (along with dsHttpApiAzureASRefreshes.json and lsHttpApiAzureAS.json files) show how to perform a full refresh of the data inside an Azure Analysis Services model. Unlike other solutions which leverage external services like Azure Logic Apps or custom ADF .NET activities running in Azure Batch, this approach uses only built-in activities which depend on no external services other than Azure Analysis Services.
58+
The ADFv2/ProcessAzureAS.json file (along with ADFv2/dsHttpApiAzureASRefreshes.json and ADFv2/lsHttpApiAzureAS.json files) show how to perform a full refresh of the data inside an Azure Analysis Services model. Unlike other solutions which leverage external services like Azure Logic Apps or custom ADF .NET activities running in Azure Batch, this approach uses only built-in activities which depend on no external services other than Azure Analysis Services.
5959

6060
Set the following parameters upon execution of the pipeline:
6161
* **TenantID** - The GUID identifier for your Azure Active Directory (AAD) tenant. In the Azure Portal go to the Azure Active Directory tab and the Properties tab and copy the Directory ID property.
6262
* **ClientID** - The GUID identifier for the AAD application (sometimes called service principal). The ClientID is sometimes called the ApplicationID. In the Azure Portal go to the Azure Active Directory tab, the App Registrations tab, if you don't see the application in question, choose All apps from the dropdown. Click the application in question and copy the Application ID from the app's blade. If you haven't created the app yet, then follow these [instructions](https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal).
6363
* **ClientSecret** - The secret key used to authenticate the AAD application. See these [instructions](https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal) for how to create the app and the key.
6464
* **SubscriptionID** - The GUID identifier for the subscription the Azure Analysis Services instance is running from. To get this ID, go to the Subscriptions tab of the Azure Portal.
65-
* **Region** - The name of the region (e.g. southcentralus) the Azure Analysis Services instance lives. This region is used as the beginning of the asazure:// server name for your server.
65+
* **Region** - The name of the region (e.g. southcentralus) where the Azure Analysis Services instance lives. This region is used as the beginning of the asazure:// server name for your server.
6666
* **Server** - The name of your Azure Analysis Services instance. This is not the full asazure:// URI. This is just the final section saying the name of your server.
6767
* **DatabaseName** - The name of the database in Azure Analysis Services you wish to process.
6868

6969
The AAD application must have admin permissions in SSAS. This is not accomplished through the Azure portal but through SQL Server Management Studio as described [here](https://azure.microsoft.com/en-us/blog/automation-of-azure-analysis-services-with-service-principals-and-powershell/).
7070

71+
72+
#### LinkedServer
73+
74+
Connecting to Azure Analysis Services with a SQL Server linked server enables a number of scenarios:
75+
76+
* Loading into SQL Server the results from a DMV (dynamic management view) to extract lists of measures or tables
77+
* Loading into SQL Server the results from a MDX or DAX query
78+
* Executing TMSL commands to refresh the data in Azure Analysis Services models
79+
80+
The "LinkedServer/SQL Linked Server to Azure Analysis Services.sql" file shows an example of the linked server setup and how to use it.
81+
82+
83+
#### SSIS
84+
85+
If your ETL is orchestrated in SQL Server Integration Services, it is only natural to refresh your Azure Analysis Services models using SSIS. We prefer C# script tasks for cube processing over the Analysis Services Processing command because the Analysis Services Processing command hardcodes the SSAS database at design time while the C# code can process the database identified in the connection string such that runtime configuration can cause it to process a different database.
86+
87+
* **SSIS/ProcessAzureAS-UsernamePassword.dtsx** - An SSIS package which authenticates using a username and password (which does not have multi-factor auth enabled) and performs a full refresh of the model. This package uses a C# script task. Follow the instructions in the annotation once you open the SSIS package.
88+
* **SSIS/ProcessAzureAS-App.dtsx** - An SSIS package which authenticates using an AAD application (ClientID and secret). This package uses a C# script task. Follow the instructions in the annotation once you open the SSIS package.
89+
90+
7191
### Proposing Changes
7292

7393
Enhancements to code or documentation are welcome. Create a pull request.
Binary file not shown.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<Database xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500" xmlns:dwd="http://schemas.microsoft.com/DataWarehouse/Designer/1.0" dwd:design-time-name="09481040-71c1-4f26-9113-137d6805b40c" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
2+
<ID>AutomatingAzureAnalysisServicesSSIS</ID>
3+
<Name>AutomatingAzureAnalysisServicesSSIS</Name>
4+
<CreatedTimestamp>0001-01-01T00:00:00Z</CreatedTimestamp>
5+
<LastSchemaUpdate>0001-01-01T00:00:00Z</LastSchemaUpdate>
6+
<LastProcessed>0001-01-01T00:00:00Z</LastProcessed>
7+
<State>Unprocessed</State>
8+
<LastUpdate>0001-01-01T00:00:00Z</LastUpdate>
9+
<DataSourceImpersonationInfo>
10+
<ImpersonationMode>Default</ImpersonationMode>
11+
<ImpersonationInfoSecurity>Unchanged</ImpersonationInfoSecurity>
12+
</DataSourceImpersonationInfo>
13+
</Database>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3+
<DeploymentModel>Project</DeploymentModel>
4+
<ProductVersion>14.0.800.90</ProductVersion>
5+
<SchemaVersion>9.0.1.0</SchemaVersion>
6+
<State>$base64$PFNvdXJjZUNvbnRyb2xJbmZvIHhtbG5zOnhzZD0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmRkbDI9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDAzL2VuZ2luZS8yIiB4bWxuczpkZGwyXzI9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDAzL2VuZ2luZS8yLzIiIHhtbG5zOmRkbDEwMF8xMDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDA4L2VuZ2luZS8xMDAvMTAwIiB4bWxuczpkZGwyMDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDEwL2VuZ2luZS8yMDAiIHhtbG5zOmRkbDIwMF8yMDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDEwL2VuZ2luZS8yMDAvMjAwIiB4bWxuczpkZGwzMDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDExL2VuZ2luZS8zMDAiIHhtbG5zOmRkbDMwMF8zMDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDExL2VuZ2luZS8zMDAvMzAwIiB4bWxuczpkZGw0MDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDEyL2VuZ2luZS80MDAiIHhtbG5zOmRkbDQwMF80MDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDEyL2VuZ2luZS80MDAvNDAwIiB4bWxuczpkZGw1MDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDEzL2VuZ2luZS81MDAiIHhtbG5zOmRkbDUwMF81MDA9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYW5hbHlzaXNzZXJ2aWNlcy8yMDEzL2VuZ2luZS81MDAvNTAwIiB4bWxuczpkd2Q9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vRGF0YVdhcmVob3VzZS9EZXNpZ25lci8xLjAiPg0KICA8RW5hYmxlZD5mYWxzZTwvRW5hYmxlZD4NCiAgPFByb2plY3ROYW1lPjwvUHJvamVjdE5hbWU+DQogIDxBdXhQYXRoPjwvQXV4UGF0aD4NCiAgPExvY2FsUGF0aD48L0xvY2FsUGF0aD4NCiAgPFByb3ZpZGVyPjwvUHJvdmlkZXI+DQo8L1NvdXJjZUNvbnRyb2xJbmZvPg==</State>
7+
<Database>
8+
<Name>AutomatingAzureAnalysisServicesSSIS.database</Name>
9+
<FullPath>AutomatingAzureAnalysisServicesSSIS.database</FullPath>
10+
</Database>
11+
<DataSources />
12+
<DataSourceViews />
13+
<DeploymentModelSpecificContent>
14+
<Manifest>
15+
<SSIS:Project SSIS:ProtectionLevel="EncryptSensitiveWithUserKey" xmlns:SSIS="www.microsoft.com/SqlServer/SSIS">
16+
<SSIS:Properties>
17+
<SSIS:Property SSIS:Name="ID">{0a893c35-d45d-4bcf-b2d6-71ec76e7324e}</SSIS:Property>
18+
<SSIS:Property SSIS:Name="Name">AutomatingAzureAnalysisServicesSSIS</SSIS:Property>
19+
<SSIS:Property SSIS:Name="VersionMajor">1</SSIS:Property>
20+
<SSIS:Property SSIS:Name="VersionMinor">0</SSIS:Property>
21+
<SSIS:Property SSIS:Name="VersionBuild">0</SSIS:Property>
22+
<SSIS:Property SSIS:Name="VersionComments">
23+
</SSIS:Property>
24+
<SSIS:Property SSIS:Name="CreationDate">2018-05-13T18:53:25.9863498-05:00</SSIS:Property>
25+
<SSIS:Property SSIS:Name="CreatorName">ARTISCONSULTING\ggalloway</SSIS:Property>
26+
<SSIS:Property SSIS:Name="CreatorComputerName">GGALLOWAYPC10</SSIS:Property>
27+
<SSIS:Property SSIS:Name="Description">
28+
</SSIS:Property>
29+
<SSIS:Property SSIS:Name="PasswordVerifier" SSIS:Sensitive="1">AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAKCQbvEc1HUuU1A2c0aggtAAAAAACAAAAAAADZgAAwAAAABAAAADRB1PXFMPXyMzCRoOAnqlwAAAAAASAAACgAAAAEAAAAMj6VB8oh4aBr4cLlbqKq/SIAAAAL4BiRAcP1OdbQ7CHkFy7OfXS7x0Q3pnr18b4mCXAsJ789RPtssb2660yEddFh1vWSPXKzOxnQKZKFXpuGyZG0Jgg78NW9mezJVW9PmviGKQs+g8ZJd8YEXgnpGOJ9QAetYO9kcNsYxGYp9IHpzTeZIqgqCwKEnC7BY4VYDpZiS0w9BjtjaAX3RQAAABRUpDolju+DSWIixX+xd+qZROJRA==</SSIS:Property>
30+
<SSIS:Property SSIS:Name="FormatVersion">1</SSIS:Property>
31+
</SSIS:Properties>
32+
<SSIS:Packages>
33+
<SSIS:Package SSIS:Name="ProcessAzureAS-App.dtsx" SSIS:EntryPoint="1" />
34+
<SSIS:Package SSIS:Name="ProcessAzureAS-UsernamePassword.dtsx" SSIS:EntryPoint="1" />
35+
</SSIS:Packages>
36+
<SSIS:ConnectionManagers />
37+
<SSIS:DeploymentInfo>
38+
<SSIS:ProjectConnectionParameters />
39+
<SSIS:PackageInfo>
40+
<SSIS:PackageMetaData SSIS:Name="ProcessAzureAS-App.dtsx">
41+
<SSIS:Properties>
42+
<SSIS:Property SSIS:Name="ID">{4F808A4C-D070-439B-9DD2-D34AE90A458E}</SSIS:Property>
43+
<SSIS:Property SSIS:Name="Name">ProcessAzureAS-App</SSIS:Property>
44+
<SSIS:Property SSIS:Name="VersionMajor">1</SSIS:Property>
45+
<SSIS:Property SSIS:Name="VersionMinor">0</SSIS:Property>
46+
<SSIS:Property SSIS:Name="VersionBuild">18</SSIS:Property>
47+
<SSIS:Property SSIS:Name="VersionComments">
48+
</SSIS:Property>
49+
<SSIS:Property SSIS:Name="VersionGUID">{66AE458D-E5F4-4C58-90B8-7F24930A1204}</SSIS:Property>
50+
<SSIS:Property SSIS:Name="PackageFormatVersion">8</SSIS:Property>
51+
<SSIS:Property SSIS:Name="Description">
52+
</SSIS:Property>
53+
<SSIS:Property SSIS:Name="ProtectionLevel">1</SSIS:Property>
54+
</SSIS:Properties>
55+
<SSIS:Parameters>
56+
<SSIS:Parameter SSIS:Name="AzureASConnectionString">
57+
<SSIS:Properties>
58+
<SSIS:Property SSIS:Name="ID">{861875E8-9A8F-4AAD-95AE-E0975A67CD1F}</SSIS:Property>
59+
<SSIS:Property SSIS:Name="CreationName">
60+
</SSIS:Property>
61+
<SSIS:Property SSIS:Name="Description">Should be in the following form: Data Source=asazure://southcentralus.asazure.windows.net/servernamehere;User ID=app:{clientID};Initial Catalog=DatabaseHere;Provider=MSOLAP;Persist Security Info=True; Impersonation Level=Impersonate;Password={ClientSecretBase64Here}</SSIS:Property>
62+
<SSIS:Property SSIS:Name="IncludeInDebugDump">0</SSIS:Property>
63+
<SSIS:Property SSIS:Name="Required">1</SSIS:Property>
64+
<SSIS:Property SSIS:Name="Sensitive">1</SSIS:Property>
65+
<SSIS:Property SSIS:Name="Value" SSIS:Sensitive="1">AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAKCQbvEc1HUuU1A2c0aggtAAAAAACAAAAAAADZgAAwAAAABAAAABVb4OvrjwAbMvzwfCa6/wkAAAAAASAAACgAAAAEAAAABqfTbL3uRD0KVM44mUby3V4AAAADf0y39+GwspZjXWPnDfUog6eX2IC2vM8Mn3WMBd4/IH6q1X40YDr0ExsrJOd9oOsK/KWS2mIsyDPEjFF2eM9E9h+teiW0xtU2uX05X/nqkCjVJjA7bkNLSnwaoc/3eD4GHA1bnNzB2JqduUu2oQhkrbk3MsFcIYOFAAAAOFwtmV8hhCwuGcPt/D8pxnMfHTg</SSIS:Property>
66+
<SSIS:Property SSIS:Name="DataType">18</SSIS:Property>
67+
</SSIS:Properties>
68+
</SSIS:Parameter>
69+
</SSIS:Parameters>
70+
</SSIS:PackageMetaData>
71+
<SSIS:PackageMetaData SSIS:Name="ProcessAzureAS-UsernamePassword.dtsx">
72+
<SSIS:Properties>
73+
<SSIS:Property SSIS:Name="ID">{0B29509B-EE57-41BC-82B8-9C23C65A1810}</SSIS:Property>
74+
<SSIS:Property SSIS:Name="Name">ProcessAzureAS-UsernamePassword</SSIS:Property>
75+
<SSIS:Property SSIS:Name="VersionMajor">1</SSIS:Property>
76+
<SSIS:Property SSIS:Name="VersionMinor">0</SSIS:Property>
77+
<SSIS:Property SSIS:Name="VersionBuild">15</SSIS:Property>
78+
<SSIS:Property SSIS:Name="VersionComments">
79+
</SSIS:Property>
80+
<SSIS:Property SSIS:Name="VersionGUID">{4A64E46C-D84D-4ABF-B099-58E25593D06F}</SSIS:Property>
81+
<SSIS:Property SSIS:Name="PackageFormatVersion">8</SSIS:Property>
82+
<SSIS:Property SSIS:Name="Description">
83+
</SSIS:Property>
84+
<SSIS:Property SSIS:Name="ProtectionLevel">1</SSIS:Property>
85+
</SSIS:Properties>
86+
<SSIS:Parameters>
87+
<SSIS:Parameter SSIS:Name="AzureASConnectionString">
88+
<SSIS:Properties>
89+
<SSIS:Property SSIS:Name="ID">{F97753E4-17E7-43F2-A6BE-5EA01CD25A6D}</SSIS:Property>
90+
<SSIS:Property SSIS:Name="CreationName">
91+
</SSIS:Property>
92+
<SSIS:Property SSIS:Name="Description">Should be in the following form: Data Source=asazure://southcentralus.asazure.windows.net/servernamehere;User ID=user@domain.com;Initial Catalog=DatabaseHere;Provider=MSOLAP;Persist Security Info=True; Impersonation Level=Impersonate;Password=PasswordHere</SSIS:Property>
93+
<SSIS:Property SSIS:Name="IncludeInDebugDump">0</SSIS:Property>
94+
<SSIS:Property SSIS:Name="Required">1</SSIS:Property>
95+
<SSIS:Property SSIS:Name="Sensitive">1</SSIS:Property>
96+
<SSIS:Property SSIS:Name="Value" SSIS:Sensitive="1">AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAKCQbvEc1HUuU1A2c0aggtAAAAAACAAAAAAADZgAAwAAAABAAAADR/U8eU5K6jokR5ghh19NZAAAAAASAAACgAAAAEAAAAD4mourpzCP7DTyEIOqHolF4AAAA2BOOnCZR6CXCrfgr1jP8bBbLvC17j6/l+/we89jfrUHTXWtGxVQ6boHv2BXhYadu7k+Q5576VOgKfsAz88XUmiTfMCGkHEhDR8j4KieZNZon6K6ZTkTx+ZZVPbCp2+92FrRNaG4WogrWDEGHgvVWeOjD01zf8WBGFAAAABg9/+G/JQ5yfL2re5Hxr3T8R/Mk</SSIS:Property>
97+
<SSIS:Property SSIS:Name="DataType">18</SSIS:Property>
98+
</SSIS:Properties>
99+
</SSIS:Parameter>
100+
</SSIS:Parameters>
101+
</SSIS:PackageMetaData>
102+
</SSIS:PackageInfo>
103+
</SSIS:DeploymentInfo>
104+
</SSIS:Project>
105+
</Manifest>
106+
</DeploymentModelSpecificContent>
107+
<ControlFlowParts />
108+
<Miscellaneous />
109+
<Configurations>
110+
<Configuration>
111+
<Name>Development</Name>
112+
<Options>
113+
<OutputPath>bin</OutputPath>
114+
<ConnectionMappings />
115+
<ConnectionProviderMappings />
116+
<ConnectionSecurityMappings />
117+
<DatabaseStorageLocations />
118+
<TargetServerVersion>SQLServer2014</TargetServerVersion>
119+
<ParameterConfigurationValues>
120+
<ConfigurationSetting>
121+
<Id>LastModifiedTime</Id>
122+
<Name>LastModifiedTime</Name>
123+
<Value xsi:type="xsd:dateTime">2018-05-14T02:17:49.226544Z</Value>
124+
</ConfigurationSetting>
125+
</ParameterConfigurationValues>
126+
</Options>
127+
</Configuration>
128+
</Configurations>
129+
</Project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<DataTransformationsUserConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3+
<Configurations>
4+
<Configuration>
5+
<Name>Development</Name>
6+
<Options>
7+
<UserIDs />
8+
<UserPasswords />
9+
<OfflineMode>false</OfflineMode>
10+
<ProgressReporting>true</ProgressReporting>
11+
<ParameterConfigurationSensitiveValues>
12+
<ConfigurationSetting>
13+
<Id>LastModifiedTime</Id>
14+
<Name>LastModifiedTime</Name>
15+
<Value xsi:type="xsd:dateTime">2018-05-14T02:17:49.226544Z</Value>
16+
</ConfigurationSetting>
17+
</ParameterConfigurationSensitiveValues>
18+
</Options>
19+
</Configuration>
20+
</Configurations>
21+
</DataTransformationsUserConfiguration>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio 14
4+
VisualStudioVersion = 14.0.25420.1
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{159641D6-6404-4A2A-AE62-294DE0FE8301}") = "AutomatingAzureAnalysisServicesSSIS", "AutomatingAzureAnalysisServicesSSIS.dtproj", "{C5CA882D-B654-467B-ABEE-AC3236BEEFC5}"
7+
EndProject
8+
Global
9+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
10+
Development|Default = Development|Default
11+
EndGlobalSection
12+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
13+
{C5CA882D-B654-467B-ABEE-AC3236BEEFC5}.Development|Default.ActiveCfg = Development
14+
{C5CA882D-B654-467B-ABEE-AC3236BEEFC5}.Development|Default.Build.0 = Development
15+
EndGlobalSection
16+
GlobalSection(SolutionProperties) = preSolution
17+
HideSolutionNode = FALSE
18+
EndGlobalSection
19+
EndGlobal

0 commit comments

Comments
 (0)