我有一个Master程序包,它包含每天运行的所有作业的计划。部署在服务器上时,我的几个软件包都失败了(它的文件系统部署)。 SSIS包在我的开发机器上运行正常,或者在服务器上独立运行。但奇怪的是,它们在作为预定作业的一部分运行时失败。我启用了SQL日志记录,错误很容易解释和排序,但是当我尝试在开发环境中进行调试时,它运行正常。我有一个环境变量,它保存连接字符串,SSIS包部署是一个文件部署,为所有作业启用了SQL日志记录。问题是我无法在我的开发机器上复制错误,因为导入发生时没有任何问题,但只有当它在失败时作为预定作业的一部分运行时才会发生。它也会截断表格,但在导入数据时它会因数据截断错误而失败。
我无法弄清楚我在这里缺少什么,非常感谢任何帮助。
来自dbo.sysssislog表的SSIS sql错误日志:
Anz_Isis_Cfv_Import_TblRefSDGPLHierarchyBU 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000开始执行包裹。
Anz_Isis_Cfv_Import_TblRefSDGPLHierarchyBU 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000数据转换失败。 “vcrFlgActive”列的数据转换返回状态值4和状态文本“文本被截断或目标代码页中的一个或多个字符不匹配。”。
Anz_Isis_Cfv_Master 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000数据转换失败。 “vcrFlgActive”列的数据转换返回状态值4和状态文本“文本被截断或目标代码页中的一个或多个字符不匹配。”。
Anz_Isis_Cfv_Import_TblRefSDGPLHierarchyBU 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000“输出列”vcrFlgActive“(71)”失败,因为发生了截断,截断行处置“输出列”vcrFlgActive“( 71)“指定截断失败。指定组件的指定对象发生截断错误
Anz_Isis_Cfv_Master 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000“输出列”vcrFlgActive“(71)”失败,因为发生了截断,截断行处置“输出列”vcrFlgActive“( 71)“指定截断失败。指定组件的指定对象发生截断错误
Anz_Isis_Cfv_Import_TblRefSDGPLHierarchyBU 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000处理文件“\ Svrau530csm02.oceania.corp.anz.com \ infra \ Markets Finance \ CFV IN \ tblRefSD_GPL_Hierachy_BU_20141114.csv时发生错误“在数据行2上
Anz_Isis_Cfv_Master 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000处理文件“\ Svrau530csm02.oceania.corp.anz.com \ infra \ Markets Finance \ CFV IN \ tblRefSD_GPL_Hierachy_BU_20141114.csv时发生错误“在数据行2上
Anz_Isis_Cfv_Import_TblRefSDGPLHierarchyBU 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000 SSIS错误代码DTS_E_PRIMEOUTPUTFAILED。组件“Flat File Source”(1)上的PrimeOutput方法返回错误代码0xC0202092。当管道引擎调用PrimeOutput()时,组件返回失败代码。失败代码的含义由组件定义,但错误是致命的,管道停止执行。在此之前可能会发布错误消息,其中包含有关故障的更多信息
Anz_Isis_Cfv_Master 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000 SSIS错误代码DTS_E_PRIMEOUTPUTFAILED。组件“Flat File Source”(1)上的PrimeOutput方法返回错误代码0xC0202092。当管道引擎调用PrimeOutput()时,组件返回失败代码。失败代码的含义由组件定义,但错误是致命的,管道停止执行。在此之前可能会发布错误消息,其中包含有关故障的更多信息
Anz_Isis_Cfv_Import_TblRefSDGPLHierarchyBU 2014-11-14 08:08:33.000 2014-11-14 08:08:33.000包执行结束
答案 0 :(得分:0)
错误消息“列的数据转换”vcrFlgActive“返回状态值4和状态文本”文本被截断或目标代码页中的一个或多个字符不匹配。“将指向与数据相关的问题:I假设在服务器上有一些数据大于目标列允许的数据,但在开发环境中不存在这种情况。
电子。 G。一个长度为23的字符串,而您的列crFlgActive
的数据类型长度为20的SSIS DT_STR
。
查找导致问题的数据的一种方法是将目标组件配置为重定向导致问题而不是失败的记录。重定向可以是表格,也可以是CSV或Excel文件。