今回も引き続き、SSAS(SQL Server Analysis Services)プロジェクトにディメンション、キューブ等を追加する手順について述べる。今回は、スクリプトファイルの作成手順について述べる。
前提条件
SQL Server Analysis Serverに、ディメンション、キューブを含むSSAS(SQL Server Analysis Services)プロジェクトをデプロイ済であること。Analysis Servicesに接続すると下図のようになっていること。

やってみたこと
- データソースビューを作成するスクリプトファイルの作成
- ディメンションを作成するスクリプトファイルの作成
- キューブを作成するスクリプトファイルの作成
- SSASプロジェクトのプロセス処理を行うスクリプトファイルの作成
データソースビューを作成するスクリプトファイルの作成
データソースビューを作成するスクリプトファイルは、以下の手順で作成できる。
1) 下図のように、データソースビューを選択し右クリックし、「データソースビューのスクリプトファイル作成(Script Data Source View as)」→「作成(Create To)」を順次選択後、「ファイル(File)」メニューを選択

また、作成されたデータソースビュー生成用のスクリプトファイル(create_TestSSASDataSourceView.xmla)の内容は、以下の通り。
<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<ParentObject>
<DatabaseID>TestSSASProject</DatabaseID>
</ParentObject>
<ObjectDefinition>
<DataSourceView 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">
<ID>TestSSASDataSourceView</ID>
<Name>TestSSASDataSourceView</Name>
<Annotations>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowFriendlyNames</Name>
<Value>true</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:CurrentLayout</Name>
<Value>_ALL_TABLES_</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:SchemaRestriction</Name>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:RetrieveRelationships</Name>
<Value>true</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:Layouts</Name>
<Value>
<Layouts xmlns="">
<Diagram>
<Name>_ALL_TABLES_</Name>
<DiagramLayout>
<dds>
<diagram fontclsid="{0BE35203-8F91-11CE-9DE3-00AA004BB851}" mouseiconclsid="{0BE35204-8F91-11CE-9DE3-00AA004BB851}" defaultlayout="MSDDS.Rectilinear" defaultlineroute="MSDDS.Rectilinear" version="7" nextobject="2" scale="100" pagebreakanchorx="0" pagebreakanchory="0" pagebreaksizex="0" pagebreaksizey="0" scrollleft="-14982" scrolltop="-7713" gridx="150" gridy="150" marginx="5000" marginy="5000" zoom="100" x="33020" y="18150" backcolor="16777215" defaultpersistence="2" PrintPageNumbersMode="3" PrintMarginTop="0" PrintMarginBottom="635" PrintMarginLeft="0" PrintMarginRight="0" marqueeselectionmode="0" mousepointer="0" snaptogrid="0" autotypeannotation="1" showscrollbars="0" viewpagebreaks="0" donotforceconnectorsbehindshapes="1" backpictureclsid="{00000000-0000-0000-0000-000000000000}">
<font>
<ddsxmlobjectstreamwrapper binary="01000000900144420100065461686f6d61" />
</font>
<mouseicon>
<ddsxmlobjectstreamwrapper binary="6c74000000000000" />
</mouseicon>
</diagram>
<layoutmanager>
<ddsxmlobj />
</layoutmanager>
<ddscontrol controlprogid="DdsShapes.DdsObjectManagedBridge" tooltip="sales" left="20" top="0" logicalid="1" controlid="1" masterid="0" hint1="0" hint2="0" width="3016" height="2725" noresize="0" nomove="0" nodefaultattachpoints="0" autodrag="1" usedefaultiddshape="1" selectable="1" showselectionhandles="1" allownudging="1" isannotation="0" dontautolayout="0" groupcollapsed="0" tabstop="1" visible="1" snaptogrid="0">
<control>
<ddsxmlobjectstreaminitwrapper binary="000e0000c80b0000a50a0000" />
</control>
<layoutobject>
<ddsxmlobj>
<property name="LogicalObject" value="dbo_sales" vartype="8" />
</ddsxmlobj>
</layoutobject>
<shape groupshapeid="0" groupnode="0" />
</ddscontrol>
</dds>
</DiagramLayout>
<ShowRelationshipNames>False</ShowRelationshipNames>
<UseDiagramDefaultLayout>True</UseDiagramDefaultLayout>
<DiagramViewPortLeft>-14982</DiagramViewPortLeft>
<DiagramViewPortTop>-7713</DiagramViewPortTop>
<DiagramBoundingLeft>0</DiagramBoundingLeft>
<DiagramBoundingTop>0</DiagramBoundingTop>
<DiagramZoom>100</DiagramZoom>
</Diagram>
</Layouts>
</Value>
</Annotation>
</Annotations>
<DataSourceID>TestSSASDataSource</DataSourceID>
<Schema>
<xs:schema id="TestSSASDataSourceView" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop">
<xs:element name="TestSSASDataSourceView" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="dbo_sales" msprop:IsLogical="True" msprop:FriendlyName="sales" msprop:DbTableName="sales" msprop:TableType="View" msprop:QueryDefinition="SELECT sale_date, product_name, place_name, sales_amount, ROW_NUMBER() over (ORDER BY sale_date) as rn
FROM sales" msprop:QueryBuilder="SpecificQueryBuilder">
<xs:complexType>
<xs:sequence>
<xs:element name="sale_date" msprop:DbColumnName="sale_date" msprop:FriendlyName="sale_date" type="xs:dateTime" minOccurs="0" />
<xs:element name="product_name" msprop:DbColumnName="product_name" msprop:FriendlyName="product_name" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="place_name" msprop:DbColumnName="place_name" msprop:FriendlyName="place_name" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="12" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="sales_amount" msprop:DbColumnName="sales_amount" msprop:FriendlyName="sales_amount" type="xs:int" minOccurs="0" />
<xs:element name="rn" msprop:DbColumnName="rn" type="xs:long" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<TestSSASDataSourceView xmlns="" />
</Schema>
</DataSourceView>
</ObjectDefinition>
</Create>ディメンションを作成するスクリプトファイルの作成
ディメンションを作成するスクリプトファイルは、下図のように、ディメンションを選択し右クリックし、「ディメンションのスクリプトファイル作成(Script Dimension as)」→「作成(Create To)」を順次選択後、「ファイル(File)」メニューを選択

