IDTSDesigntimeComponent100.Validate 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
public:
Microsoft::SqlServer::Dts::Pipeline::Wrapper::Sql2012::DTSValidationStatus Validate();
[System.Runtime.InteropServices.DispId(29)]
public Microsoft.SqlServer.Dts.Pipeline.Wrapper.Sql2012.DTSValidationStatus Validate ();
[<System.Runtime.InteropServices.DispId(29)>]
abstract member Validate : unit -> Microsoft.SqlServer.Dts.Pipeline.Wrapper.Sql2012.DTSValidationStatus
Public Function Validate () As DTSValidationStatus
반환
구성 요소의 상태를 나타내는 DTSValidationStatus 열거형의 값입니다.
- 특성
설명
Validate 메서드는 구성 요소가 올바르게 구성되었는지 확인하기 위해 구성 요소 개발자가 구현합니다. 패키지 디자인 중에 반복적으로 호출되고 구성 요소를 실행하기 전에 한 번 호출됩니다. 구성 요소는 유효성 검사 중에 IDTSComponentMetaData100을 수정해서는 안 됩니다.
각 구성 요소에는 성공적인 유효성 검사를 위한 요구 사항이 다르지만 다음 목록에서는 유효성을 검사해야 하는 몇 가지 일반적인 항목을 제공합니다.
구성 요소에 IDTSInput100 및 IDTSOutput100 개체의 예상 수가 있는지 확인합니다.
모든 IDTSCustomProperty100 개체가 계속 존재하고 올바른 값을 포함하는지 확인합니다.
IDTSInputColumnCollection100의 각 IDTSInputColumn100 개체가 업스트림 구성 요소의 기존 IDTSOutputColumn100 개체를 참조하는지 확인합니다.
구성 요소에서 연결을 사용하는 경우 IDTSRuntimeConnection100이 지정되고 ConnectionManager가 패키지에 있는지 확인합니다.
구성 요소는 유효성 검사에 실패할 때 사용자에게 피드백을 제공해야 합니다. 피드백은 FireError 및 FireWarning 메서드 및 DTSValidationStatus 반환 값을 통해 제공됩니다. FireError 및 FireWarning 메서드에 대한 호출은 SQL Server Data Tools(SSDT)의 작업 목록 창에 표시되며 유효성 검사 실패에 대한 사용자 지침을 제공해야 합니다. DTSValidationStatus 열거형의 4개 값 중 VS_ISVALID 유효성 검사에 성공했음을 나타냅니다. 다른 세 가지 값은 서로 다른 실패 수준을 나타냅니다. 다음 표에서는 열거형의 실패 값과 SSIS 디자이너에서 오류 값을 해석하는 방법을 설명합니다.
| 상태 | 설명 |
|---|---|
| VS_ISBROKEN | 구성 요소가 올바르게 구성되지 않음을 나타냅니다. 사용자가 문제를 해결하려면 ComponentMetaData를 변경해야 합니다. |
| VS_NEEDSNEWMETADATA | ReinitializeMetaData 메서드 구현에서 구성 요소에서 유효성 검사 오류를 수정할 수 있음을 나타냅니다. SSIS 디자이너는 열거형 값이 VS_NEEDSNEWMETADATA 때 구성 요소가 자체 복구할 수 있음을 사용자에게 표시합니다. 그런 다음 디자이너는 ReinitializeMetaData 메서드를 호출합니다. |
| VS_ISCORRUPT | ComponentMetaData가 손상되었으며 ReinitializeMetaData 메서드를 호출하거나 구성 요소를 편집하여 복구할 수 없음을 나타냅니다. |
데이터 흐름 태스크의 DelayValidation 속성이 true이면 Validate 메서드에 대한 디자인 타임 호출이 제거되고 대신 구성 요소 실행 전에 메서드가 호출됩니다.