无法执行请求的操作,因为OLE DB提供程序' MSOLAP'对于链接服务器' SSAS'不支持所需的界面

时间:2018-06-13 13:51:33

标签: sql-server ssas cube olap-cube

当我尝试使用链接服务器更新多维数据集时出现此错误:

enter image description here

  

Msg 7390,Level 16,State 2,Line 20请求的操作不能   执行因为OLE DB提供程序" MSOLAP"对于链接服务器" SSAS"   不支持所需的事务接口。

我的查询:

DECLARE @command VARCHAR(max) = 'UPDATE CUBE [TESTING] SET (
       [Measures].[Group Curr Amt Original],[Local Currency].[Local Currency].&[USD],[Time].[Fis Yr Month SKey].&[201806], [Transaction Currency].CurrencyName].&[US Dollar],  )=1234 USE_EQUAL_ALLOCATION;'

EXEC (@command) at SSAS

DECLARE @command2 VARCHAR(max) = 'commit tran'

EXEC (@command2) at SSAS

如果我不提交交易,则更新有效。有什么方法可以解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

请使用提到的here选项删除并重新创建链接服务器。

  

确保RPC和RPC Out设置为True

答案 1 :(得分:0)

我使用@GregGalloway的回答注释解决了这个问题。这是为链接服务器启用此功能的简单方法:

EXEC master.dbo.sp_serveroption @server = N'SSAS'
    ,@optname = N'rpc'
    ,@optvalue = N'true'

EXEC master.dbo.sp_serveroption @server = N'SSAS'
    ,@optname = N'rpc out'
    ,@optvalue = N'true'

EXEC master.dbo.sp_serveroption @server = N'SSAS'
    ,@optname = N'remote proc transaction promotion'
    ,@optvalue = N'false'