如何捕获“包装验证错误”之类的错误

时间:2019-06-26 14:50:29

标签: sql-server validation ssis event-handling package

我该如何读取用户放入共享文件夹中的一些Excel文件。当用户更改工作表名称或更改用于共享数据的某些行或列中的位置时,就会发生此问题。

在这种情况下,SSIS显示程序包验证错误。

  

包装验证错误------------------------------包装验证错误----------- - - - - - - - - - -额外   PackageName [SSIS.Pipeline] _ Leer Staging Modelo上的INFORMATION_Error   LS2 验证失败并返回验证状态   _VS_NEEDSNEWMETADATA_.PackageName [SSIS.Pipeline] _错误。一个或多个组件验证失败。PackageName_错误   任务验证过程中的错误。   (Microsoft.DataTransformationServices.VsIntegration)------------------------------ BUTTONS_OK ------------ ------------------

是否可以使用事件处理程序或其他选项捕获此类错误以检测错误?

1 个答案:

答案 0 :(得分:1)

您可以为数据流任务的OnError事件添加事件处理程序,并从系统变量@[System::ErrorCode]@[System::ErrorDescription]中读取错误描述:

如果您想了解有关事件Hanlders的更多信息,请查看以下文章:


更新1-解决方法

您可以使用System.IO.File.Exists()方法使用脚本任务来检查此excel文件是否存在。

然后,您可以使用Microsoft.Interop.Excel库或System.Data.Oledb检查Excel中是否存在工作表: