2013-08-19 6 views
1

패키지의 제어 흐름 내에서 Foreach 루프 컨테이너에서 스크립트를 실행하고 있습니다. 스크립트에서 SSIS에서 전파되지 않도록 경고합니다.

, 난 시스템이 모두 false로 변수를 전파 설정 한 다음 성공

Dts.Events.FireWarning(-1, "", "warning message here", "", 0); 

Dts.TaskResult = (int)ScriptResults.Success; 

과 종료, 경고를 던지는하고있다.

또한 DisableEventHandlers 패키지 속성을 True로 설정해 보았습니다.

나는 아마도 로그온 할 수

  1. 스크립트
  2. Foreach 루프 컨테이너
  3. 패키지 :

    Variables

    그러나, 경고 메시지가 여전히 순으로 발생되는 중복 경고 대신 정보로 각 사건 ...하지만 난 원하지 않아. 모든 정보를 기록하십시오. 모든 경고 로깅은 훨씬 더 현실적입니다.

답변

1

스크립트 작업에 대한 OnWarning 이벤트 처리기를 만듭니다. 이벤트 핸들러는 자체의 태스크를 필요로하지 않지만 시스템 변수 Propagate를 False로 설정해야합니다.

+0

감사합니다. 내 패키지의 모든 Task를 거쳐 Event Handler 속성을 수정해야만했던 것 같습니다. 세계적인 변화를 취할 수있는 방법이 있습니까? 패키지의 OnWarning 이벤트 처리기를 설정하려고했지만 각 작업을 개별적으로 변경하지 않아도 아무런 영향이 없었습니다. – adam

+0

전역 설정 방법이 없다고 생각하지만, 이것을 수행하기 위해 Sequence Containers를 자주 사용합니다. 따라서 Sequence Container 내부의 모든 오류가 외부로 전파되지 않도록해야합니다. –