その後のスクリプトファイル作成手順は、データソースビューの場合と同じ。作成されたディメンション生成用のスクリプトファイル(create_TestSSASDimension.xmla)の内容は、以下の通り。
<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<ParentObject>
<DatabaseID>TestSSASProject</DatabaseID>
</ParentObject>
<ObjectDefinition>
<Dimension 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">
<ID>TestSSASDimension</ID>
<Name>TestSSASDimension</Name>
<Annotations>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramLayout</Name>
<Value>
<dds xmlns="">
<diagram fontclsid="{0BE35203-8F91-11CE-9DE3-00AA004BB851}" mouseiconclsid="{0BE35204-8F91-11CE-9DE3-00AA004BB851}" defaultlayout="MSDDS.Rectilinear" defaultlineroute="MSDDS.Rectilinear" version="7" nextobject="2" scale="100" pagebreakanchorx="0" pagebreakanchory="0" pagebreaksizex="0" pagebreaksizey="0" scrollleft="-4107" scrolltop="-6840" gridx="150" gridy="150" marginx="5000" marginy="5000" zoom="100" x="11271" y="16828" backcolor="16777215" defaultpersistence="2" PrintPageNumbersMode="3" PrintMarginTop="0" PrintMarginBottom="635" PrintMarginLeft="0" PrintMarginRight="0" marqueeselectionmode="0" mousepointer="0" snaptogrid="0" autotypeannotation="1" showscrollbars="0" viewpagebreaks="0" donotforceconnectorsbehindshapes="1" backpictureclsid="{00000000-0000-0000-0000-000000000000}">
<font>
<ddsxmlobjectstreamwrapper binary="01000000900144420100065461686f6d61" />
</font>
<mouseicon>
<ddsxmlobjectstreamwrapper binary="6c74000000000000" />
</mouseicon>
</diagram>
<layoutmanager>
<ddsxmlobj />
</layoutmanager>
<ddscontrol controlprogid="DdsShapes.DdsObjectManagedBridge" tooltip="sales" left="20" top="0" logicalid="1" controlid="1" masterid="0" hint1="0" hint2="0" width="3016" height="3149" noresize="0" nomove="0" nodefaultattachpoints="0" autodrag="1" usedefaultiddshape="1" selectable="1" showselectionhandles="1" allownudging="1" isannotation="0" dontautolayout="0" groupcollapsed="0" tabstop="1" visible="1" snaptogrid="0">
<control>
<ddsxmlobjectstreaminitwrapper binary="000e0000c80b00004d0c0000" />
</control>
<layoutobject>
<ddsxmlobj>
<property name="LogicalObject" value="dbo_sales" vartype="8" />
</ddsxmlobj>
</layoutobject>
<shape groupshapeid="0" groupnode="0" />
</ddscontrol>
</dds>
</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowFriendlyNames</Name>
<Value>true</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowRelationshipNames</Name>
<Value>false</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:UseDiagramDefaultLayout</Name>
<Value>true</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortLeft</Name>
<Value>-4107</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortTop</Name>
<Value>-6840</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingLeft</Name>
<Value>20</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingTop</Name>
<Value>0</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramZoom</Name>
<Value>100</Value>
</Annotation>
</Annotations>
<Source xsi:type="DataSourceViewBinding">
<DataSourceViewID>TestSSASDataSourceView</DataSourceViewID>
</Source>
<ErrorConfiguration>
<KeyNotFound>ReportAndStop</KeyNotFound>
<KeyDuplicate>ReportAndStop</KeyDuplicate>
<NullKeyNotAllowed>ReportAndStop</NullKeyNotAllowed>
</ErrorConfiguration>
<Language>1033</Language>
<Collation>Latin1_General_CI_AS</Collation>
<UnknownMemberName>Unknown</UnknownMemberName>
<Attributes>
<Attribute>
<ID>Rn</ID>
<Name>Rn</Name>
<Usage>Key</Usage>
<KeyColumns>
<KeyColumn>
<DataType>BigInt</DataType>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>rn</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
<NameColumn>
<DataType>WChar</DataType>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>rn</ColumnID>
</Source>
</NameColumn>
<AttributeRelationships>
<AttributeRelationship>
<AttributeID>Product Name</AttributeID>
<Name>Product Name</Name>
</AttributeRelationship>
<AttributeRelationship>
<AttributeID>Place Name</AttributeID>
<Name>Place Name</Name>
</AttributeRelationship>
</AttributeRelationships>
<OrderBy>Key</OrderBy>
</Attribute>
<Attribute>
<ID>Product Name</ID>
<Name>Product Name</Name>
<KeyColumns>
<KeyColumn>
<DataType>WChar</DataType>
<DataSize>50</DataSize>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>product_name</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
<NameColumn>
<DataType>WChar</DataType>
<DataSize>50</DataSize>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>product_name</ColumnID>
</Source>
</NameColumn>
<OrderBy>Key</OrderBy>
</Attribute>
<Attribute>
<ID>Place Name</ID>
<Name>Place Name</Name>
<KeyColumns>
<KeyColumn>
<DataType>WChar</DataType>
<DataSize>12</DataSize>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>place_name</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
<NameColumn>
<DataType>WChar</DataType>
<DataSize>12</DataSize>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>place_name</ColumnID>
</Source>
</NameColumn>
<OrderBy>Key</OrderBy>
</Attribute>
</Attributes>
<ProactiveCaching>
<SilenceInterval>-PT1S</SilenceInterval>
<Latency>-PT1S</Latency>
<SilenceOverrideInterval>-PT1S</SilenceOverrideInterval>
<ForceRebuildInterval>-PT1S</ForceRebuildInterval>
<Source xsi:type="ProactiveCachingInheritedBinding" />
</ProactiveCaching>
</Dimension>
</ObjectDefinition>
</Create>
キューブを作成するスクリプトファイルの作成
キューブを作成するスクリプトファイルは、下図のように、キューブを選択し右クリックし、「キューブのスクリプトファイル作成(Script Cube as)」→「作成(Create To)」を順次選択後、「ファイル(File)」メニューを選択

