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




消息7390,第16级,状态2,第20行
因为链接服务器“ SSAS”的OLE DB提供程序“ MSOLAP”而被执行
不支持所需的事务接口。


我的查询:

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


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

最佳答案

我使用@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'

10-04 13:01