2009-12-21 4 views
0

(DerivedColum 구성 요소의) 열을 확인하는 가장 좋은 방법은 NULL입니다. NULL => 로그 오류 이면 데이터 흐름을 계속하십시오.SSIS 오류 로깅 (데이터 흐름 필수 파생 열)

감사합니다.

+0

나는 조건부 분할을 선호하지만 오류를 발생시키는 것도 효과가있는 것처럼 보입니다 (아래 참조). –

답변

1

찾는 조건부 분할 null로 열을 제거하기 전 또는 유도 열 변형 후 변환.

또는는 :

  1. -1Dummy 변수를 만듭니다.
  2. 파생 된 열에서 ISNULL(myCol) ? (DT_I4)SQRT(@[User::Dummy]) : myCol
  3. 오류시 오류 출력을 redirect row으로 구성하십시오.
  4. 오류 출력을 플랫 파일 대상에 연결하십시오.

참고 : 2 단계에서

  • SQRT (-1) 오류를 일으킨다.
  • 2 단계에서 입력 캐스트가 myCol 유형과 일치하는지 확인하십시오. 나는 DT_I4을 사용했다.
1

부분적으로 도움이 될 수 있습니다.

파생 된 열 컨트롤을 conditive split 컨트롤로 흘려 보내십시오. 0이 아닌 값만 전달하려면 조건을 작성하십시오.

!(ISNULL(COLUMN_NAME)) 

그런 다음 조건부 분할을 표준 플로우에 다시 연결하십시오. 이렇게하면 올바른 인스턴스가 필요에 따라 흐르게됩니다.

내가 알 수없는 것은이 오류의 로깅입니다. 어쩌면 두 번째 조건을 만들려고 시도해보십시오.

(ISNULL(COLUMN_NAME)) 

일부 데이터 흐름 작업으로 인해 오류가 발생하지만 실제로는 그렇지 못합니다. 또는 행의 값을 사용하여 일부 로그 파일의 출력을 형성하는 다른 파생 열로 플로팅을 시도 할 수 있습니다.

관련 문제