I am trying to evaluate Ranet OLAP (WPF) product for one of our use cases. For that purpose I am trying establish a connection with Essbase cube but “Check Connection” buton is throwing below error.
There were errors while connection checking:System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary. at System.Collections.Generic.Dictionary`2.get_Item(TKey key) at Microsoft.AnalysisServices.AdomdClient.ConnectionInfo.FillIXMLAProperties() at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.XmlaClientProvider.Microsoft.AnalysisServices.AdomdClient.AdomdConnection.IXmlaClientProviderEx.CreateSession(Boolean sendNamespaceCompatibility) at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectToIXMLA(Boolean createSession) at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.Open() at Ranet.Web.Olap.OlapDataService.CheckConnectionString(String schema)
My connection URL looks like: Provider=MSOLAP.4;Data Source=http://:/aps/XMLA;Catalog=;User=;Password=;
Is Essbase connection supported on this product?
Replies
User
Description
Posted On
parshurampatkiClient
Is there any update on this please?
DmitriyClient
Hi parshurampatki,
Ranet UILibrary uses Adomd Net to connect to XMLA providers. Based on provided stack trace it seems Adomd Net is not able to open connection to Essbase data source. Perhaps, Essbase does not fully support XMLA protocol. As a possible start to resolve this issue - is to create a new .Net project, add Adomd Net nuget package:
and try to open connection to your data source. The version of Ranet UILibrary you tried uses 10 version of AdmdClient. Try to connect to Essbase data source with the latest version of Adomd Net (the link above). If Connection will be successfully opened we will provide you with a fresh build of Ranet UILibrary with 15 version of Adomd Net.
Regards,
Ranet UILibrary dev team.
parshurampatkiClient
Based on what we have researched the dll you recommended is incompatible with our server version, given the error above. Our Server is Essbase XML For Analysis - Release 11.1.2.4.000.209. Can you recommend something on this or provide us a version the dll that is compatible with out server?
Code: using (AdomdConnection adomdConnection = new AdomdConnection(connString)) { adomdConnection.Open(); adomdConnection.Close(); }
StackTrace:
System.Xml.XmlException was unhandled HResult=-2146232000 LineNumber=1 LinePosition=252 Message=Element 'return' was not found. Line 1, position 252. Source=System.Xml StackTrace: at System.Xml.XmlReader.ReadStartElement(String name) at Microsoft.AnalysisServices.AdomdClient.XmlaReader.ReadStartElement(String name) at Microsoft.AnalysisServices.AdomdClient.XmlaClient.SupportsProperty(String propName) at Microsoft.AnalysisServices.AdomdClient.XmlaClient.Connect(ConnectionInfo connectionInfo, Boolean beginSession) at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.XmlaClientProvider.Connect(Boolean toIXMLA) at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectToXMLA(Boolean createSession, Boolean isHTTP) at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.Open() at EssbaseTest.Program.Main(String[] args) in C:\Temp\Local\EssbaseTest\EssbaseTest\Program.cs:line 20 at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() InnerException:
DmitriyClient
I guess, Essbase does not fully implement XMLA protocol. It is possibly implemented in a way, which allows applications like MS Excel to connect to Essbase data source. However, this implementation does not satisfy Adomd Net, which expects full XMLA protocol implementation.
parshurampatkiClient
The documentation specifies that it does support XMLA protocol. See chapter 3.
Essbase definitely supports XMLA, but its implementation differs from what Adomd Net expects. In other case, you would be able to connect to Essbase data source with Adomd Net.
parshurampatkiClient
Do you Ranet OLAP HTML version requires Adomd or it can post requests using http client?
DmitriyClient
Ranet OLAP HTML also uses Adomd Net to connect to XMLA data source.