我有一个SSIS包来执行多维数据集的增量处理。在此包中的序列容器中,我们有一个脚本任务来计算行数。
脚本任务中的代码如下:
public void Main()
{
string connectionString = "Data Source=localhost;PROVIDER=MSOLAP;Impersonation Level=Impersonate;Catalog=EcovaPlatform";
connectionString = connectionString.Replace("localhost", Dts.Variables["User::CubeServer1"].Value.ToString()).Replace("EcovaPlatform", Dts.Variables["User::CubeName1"].Value.ToString());
string queryString = "evaluate row(\"count\", countrows(BillDetail))";
AdomdConnection connection = new AdomdConnection(connectionString);
connection.Open();
AdomdCommand cmd = new AdomdCommand(queryString);
cmd.Connection = connection;
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
Dts.Variables["CubeBillDetailRowCount1"].Value = Convert.ToInt64(reader[0]);
}
}
Dts.TaskResult = (int)ScriptResults.Success;
但是每隔一段时间,这个脚本任务(这里我假设它的脚本任务)就会失败。它抛出以下错误:
来源名称:多维数据集表RowCount 错误代码:1 错误描述:调用目标抛出了异常。
现在我不知道如何解决这个问题。所以我转向你们好人,指引我朝着正确的方向前进。 如果有人想查看XMLA脚本,我也可以发布它。 感谢。