I am getting the following error when attempting to INSERT the results of an "EXEC(@MDXQuery) at SSAS LinkedServer":
The requested operation could not be performed because OLE DB provider "MSOLAP" for linked server does not support the required transaction interface.
Here is code that illustrates what I am doing:
DECLARE @MDX varchar(max); SET @MDX=' SELECT { [Measures].[Extended Service Count] } ON COLUMNS, NON EMPTY [Organization].[By Manufacturer].[Manufacturer] ON ROWS FROM ( SELECT {[Organization].[Org Tree].&[2025],[Organization].[Org Tree].&[2040]} ON 0 FROM [MyCube] ) '; /* Test 1 */ EXECUTE(@MDX) at SSASLinkedServer; /* Test 2 */ DECLARE @ResultsB TABLE ( Manufacturer varchar(255) , ExtendedServiceCount float ); INSERT INTO @ResultsB (Manufacturer, ExtendedServiceCount) EXECUTE(@MDX) at SSASLinkedServer;
Test 1 succeeds, returning expected results, and Test 2 fails returning the error mentioned above.
Other articles I've found so far don't seem to apply to my case. I am not creating any explicit transactions in my code. When I use OPENQUERY, I am able to do the insert just fine, but not when I use EXEC @MDX at LinkedServer.
Unfortunately in some variations of the query, I run into the 8800 character limit on OPENQUERY, so I need to use this other approach.
Any ideas?
-Tab Alleman