2012년 SQL Server DQS 정리 변환을 실행할 때 오류(DQS 정리가 사전 실행 단계에 실패함)

이 문서는 2012년 SQL Server SSIS 로그에 오류가 기록되는 문제를 해결하는 데 도움이 됩니다.

적용 대상: SQL Server 2012 Developer, SQL Server 2012 Enterprise, SQL Server 2012 Standard
원본 KB 번호: 2715968

증상

다음과 같은 경우를 생각해볼 수 있습니다.

  • SSIS(SQL Server-Integrated Service) Data Flow DQS(Data Quality Services) 정리 변환을 사용하여 Microsoft SQL Server 2012에서 데이터를 정리합니다.
  • DQS 정리 변환의 "오류 출력 구성" 설정을 "리디렉션 행"으로 설정합니다. 그러나 오류 출력을 저장할 위치를 지정하지 않습니다.
  • SSIS 패키지를 실행합니다.

이 시나리오에서는 다음 오류 메시지가 SSIS 로그에 기록됩니다.

DQS 정리가 사전 실행 단계에 실패하고 오류 코드 0x80070057 반환했습니다.
System.ArgumentException: 값이 예상 범위 내에 속하지 않습니다.
at Microsoft.SqlServer.Dts.pipeline.Wrapper.IDTSBufferManager100.FindColumnByLineageID(Int32 hBufferType, Int32 nLineageID)
microsoft.Ssdqs.Component.DataCorrection.Logic.DataCorrectionComponent.PreExecute() at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostPreExecute(IDTSManagedComponentWrapper100 래퍼)

원인

이 문제는 DQS 도메인 조건 및 규칙을 충족하지 않는 행에 대해 생성된 오류 출력에 대해 대상이 설정되지 않았기 때문에 발생합니다.

해결 방법

이 문제를 해결하려면 다음 방법 중 하나를 사용합니다.

  • 방법 1

    오류 행을 리디렉션하지 않으려면 다음 단계에 따라 문제를 resolve.

    1. DQS 정리 변환 편집기 DQS 구성 요소를 엽니다.
    2. DQS 정리 변환 편집기 아래쪽에 있는 오류 출력 구성 드롭다운 목록에서 실패 구성 요소를 선택합니다.
  • 방법 2

    오류 행을 리디렉션해야 하는 경우 오류를 리디렉션할 대상 위치가 있는지 확인해야 합니다.