SQL Server Integration Services에서 메일 보내기 작업에 대한 동적 제목 또는 메시지 만들기

이 문서에서는 속성 식을 만들어 런타임에 SQL Server Integration Services(SSIS) 개체의 속성을 업데이트하는 방법을 보여 줍니다.

원래 제품 버전: SQL Server
원본 KB 번호: 906547

소개

SQL Server Business Intelligence Development Studio를 사용하여 SSIS 패키지를 만들 수 있습니다. 이 패키지를 만들 때 업데이트하거나 런타임에 속성을 채울 SSIS 패키지의 속성에 대한 식을 만들 수 있습니다. 예를 들어 SSIS 패키지에 메일 보내기 작업이 포함된 경우 Subject 속성 및 속성에 대한 MessageSource 식을 만들 수 있습니다. Subject 속성 식을 사용하여 전자 메일 메시지의 제목을 동적으로 업데이트할 수 있습니다. 속성 식을 사용하여 MessageSource 행 개수 변환으로 채워진 변수와 같이 전자 메일 메시지의 변수를 동적으로 업데이트할 수 있습니다.

이 문서에서는 메일 보내기 태스크에 대한 동적 제목 또는 메시지를 만드는 방법을 설명합니다.

추가 정보

다음은 메일 보내기 작업의 Subject 속성에 대한 샘플 속성 식입니다.

"Package>>> " + @[System::PackageName] +" was executed at>>> " + (DT_WSTR, 40) @[System::StartTime] + " by user>>> "
+ @[System::UserName] + " on Machine>>> " + @[System::MachineName]

이 샘플 속성 식을 사용하는 경우 전자 메일 메시지의 제목이 동적으로 업데이트됩니다. 제목에는 다음 정보가 포함됩니다.

  • 텍스트 정보 이 예제에서는 전자 메일 메시지 제목에 Package>>> 텍스트 정보가 포함됩니다.
  • 시스템 변수
    전자 메일 메시지에는 다음 시스템 변수가 포함됩니다.
    • PackageName
      패키지 이름입니다.
    • StartTime
      패키지가 실행된 시간입니다.
    • UserName
      패키지를 실행한 사용자입니다.
    • MachineName
      패키지가 실행된 컴퓨터의 이름입니다.

식에 사용자 정의 변수와 같은 추가 정보를 포함할 수도 있습니다. 예를 들어 Data Flow 작업에는 메일 보내기 작업 전에 행 개수 변환이 포함될 수 있습니다. 행 개수 변환은 행 수를 계산하는 데 사용됩니다. 행 개수 변환은 @myrowcount 명명된 사용자 정의 변수를 채웁니다. 이 변수는 데이터 흐름에 개수 정보를 저장합니다.

행 수가 특정 값보다 작은 경우에만 전자 메일 메시지를 보내도록 지정하려면 우선 순위 제약 조건을 사용하여 제어 흐름을 수정합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. SQL Server Business Intelligence Development Studio에서 Data Flow 작업을 마우스 오른쪽 단추로 클릭한 다음 선행 제약 조건 추가를 클릭합니다.

  2. 만든 선행 제약 조건을 두 번 클릭합니다.

  3. 선행 제약 조건 편집기 대화 상자에서 평가 작업에서 식 및 제약 조건을 클릭합니다.

  4. 상자에 식을 입력합니다.@myrowcount < 2

  5. 선행 제약 조건 편집기 대화 상자에서 확인을 클릭합니다.

데이터 흐름에서 두 개 미만의 행이 처리되면 전자 메일 메시지가 전송됩니다.

또한 메일 보내기 작업을 오류 처리기의 일부로 사용할 수 있습니다. 예를 들어 SSIS 패키지가 실행되지 않을 때 관리자에게 전자 메일 메시지를 보낼 수 있습니다. 이렇게 하려면 패키지에 대한 OnError 이벤트 처리기를 만든 다음 이벤트 처리기에 메일 보내기 작업을 추가합니다. 패키지가 실행되는 시간, 컨테이너의 시작 시간 또는 관련 시스템 변수에서 이벤트 처리기의 시작 시간을 캡처하는 주체 속성 식을 만듭니다. 예를 들어 다음과 유사한 식을 만듭니다.

"Error in the task: " + @[System::SourceName] + "with the ID: " + @[System::SourceID]
+ " has failed at: " + (DT_WSTR, 20) @[System::ContainerStartTime] + "."

이 샘플 식은 다음 시스템 변수를 사용합니다.

  • StartTime: 패키지가 실행된 시간입니다.
  • ContainerStartTime: 컨테이너가 시작된 시간입니다.
  • EventHandlerStartTime: 이벤트 처리기가 시작된 시간입니다.

참조

자세한 내용은 온라인 SQL Server 설명서에서 다음 topics 참조하세요.

  • 패키지에서 속성 식 사용
  • 방법: 속성 식 만들기
  • 고급 Integration Services 식
  • 선행 제약 조건
  • 작업 및 컨테이너에 대한 선행 제약 조건 설정
  • Integration Services 이벤트 처리기