SYMPTOMS
When you use the Analysis Services Parallel Process Utility to process a partition of Microsoft SQL Server 2000 Analysis Services, you receive the following error message:
Run-time error '380':
Invalid property value
This problem is likely to occur when the following conditions are true:
- You set the value of the Fact Table Size property of a cube to 1 in Analysis Manager.
- You process the default partition of the cube by using the Analysis Services Parallel Process Utility.
WORKAROUND
To work around this problem, correct the row count number of the default partition of the affected cube. To do this, use one of the following methods.
Note To count the correct row number of the default partition in Analysis Manager, click
.. in the
Fact Table Size property in Cube Editor. Then, click
Yes to count the row number.
Method 1: Use the Partition Aggregation Utility
The Partition Aggregation Utility is included with Microsoft SQL Server Accelerator for Business Intelligence (SQL Server Accelerator for BI). You can use this utility to correct the row count number. To do this, follow these steps:
- Run the Partition Aggregation Utility.
- Connect to the instance of SQL Server 2000 Analysis Services.
- Expand the affected cube, right-click the default partition of the cube, and then click Manage Partition Count.
- Type the correct value in the Set to Count column, and then click Save.
Method 2: Use the Decision Support Object (DSO) script
You can use the DSO script to correct the row count number. To do this, use code that resembles the following code examples.
Microsoft Visual C# code
//Use DSO.
Server dsoServer = new ServerClass();
dsoServer.Connect("<ServerName>");
Database dsoDB = (Database)dsoServer.MDStores.Item("<DatabaseName>");
Cube dsoCube = (Cube)dsoDB.MDStores.Item("<CubeName>");
Partition dsoPar = (Partition)dsoCube.MDStores.Item("<PartitionName>");
dsoPar.EstimatedRows = <CorrectRowCountNumber>;
dsoPar.Update();
dsoServer.CloseServer();
Note <ServerName> represents the name of the server,
<DatabaseName> represents the name of the database,
<CubeName> represents the name of the cube,
<PartitionName> represents the name of the partition, and
<CorrectRowCountNumber> represents the correct row count number.
Visual Basic .NET code
'Imports DSO
Dim dsoServer As New ServerClass
dsoServer.Connect("<ServerName>")
Dim dsoDB As Database = CType(dsoServer.MDStores.Item("<DatabaseName>"), Database)
Dim dsoCube As Cube = CType(dsoDB.MDStores.Item("<CubeName>"), Cube)
Dim dsoPar As Partition = CType(dsoCube.MDStores.Item("<PartitionName>"), Partition)
dsoPar.EstimatedRows = <CorrectRowCountNumber>
dsoPar.Update()
dsoServer.CloseServer()