その後のスクリプトファイル作成手順は、データソースビューの場合と同じ。作成されたキューブ生成用のスクリプトファイル(create_TestSSASCube.xmla)の内容は、以下の通り。
<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<ParentObject>
<DatabaseID>TestSSASProject</DatabaseID>
</ParentObject>
<ObjectDefinition>
<Cube 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">
<ID>TestSSASCube</ID>
<Name>TestSSASCube</Name>
<Annotations>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramLayout</Name>
<Value>
<dds xmlns="">
<diagram fontclsid="{0BE35203-8F91-11CE-9DE3-00AA004BB851}" mouseiconclsid="{0BE35204-8F91-11CE-9DE3-00AA004BB851}" defaultlayout="MSDDS.Rectilinear" defaultlineroute="MSDDS.Rectilinear" version="7" nextobject="2" scale="100" pagebreakanchorx="0" pagebreakanchory="0" pagebreaksizex="0" pagebreaksizey="0" scrollleft="-14717" scrolltop="-6840" gridx="150" gridy="150" marginx="5000" marginy="5000" zoom="100" x="32491" y="11589" backcolor="16777215" defaultpersistence="2" PrintPageNumbersMode="3" PrintMarginTop="0" PrintMarginBottom="635" PrintMarginLeft="0" PrintMarginRight="0" marqueeselectionmode="0" mousepointer="0" snaptogrid="0" autotypeannotation="1" showscrollbars="0" viewpagebreaks="0" donotforceconnectorsbehindshapes="1" backpictureclsid="{00000000-0000-0000-0000-000000000000}">
<font>
<ddsxmlobjectstreamwrapper binary="01000000900144420100065461686f6d61" />
</font>
<mouseicon>
<ddsxmlobjectstreamwrapper binary="6c74000000000000" />
</mouseicon>
</diagram>
<layoutmanager>
<ddsxmlobj />
</layoutmanager>
<ddscontrol controlprogid="DdsShapes.DdsObjectManagedBridge" tooltip="sales" left="20" top="0" logicalid="1" controlid="1" masterid="0" hint1="0" hint2="0" width="3016" height="3149" noresize="0" nomove="0" nodefaultattachpoints="0" autodrag="1" usedefaultiddshape="1" selectable="1" showselectionhandles="1" allownudging="1" isannotation="0" dontautolayout="0" groupcollapsed="0" tabstop="1" visible="1" snaptogrid="0">
<control>
<ddsxmlobjectstreaminitwrapper binary="000e0000c80b00004d0c0000" />
</control>
<layoutobject>
<ddsxmlobj>
<property name="LogicalObject" value="dbo_sales" vartype="8" />
</ddsxmlobj>
</layoutobject>
<shape groupshapeid="0" groupnode="0" />
</ddscontrol>
</dds>
</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowFriendlyNames</Name>
<Value>true</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowRelationshipNames</Name>
<Value>false</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:UseDiagramDefaultLayout</Name>
<Value>true</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortLeft</Name>
<Value>-14717</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortTop</Name>
<Value>-6840</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingLeft</Name>
<Value>20</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingTop</Name>
<Value>0</Value>
</Annotation>
<Annotation>
<Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramZoom</Name>
<Value>100</Value>
</Annotation>
</Annotations>
<Language>1033</Language>
<Collation>Latin1_General_CI_AS</Collation>
<Dimensions>
<Dimension>
<ID>TestSSASDimension</ID>
<Name>TestSSASDimension</Name>
<DimensionID>TestSSASDimension</DimensionID>
<Attributes>
<Attribute>
<AttributeID>Rn</AttributeID>
</Attribute>
<Attribute>
<AttributeID>Product Name</AttributeID>
</Attribute>
<Attribute>
<AttributeID>Place Name</AttributeID>
</Attribute>
</Attributes>
</Dimension>
</Dimensions>
<MeasureGroups>
<MeasureGroup>
<ID>Sales</ID>
<Name>Sales</Name>
<Measures>
<Measure>
<ID>Sales Amount</ID>
<Name>Sales Amount</Name>
<DataType>Integer</DataType>
<Source>
<DataType>Integer</DataType>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>sales_amount</ColumnID>
</Source>
</Source>
</Measure>
</Measures>
<StorageMode>Molap</StorageMode>
<ProcessingMode>Regular</ProcessingMode>
<Dimensions>
<Dimension xsi:type="RegularMeasureGroupDimension">
<CubeDimensionID>TestSSASDimension</CubeDimensionID>
<Cardinality>One</Cardinality>
<Attributes>
<Attribute>
<AttributeID>Rn</AttributeID>
<KeyColumns>
<KeyColumn>
<DataType>BigInt</DataType>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>rn</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
<Type>Granularity</Type>
</Attribute>
<Attribute>
<AttributeID>Product Name</AttributeID>
<KeyColumns>
<KeyColumn>
<DataType>WChar</DataType>
<DataSize>50</DataSize>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>product_name</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
</Attribute>
<Attribute>
<AttributeID>Place Name</AttributeID>
<KeyColumns>
<KeyColumn>
<DataType>WChar</DataType>
<DataSize>12</DataSize>
<Source xsi:type="ColumnBinding">
<TableID>dbo_sales</TableID>
<ColumnID>place_name</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
</Attribute>
</Attributes>
</Dimension>
</Dimensions>
<Partitions>
<Partition>
<ID>Sales</ID>
<Name>Sales</Name>
<Source xsi:type="DsvTableBinding">
<DataSourceViewID>TestSSASDataSourceView</DataSourceViewID>
<TableID>dbo_sales</TableID>
</Source>
<StorageMode>Molap</StorageMode>
<ProcessingMode>Regular</ProcessingMode>
<ProactiveCaching>
<SilenceInterval>-PT1S</SilenceInterval>
<Latency>-PT1S</Latency>
<SilenceOverrideInterval>-PT1S</SilenceOverrideInterval>
<ForceRebuildInterval>-PT1S</ForceRebuildInterval>
<Source xsi:type="ProactiveCachingInheritedBinding" />
</ProactiveCaching>
</Partition>
</Partitions>
<ProactiveCaching>
<SilenceInterval>-PT1S</SilenceInterval>
<Latency>-PT1S</Latency>
<SilenceOverrideInterval>-PT1S</SilenceOverrideInterval>
<ForceRebuildInterval>-PT1S</ForceRebuildInterval>
<Source xsi:type="ProactiveCachingInheritedBinding" />
</ProactiveCaching>
</MeasureGroup>
</MeasureGroups>
<Source>
<DataSourceViewID>TestSSASDataSourceView</DataSourceViewID>
</Source>
<ProactiveCaching>
<SilenceInterval>-PT1S</SilenceInterval>
<Latency>-PT1S</Latency>
<SilenceOverrideInterval>-PT1S</SilenceOverrideInterval>
<ForceRebuildInterval>-PT1S</ForceRebuildInterval>
<Source xsi:type="ProactiveCachingInheritedBinding" />
</ProactiveCaching>
</Cube>
</ObjectDefinition>
</Create>SSASプロジェクトのプロセス処理を行うスクリプトファイルの作成
作成したディメンション、キューブを使えるようにするためのプロセス処理(Processing)を作成するスクリプトファイルは、以下の手順で作成できる。
1) 下図のように、SSASプロジェクトを選択し右クリックし、「プロセス(Process)」メニューを選択

2) スクリプトメニューから「スクリプト処理をファイルに出力(Script Action to File)」を選択

また、作成されたプロセス処理生成用のスクリプトファイル(process_TestSSASProject.xmla)の内容は、以下の通り。
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Parallel>
<Process 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">
<Object>
<DatabaseID>TestSSASProject</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>なお、それぞれのスクリプトファイルを直接更新すれば、SSDT(SQL Server Data Tools)ツールを使わなくても、コマンド操作により、SSASプロジェクトの内容を更新することができる。









