Monday, March 19, 2012

I cann't connect to Analysisi Server 2000 from IA64 server with 2003 using adomd.net

Hi

I have tried to connect an application developed with c# and adomd.net v9.0 to AS 2000 installed on other server .

The server where my application is installed is a IA64 with win 2003 , the analysis server is installed on another server .

This is my code

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using Microsoft.AnalysisServices.AdomdClient;

namespace ado2000

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

AdomdConnection adomd= new AdomdConnection();

adomd.ConnectionString = this.textBox1.Text;

adomd.Open();

}

}

}

I cann't establish the connection always get the same error .

How can i fix this error?

Can I use another tool to make the connection ?

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
Microsoft.AnalysisServices.AdomdClient.AdomdConnectionException: A connection cannot be made. Ensure that the server is running. > System.Runtime.InteropServices.COMException (0x80040154): Retrieving the COM class factory for component with CLSID {B9776FC2-70D8-4664-A0DF-998114524D67} failed due to the following error: 80040154.
at Microsoft.AnalysisServices.AdomdClient.IXMLAStream..ctor()
End of inner exception stack trace
at Microsoft.AnalysisServices.AdomdClient.XmlaClient.OpenIXMLAConnection(ConnectionInfo connectionInfo)
at Microsoft.AnalysisServices.AdomdClient.XmlaClient.Connect(ConnectionInfo connectionInfo, Boolean beginSession)
at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.XmlaClientProvider.Microsoft.AnalysisServices.AdomdClient.AdomdConnection.IXmlaClientProviderEx.ConnectIXmla()
at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectToIXMLA(Boolean createSession)
at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.Open()
at ado2000.Form1.button1_Click(Object sender, EventArgs e) in L:\ComponentesNet\ado2000\ado2000\Form1.cs:line 43
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
-
ado2000
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///E:/Desarrollo/ComponentesNet/ado2000/ado2000/bin/Debug/ado2000.exe
-
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
-
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
-
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
-
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
-
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
-
Microsoft.AnalysisServices.AdomdClient
Assembly Version: 9.0.242.0
Win32 Version: 9.00.1399.00
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.AnalysisServices.AdomdClient/9.0.242.0__89845dcd8080cc91/Microsoft.AnalysisServices.AdomdClient.dll
-
System.Data
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_64/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
-

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


tks....

hello,

from the error message above it looks likes you don't have IXMLA component (msadomdx.dll) properly installed/registered on your box. I suggest you either try to manually register this dll and see if this maybe helps, or perhaps re-run the setup for adomd.net on your box. (normally the dll would be located somewhere in %ProgramFiles%\Microsoft.Net\Adomd.Net\90\)

Also, note that you also need to have an msolap80 provider installed on your box as well to connect to AS2000.

as to the other ways to connect - you can also try using ole db perhaps. code might look something like below:

using System.Data.OleDb;

using(OleDbConnection connection=new OleDbConnection())

{

connection.ConnectionString = "Provider=MSOLAP.3;Data Source=localhost;"; // your connection string here

connection.Open();

// working with opened connection

}

hope this helps,

No comments:

Post a Comment