2014-01-22 2 views
1

SSIS 패키지 오류 처리기를 구현하려고합니다. 전체 패키지 및 실패 작업에서 onError 이벤트 처리기를 추가했습니다. 여기서는 제어 흐름에서 오류가 예상됩니다.SSIS 유효성 검사 실패 처리

패키지의 주요 작업은 db에서 데이터를 가져 오는 것입니다. 오류 처리기는 오류 설명이있는 전자 메일 메시지 보내기 전자 메일 메시지입니다.

이제 일반적인 오류를 에뮬레이트하려고합니다. SQL 쿼리에서 일부 변경 (예 : 열 중 하나에 잘못된 이름 설정)을 수행하고 패키지를 실행하려고합니다. 내가 볼 무엇

패키지는 검증 단계에 실패하고 심지어 그것은 심지어 바로 확인 후 실패, 실행을 procceed하지 않습니다

Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occured. Error Code 0x80040E14. An OLE DB record is available. Source "Microsoft SQL Server Native Client 11.0"  
Hresult 0x80040E14 Description "Statement(s) could not be prepared" 
Description "The multipart identifier "MyTable.SomeWrongField" could not be bound". 
Error: "OLE DB Source" failed validation and returned validation status "VS_BROKEN". 

말, 실행을 진행하지 않습니다. 오류 처리를 설정하여 모든 오류 (이 문제 (잘못된 SQL 요청))조차도 처리하도록 설정하는 방법은 무엇입니까?

감사합니다.

+0

메일 작업으로 OnTaskFailed 또는 OnPreValidate라는 이벤트 핸들러를 만들 수 있습니다. –

+0

OnTaskFailed도 작동하지 않습니다. – user2703790

답변

1

A 유효성 검사 오류는 SSIS 구문 오류와 동일합니다. 사형 집행이 끝나면 회복의 기회는 없습니다. OnTaskFailed 및 OnError는이 유형의 오류를 catch하지 않습니다 (패키지 자체에서 오류 알림을 더 이상 구현하지 않는 이유 중 하나)

+0

이러한 오류가 발생하는 경우 알림을 수행합니까? – user2703790