2

我有一个新的 SSAS 2016 表格模型(1200 兼容级别)。我正在尝试设置一个 SQL 代理作业来每天处理模型。但是,当作业运行时,它会引发以下错误:

Xmla 异常。第 7 行第 17 列的 { 文本节点不能出现在 Envelope/Body/Execute 下的 Command 元素(命名空间 urn:schemas-microsoft-com:xmla-analysis)内。此元素只能具有包含空白字符的文本节点。

命令是:

{
  "refresh": {
     "type": "full",
     "objects": [
       {
         "database": "Finance"
       }
      ]
   }
}

当我在 SSMS 中执行它时,这可以正常工作,但在通过 SQL 代理作业运行时会失败。

4

3 回答 3

2

我发现了问题所在。原来 SQL Server 引擎是 2014 版,而 SSAS 是 2016 版。这就是导致问题的原因。我试图使用 SQL 2014 SQL 代理处理 2016 SSAS 表格模型。一旦我意识到这一点,我就改用 2016 年的代理,现在这项工作正在发挥作用。

于 2016-11-27T11:08:13.757 回答
0

看起来您尝试执行的命令使用 TMSL(表格模型脚本语言),但 SQL 代理需要 XMLA。

该站点描述了如何在 XMLA http://biinsight.com/how-to-automate-ssas-tabular-model-processing/中获取等效命令

于 2016-11-24T10:55:30.793 回答
0

由于兼容性级别之间的冲突,我也面临同样的问题....我发现的最佳解决方案是使用具有 SSAS 表格模式凭据的代理并以 Sql Server Analysis Services Query 类型运行并使用代理作为

于 2020-10-19T16:19:19.353 回答