我有一个 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;
但是每隔一段时间,这个脚本任务(这里我假设它的脚本任务)都会失败。它抛出以下错误:
源名称:Cube Table RowCount 错误代码:1 错误描述:调用的目标已引发异常。
现在我不知道如何解决这个问题。所以我转向你们这些好人,引导我朝着正确的方向前进。如果有人想查看 XMLA 脚本,我也可以发布。谢谢。