{"id":34,"date":"2007-09-25T20:34:43","date_gmt":"2007-09-26T01:34:43","guid":{"rendered":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/34_wsh-scripting-for-analysis-services-2005"},"modified":"2008-03-17T20:56:52","modified_gmt":"2008-03-18T01:56:52","slug":"wsh-scripting-for-analysis-services-2005","status":"publish","type":"post","link":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/34_wsh-scripting-for-analysis-services-2005","title":{"rendered":"WSH Scripting for Analysis Services 2005"},"content":{"rendered":"<p>Years ago I was using Windows Scripting Host (WSH)\u00a0for majority of my scripting tasks. It is installed by default on all Windows PCs, VBScript language is quite easy to learn\/use and you can do a lot with just a few lines of code. But since DTS was introduced, I started to use DTS more and more and now SSIS is default environment where I do all my scripting. This is because SSIS has very good error loging system and is so much more powerful. But I still use a few WSH scripts that gives me quick status of my SSAS databases. To test them in your environment just copy script to text file, name it with extension *.vbs and then run it with command &#8220;CScript YourScript.vbs&#8221; with required parameters.<\/p>\n<p>I have no problems running these scripts on any of my workstation PCs.\u00a0But when I tested these cscripts on my server machines\u00a0I\u00a0was getting error message &#8220;Microsoft VBScript runtime error: ActiveX component can&#8217;t create object &#8216;Microsoft.AnalysisServices.Server'&#8221;. Maybe I am getting this error message\u00a0because my servers are 64bit, or I might require to manually register some dll(s). If anyone knows how to make it work on server, I would appreciate if you&#8217;ll leave your comments here.<br \/>\n<strong>Updated:<\/strong> Few hours after\u00a0I posted this blog I got solution from Andreau to this problem. On 64 bit environment\u00a0I have to execute script using command: &#8220;c:\\windows\\syswow64\\cscript.exe YourScript.vbs&#8221;. Thanks Andreau!<\/p>\n<p>Here are\u00a02 scripts that you might find useful: <!--more--><\/p>\n<p><strong>Script ListDBs.vbs. <\/strong>This script lists Analysis Services databases available on one server and list some basic information about each SSAS database.<\/p>\n<blockquote><p>&#8216; List all SSAS databases in specified server.<br \/>\n&#8216; Run example<br \/>\n&#8216; cscript ListDBs.vbs \/ServerName:MyServerName<\/p>\n<p>Dim ServerName<br \/>\nSet Arguments = WScript.Arguments.Named<br \/>\nServerName = Arguments.Item(&#8220;ServerName&#8221;)<\/p>\n<p>DIM StateOfObject<br \/>\nStateOfObject = Array(&#8220;Processed&#8221;,&#8221;PartiallyProcessed&#8221;,&#8221;Unprocessed&#8221;)<\/p>\n<p>Dim oServer, oDB, State<br \/>\nset oServer = CreateObject(&#8220;Microsoft.AnalysisServices.Server&#8221;)<br \/>\noServer.Connect(ServerName)<br \/>\nWScript.Echo &#8220;=== SSAS databases on server &#8221; &amp; ServerName<br \/>\nFor Each oDB in oServer.Databases<br \/>\n\u00a0WScript.Echo oDB.Name<br \/>\n\u00a0WScript.Echo &#8221;\u00a0 State\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : &#8221; &amp; StateOfObject(oDB.State)<br \/>\n\u00a0WScript.Echo &#8221;\u00a0 Last Update\u00a0\u00a0 : &#8221; &amp; CStr(oDB.LastUpdate)<br \/>\n\u00a0WScript.Echo &#8221;\u00a0 Last Processed: &#8221; &amp; CStr(oDB.LastProcessed)<br \/>\n\u00a0WScript.Echo &#8221;\u00a0 Estimated Size: &#8221; &amp; FormatNumber(CDbl(oDB.EstimatedSize) \/ 1024 \/ 1024) &amp; &#8221; MB&#8221;\u00a0 &#8216; On big DB could be slow, so consider commenting this line out<br \/>\n\u00a0WScript.Echo &#8220;&#8221;<br \/>\nNext<\/p><\/blockquote>\n<p>Note: \u00a0As double quotes might give you problems, please use <a href=\"BlogFiles\/Post34\/ListDBs.txt\">this text file to get script code<\/a>.<\/p>\n<p>To run this\u00a0script you have to\u00a0copy script into the text file, rename it to ListDBs.vbs and then use command to\u00a0execute it:<\/p>\n<blockquote><p>cscript ListDBs.vbs \/ServerName:Office1<\/p>\n<p>Here\u00a0Office1 is the name of your Analysis Services server.<\/p><\/blockquote>\n<p>Results of this script will look something like:<\/p>\n<blockquote><p>C:\\Scripts&gt;CScript ListDBs.vbs \/ServerName:Office1<br \/>\nMicrosoft (R) Windows Script Host Version 5.6<br \/>\nCopyright (C) Microsoft Corporation 1996-2001. All rights reserved.<\/p>\n<p>=== SSAS databases on server Office1<br \/>\nAdventure Works DW<br \/>\n\u00a0 State\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : Processed<br \/>\n\u00a0 Last Update\u00a0\u00a0 : 9\/11\/2007 10:38:59 PM<br \/>\n\u00a0 Last Processed: 9\/6\/2007 11:04:39 PM<br \/>\n\u00a0 Estimated Size: 51.89 MB<\/p>\n<p>C:\\Scripts&gt;<\/p><\/blockquote>\n<p><strong>Script GetInfoOnOneDB.vbs. <\/strong>This script lists cubes, measure groups, partitions (optionally) and dimensions in one Analysis Services database.<\/p>\n<blockquote><p>&#8216; List information (Cubes, measure groups, dimensions and optionally partitions) in one SSAS database<br \/>\n&#8216; Example to run:<br \/>\n&#8216; CScript GetInfoOnOneDB.vbs \/ServerName:IDS-DB4 \/DBName:iw61bIdsDM \/ShowPartitions:Yes<\/p>\n<p>Dim ServerName, DBName, ShowPartitions<br \/>\nSet Arguments = WScript.Arguments.Named<br \/>\nServerName = Arguments.Item(&#8220;ServerName&#8221;)<br \/>\nDBName = Arguments.Item(&#8220;DBName&#8221;)<br \/>\nShowPartitions = Arguments.Item(&#8220;ShowPartitions&#8221;)<br \/>\nIf LCase(ShowPartitions) &lt;&gt; &#8220;yes&#8221; Then ShowPartitions = &#8220;No&#8221;<\/p>\n<p>DIM StateOfObject<br \/>\nStateOfObject = Array(&#8220;Processed&#8221;,&#8221;PartiallyProcessed&#8221;,&#8221;Unprocessed&#8221;)<\/p>\n<p>Dim oServer, oDB, oCube, oMG, oPart, oDim<br \/>\nset oServer = CreateObject(&#8220;Microsoft.AnalysisServices.Server&#8221;)<br \/>\noServer.Connect(ServerName)<\/p>\n<p>FoundDB = False<br \/>\nFor Each oDB in oServer.Databases<br \/>\n\u00a0if LCase(oDB.Name) = LCase(DBName) Then<br \/>\n\u00a0 FoundDB = True<br \/>\n\u00a0 Exit For<br \/>\n\u00a0End If<br \/>\nNext<\/p>\n<p>If FoundDB = False Then &#8216;Database not found, terminate script<br \/>\n\u00a0WSCript.Echo &#8220;***ERROR. Server: &#8221; &amp; ServerName &amp; &#8221; SSAS Database: &#8221; &amp; DBName &amp; &#8221; NOT FOUND!!!&#8221;<br \/>\n\u00a0WScript.Quit(1)<br \/>\nEnd If<\/p>\n<p>\u00a0WScript.Echo &#8220;===== Database information&#8221;<br \/>\n\u00a0WScript.Echo &#8220;Name\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : &#8221; &amp; oDB.Name<br \/>\n\u00a0WScript.Echo &#8220;State\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : &#8221; &amp; StateOfObject(oDB.State)<br \/>\n\u00a0WScript.Echo &#8220;Last Update\u00a0\u00a0\u00a0 : &#8221; &amp; CStr(oDB.LastUpdate)<br \/>\n\u00a0WScript.Echo &#8220;Last Processed : &#8221; &amp; CStr(oDB.LastProcessed)<br \/>\n\u00a0WScript.Echo &#8220;Estimated Size : &#8221; &amp; FormatNumber(CDbl(oDB.EstimatedSize) \/ 1024 \/ 1024) &amp; &#8221; MB&#8221;\u00a0 &#8216; On big DB could be slow, so consider commenting this line out<br \/>\n\u00a0WScript.Echo &#8220;&#8221;<\/p>\n<p>\u00a0WSCript.Echo &#8221; Cubes in the database&#8221;<br \/>\n\u00a0For Each oCube in oDB.Cubes<br \/>\n\u00a0 WScript.Echo &#8220;Cube: &#8221; &amp; LEFT(oCube.Name &amp; String(15,&#8221; &#8220;), 15) &amp; &#8220;, &#8221; &amp; StateOfObject(oCube.State) &amp; &#8220;, &#8221; &amp; CStr(oCube.LastProcessed)<\/p>\n<p>\u00a0 For Each oMG in oCube.MeasureGroups<br \/>\n\u00a0 WScript.Echo &#8221; MG: &#8221; &amp; LEFT(oMG.Name &amp; String(25,&#8221; &#8220;), 25) &amp; &#8220;, &#8221; &amp; FormatNumber(CDbl(oMG.EstimatedSize) \/ 1024 \/ 1024) &amp; &#8221; MB, &#8221; &amp; StateOfObject(oMG.State) &amp; &#8220;, &#8221; &amp; CStr(oMG.LastProcessed)<\/p>\n<p>\u00a0 If LCase(ShowPartitions) = &#8220;yes&#8221; Then<br \/>\n\u00a0\u00a0 For Each oPart in oMG.Partitions<br \/>\n\u00a0\u00a0\u00a0\u00a0 WScript.Echo &#8221;\u00a0 Partition: &#8221; &amp; LEFT(oPart.Name &amp; String(25,&#8221; &#8220;), 25) &amp; &#8220;, &#8221; &amp; FormatNumber(CDbl(oPart.EstimatedSize) \/ 1024 \/ 1024) &amp; &#8221; MB, &#8221; &amp; StateOfObject(oPart.State) &amp; &#8220;, &#8221; &amp; CStr(oPart.LastProcessed)<br \/>\n\u00a0\u00a0 Next &#8216; oPart<br \/>\n\u00a0 End If<\/p>\n<p>\u00a0 Next &#8216; oMG<br \/>\n\u00a0 WScript.Echo &#8220;&#8221;<br \/>\n\u00a0Next &#8216; oCube<br \/>\n\u00a0WScript.Echo &#8220;&#8221;<\/p>\n<p>\u00a0WScript.Echo &#8220;=== Dimensions&#8221;<br \/>\n\u00a0For Each oDim in oDB.Dimensions<br \/>\n\u00a0 WScript.Echo &#8220;Dim: &#8221; &amp; LEFT(oDim.Name &amp; String(25,&#8221; &#8220;), 25) &amp; &#8220;, &#8221; &amp; StateOfObject(oDim.State) &amp; &#8220;, &#8221; &amp; CStr(oDim.LastProcessed)<br \/>\n\u00a0Next<br \/>\nWScript.Quit(0)<\/p><\/blockquote>\n<p>Note: \u00a0As double quotes might give you problems, please use <a href=\"BlogFiles\/Post34\/GetInfoOnOneDB.txt\">this text file to get script code<\/a>.<\/p>\n<p>To run this\u00a0script you have to\u00a0copy script text into text file, rename it to ListDBs.vbs and then use command to\u00a0execute it:<\/p>\n<blockquote><p>CScript GetInfoOnOneDB.vbs \/ServerName:Office1 \/DBName:&#8221;Adventure Works DW&#8221;\u00a0\/ShowPartitions:Yes<\/p>\n<p>Here\u00a0Office1 is the name of your Analysis Services server.<\/p><\/blockquote>\n<p>Results of this script will look something like:<\/p>\n<blockquote><p>C:\\Scripts&gt;cscript GetInfoOnOneDB.vbs \/ServerName:Office1 \/DBName:&#8221;Adventure Wor<br \/>\nks DW&#8221; \/ShowPartitions:Yes<br \/>\nMicrosoft (R) Windows Script Host Version 5.6<br \/>\nCopyright (C) Microsoft Corporation 1996-2001. All rights reserved.<\/p>\n<p>===== Database information<br \/>\nName\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : Adventure Works DW<br \/>\nState\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : Processed<br \/>\nLast Update\u00a0\u00a0\u00a0 : 9\/11\/2007 10:38:59 PM<br \/>\nLast Processed : 9\/6\/2007 11:04:39 PM<br \/>\nEstimated Size : 51.89 MB<\/p>\n<p>\u00a0Cubes in the database<br \/>\nCube: Adventure Works, Processed, 9\/6\/2007 9:41:15 PM<br \/>\n\u00a0MG: Internet Sales\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 2.28 MB, Processed, 9\/6\/2007 9:41:10 PM<br \/>\n\u00a0 Partition: Internet_Sales_2001\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.03 MB, Processed, 9\/6\/2007 9:40:56 PM<br \/>\n\u00a0 Partition: Internet_Sales_2002\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.08 MB, Processed, 9\/6\/2007 9:40:59 PM<br \/>\n\u00a0 Partition: Internet_Sales_2003\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.95 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Internet_Sales_2004\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.10 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0MG: Internet Orders\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.73 MB, Processed, 9\/6\/2007 9:41:10 PM<br \/>\n\u00a0 Partition: Internet_Orders_2001\u00a0\u00a0\u00a0\u00a0 , 0.03 MB, Processed, 9\/6\/2007 9:40:55 PM<br \/>\n\u00a0 Partition: Internet_Orders_2002\u00a0\u00a0\u00a0\u00a0 , 0.08 MB, Processed, 9\/6\/2007 9:40:50 PM<br \/>\n\u00a0 Partition: Internet_Orders_2003\u00a0\u00a0\u00a0\u00a0 , 0.73 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Internet_Orders_2004\u00a0\u00a0\u00a0\u00a0 , 0.85 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0MG: Internet Customers\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.17 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0 Partition: Customers_2001\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.01 MB, Processed, 9\/6\/2007 9:40:59 PM<br \/>\n\u00a0 Partition: Customers_2002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.03 MB, Processed, 9\/6\/2007 9:40:55 PM<br \/>\n\u00a0 Partition: Customers_2003\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.51 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Customers_2004\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.58 MB, Processed, 9\/6\/2007 9:40:57 PM<br \/>\n\u00a0MG: Sales Reasons\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 9:40:55 PM<br \/>\n\u00a0 Partition: Internet_Sales_Reasons\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 9:40:50 PM<br \/>\n\u00a0MG: Reseller Sales\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 3.15 MB, Processed, 9\/6\/2007 9:41:10 PM<br \/>\n\u00a0 Partition: Reseller_Sales_2001\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.29 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Reseller_Sales_2002\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.76 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0 Partition: Reseller_Sales_2003\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.17 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0 Partition: Reseller_Sales_2004\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.64 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0MG: Reseller Orders\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.23 MB, Processed, 9\/6\/2007 9:41:10 PM<br \/>\n\u00a0 Partition: Reseller_Orders_2001\u00a0\u00a0\u00a0\u00a0 , 0.13 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0 Partition: Reseller_Orders_2002\u00a0\u00a0\u00a0\u00a0 , 0.31 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0 Partition: Reseller_Orders_2003\u00a0\u00a0\u00a0\u00a0 , 0.46 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0 Partition: Reseller_Orders_2004\u00a0\u00a0\u00a0\u00a0 , 0.26 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0MG: Sales Summary\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 2.85 MB, Processed, 9\/6\/2007 9:41:10 PM<br \/>\n\u00a0 Partition: Total_Sales_2001\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.08 MB, Processed, 9\/6\/2007 9:40:56 PM<br \/>\n\u00a0 Partition: Total_Sales_2002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.42 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Total_Sales_2003\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.09 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Total_Sales_2004\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 1.07 MB, Processed, 9\/6\/2007 9:41:09 PM<br \/>\n\u00a0MG: Sales Orders\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 2.05 MB, Processed, 9\/6\/2007 9:41:10 PM<br \/>\n\u00a0 Partition: Total_Orders_2001\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.13 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Total_Orders_2002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.32 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Total_Orders_2003\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.79 MB, Processed, 9\/6\/2007 9:41:08 PM<br \/>\n\u00a0 Partition: Total_Orders_2004\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.76 MB, Processed, 9\/6\/2007 9:41:06 PM<br \/>\n\u00a0MG: Sales Targets\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 9:40:55 PM<br \/>\n\u00a0 Partition: Sales_Quotas\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 9:40:50 PM<br \/>\n\u00a0MG: Financial Reporting\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.39 MB, Processed, 9\/6\/2007 9:41:01 PM<br \/>\n\u00a0 Partition: Finance\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.36 MB, Processed, 9\/6\/2007 9:41:00 PM<br \/>\n\u00a0MG: Exchange Rates\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.28 MB, Processed, 9\/6\/2007 9:40:55 PM<br \/>\n\u00a0 Partition: Currency_Rates\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.28 MB, Processed, 9\/6\/2007 9:40:50 PM<\/p>\n<p>Cube: Mined Customers, Processed, 9\/6\/2007 11:04:39 PM<br \/>\n\u00a0MG: Internet Sales\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 11:04:38 PM<br \/>\n\u00a0MG: Internet Orders\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 11:04:38 PM<br \/>\n\u00a0MG: Internet Customers\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 11:04:38 PM<br \/>\n\u00a0MG: Sales Reasons\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 11:04:38 PM<br \/>\n\u00a0MG: Exchange Rates\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , 0.00 MB, Processed, 9\/6\/2007 11:04:38 PM<br \/>\n=== Dimensions<br \/>\nDim: Promotion\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:16 PM<br \/>\nDim: Product\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:45 PM<br \/>\nDim: Customer\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:36 PM<br \/>\nDim: Geography\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:39 PM<br \/>\nDim: Reseller\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:49 PM<br \/>\nDim: Sales Territory\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:28 PM<br \/>\nDim: Employee\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:50 PM<br \/>\nDim: Scenario\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:23 PM<br \/>\nDim: Department\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:42:56 PM<br \/>\nDim: Organization\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:15 PM<br \/>\nDim: Account\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:09 PM<br \/>\nDim: Date\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:42 PM<br \/>\nDim: Source Currency\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:44 PM<br \/>\nDim: Sales Reason\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:34 PM<br \/>\nDim: Reseller Sales Order Deta, Processed, 9\/5\/2007 10:42:47 PM<br \/>\nDim: Internet Sales Order Deta, Processed, 9\/5\/2007 10:43:35 PM<br \/>\nDim: Clustered Customers\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:46:19 PM<br \/>\nDim: Subcategory Basket Analys, Processed, 9\/5\/2007 10:46:19 PM<br \/>\nDim: Sales Channel\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/5\/2007 10:43:48 PM<br \/>\nDim: Destination Currency\u00a0\u00a0\u00a0\u00a0 , Processed, 9\/6\/2007 9:40:29 PM<br \/>\nDim: Sales Summary Order Detai, Processed, 9\/5\/2007 10:43:23 PM<\/p>\n<p>C:\\Scripts&gt;<\/p><\/blockquote>\n<p>Note: on the big databases, you might want to\u00a0comment out\u00a0code that get &#8220;Estimated Size&#8221; property value. This is because Analysis Services is quite slow to calculating value of this property.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Years ago I was using Windows Scripting Host (WSH)\u00a0for majority of my scripting tasks. It is installed by default on all Windows PCs, VBScript language is quite easy to learn\/use and you can do a lot with just a few lines of code. But since DTS was introduced, I started to use DTS more and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/posts\/34"}],"collection":[{"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/comments?post=34"}],"version-history":[{"count":0,"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/posts\/34\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/media?parent=34"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/categories?post=34"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.ssas-info.com\/VidasMatelisBlog\/wp-json\/wp\/v2\/tags?post=34"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}