FIX: Error Occurs When You Process Cube or Dimension Through ASP

Article translations Article translations
Article ID: 293641 - View products that this article applies to.
This article was previously published under Q293641
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 11210 (Plato7.x)
BUG #: 11281 (Plato7.x)
Expand all | Collapse all

On This Page

SYMPTOMS

When you process a dimension or cube through an ASP page by using Decision Support Objects (DSO), the processing fails with the following error messages:
DSO error '80040051' Cannot open database 'Database Name' on the Analysis server
-or-
Could not Initialize Database 'Database Name'

RESOLUTION

To resolve this problem, obtain the latest service pack for the Microsoft SQL Server 2000 (the Analysis Services Components - Sql2kasp1.exe). For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack

STATUS

Microsoft has confirmed that this is a problem in SQL Server 2000 Analysis Services version 8.0. This problem was first corrected in the Analysis Services Components of Microsoft SQL Server 2000 Service Pack 1.

MORE INFORMATION

When processing a cube or dimension through the Web by using Microsoft Visual Basic script in an ASP page to make calls to a DSO DLL file, the error messages listed in the "Symptoms" section occur. The error messages occur when the Internet Information Server (IIS) property Application Isolation is set to Medium or High. The error messages do not display if you execute the code only through Microsoft Visual Basic or Microsoft VBScript, but they will occur if you use ASP.

Steps to Reproduce Behavior

  1. Create a DLL file by using the following Visual Basic code:
    ** Visual Basic DSO COM component:
    	Private dsoServer As DSO.Server
    	Private dsoDB As DSO.MDStore
    	Private dsoCube As DSO.MDStore
    	Private dsoDim As DSO.Dimension
    	Private strDBName As String
    	'Private dsoMea As DSO.Measure
    	
    	'/*
    	' Project Name: ProcessDimension
    	' Class Name: clsProcessDim
    	' Description: VB ActiveX COM wrapper for DSO.
    	'*/ 
    	Public Function ProcessDimension() As Boolean
    	'This sample is based on the FoodMart database.
    	
    	On Error GoTo errProcessDimension
    	strDBName = "FoodMart 2000"
    	    
    	Set dsoServer = New DSO.Server
    	dsoServer.Connect ("LocalHost")
    	
    	Set dsoDB = dsoServer.MDStores("FoodMart 2000")
    	
    	Set dsoCube = dsoDB.MDStores(1)
    	
    	Set dsoDim = New DSO.Dimension
    	'Debug.Print dsoDB.Dimensions.Count
    	
    	'Need to process Dimension based on Database.Dimension collection.
    For Each dsoDim In dsoDB.Dimensions
    	    If dsoDim.Name = "Promotions" Then
    	        dsoDim.Process processRefreshData
    	        ProcessDimension = True
    	        Exit For
    	    End If
    	Next
    	'You could processFull on the Cube here if needed.
    	'dsoCube.Process processRefreshData
    	
    	ProcessDimension = True
    	Exit Function
    	
    	errProcessDimension:
    	    ProcessDimension = False
    	    Err.Raise Err.Number, Err.Source, Err.Description
    	
    	End Function
    					
  2. Use the following code, and create an ASP page:
    ** ASP code:
    	<HTML>
    	<BODY>
    	<%@ Language=VBScript %>
    	
    	<%
    	dim objCubeProc
    	dim blnResult
    	
    	set objCubeProc = Server.CreateObject("ProcessDimension.clsProcessDim")
    	blnResult = objCubeProc.ProcessDimension
    	
    	if blnResult=True then
    		Response.Write "Done..."
    	else
    		Response.Write "Error..."
    	end if
    	%>
    	</BODY>
    	</HTML>
    
    					
  3. Register the DLL you created in step 1 on the same computer as Internet Information Server (IIS) and Analysis Services.
  4. Place the ASP page in the WWWROOT folder, and then set the Application Isolation property to HIGH.
  5. Load the ASP page into Microsoft Internet Explorer.


NOTE: If your repository is stored in the default Msmdrep.mdb file, you may need to reduce the security to the file in order for the processing of the cube or dimension through a ASP page to work correctly. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:
293782 BUG: Can Only Administer Analysis Server if User is a Member of Administrators Group

Properties

Article ID: 293641 - Last Review: February 28, 2014 - Revision: 3.1
APPLIES TO
  • Microsoft SQL Server OLAP Services
Keywords: 
kbnosurvey kbarchive kbbug kbfix kbssas800fix KB293641

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com