首页 > 解决方案 > AMO OLAP 查询绑定

问题描述

根据业务逻辑,有时我需要更改 Cube 中客户维度的源表。

以前我使用以下代码更改多维数据集的结构:

    MyServerDataSourceView.Schema.Tables["DimCustomers"].ExtendedProperties["QueryDefinition"] = "new query";
    MyServerDataSourceView.Update(); // update to new definition
    DimCustomer.Process(ProcessType.ProcessAdd, EF);
    MyServerDataSourceView.Schema.Tables["DimCustomers"].ExtendedProperties["QueryDefinition"] = "old regularquery";
    MyServerDataSourceView.Update(); // revert back to old definition

但这并不值得信赖。有时它不会恢复查询定义。

Visual Studio 表明可以使用queryBinding在此处输入图像描述

我正在尝试这样的代码:

string queryAdd = "SELECT [a],[b],[c] FROM ase.newtable";

QueryBinding queryBinding = new QueryBinding();
queryBinding.QueryDefinition = queryAdd;
DimCustomer.Process(ProcessType.ProcessAdd, queryBinding);

并得到以下错误,它并没有说太多:

警告:ProcessAdd 客户维度的 0x80019002 - 序列容器:SSIS 警告代码 DTS_W_MAXIMUMERRORCOUNTREACHED。Execution 方法成功,但引发的错误数 (1) 达到了允许的最大值 (1);导致失败。当错误数量达到 MaximumErrorCount 中指定的数量时,就会发生这种情况。更改 MaximumErrorCount 或修复错误。

我试图研究Microsoft 文档,但没有找到任何示例或明确的解释。

标签: c#sql-serverssisssas

解决方案


推荐阅读