2013-03-21 1 views
3

폴더에있는 csv 파일을 읽고 데이터베이스에 데이터를 업로드하는 SSIS 패키지가 있습니다. 또한 csv 파일을 읽고 데이터를 업로드 한 후 메일을 보내는 데 사용되는 메일 전송 구성 요소가 있습니다. 이 패키지는 C# 콘솔 응용 프로그램에서 프로그래밍 방식으로 호출됩니다. 콘솔 앱에서 패키지는 폴더에있는 각 파일에 대해 한 번 호출됩니다. 이 콘솔 앱은 Windows 작업 스케줄러를 통해 특정 시간에 매일 실행되도록 예약됩니다.Windows 작업 스케줄러를 통해 SSIS 패키지를 호출 할 때 SSIS에서 메일 보내기 작업이 작동하지 않습니다.

내가 직면 한 문제는 콘솔 앱의 exe를 직접 두 번 클릭하여 실행하면 데이터가 성공적으로 업로드되고 메일도 전송된다는 것입니다. 하지만 작업 스케줄러에서 동일한 콘솔 앱의 exe가 호출되면 csv 파일의 데이터가 성공적으로 업로드되지만 메일이 전송되지 않습니다 (메일 기능이 스케줄러의 경우 작동하지 않습니다)

무슨 문제 일 수 있습니다 ?

+0

이것은 콘솔 응용 프로그램이 Windows 작업 스케줄러를 통해 SSIS 패키지를 호출해서는 안된다는 점에서 거꾸로 보입니다. SSIS 에이전트를 통해 SSIS 패키지를 예약해야합니다. SSIS에는 파일 모음을 반복하는 도구가 내장되어 있습니다. –

+0

@MetroSmurf 콘솔 응용 프로그램에서 일부 조건을 기반으로 ssis 패키지 변수에 동적으로 값을 전달해야하므로 SSIS 패키지를 호출하고 있습니다. SSIS 자체에서 수행 할 수 있다고 확신하지만 메시지가 표시되지 않습니다. – seadrag0n

답변

1

가장 큰 원인은 사용 권한 문제입니다. 콘솔 앱이 실행되는 계정에는 계정이있는 동안 이메일을 보낼 수있는 권한이 없습니다. 콘솔 응용 프로그램에서 생성 된 오류 로그, Windows 이벤트 로그 항목 등이 있습니까?

+0

그것은 동일한 계정에서 실행되고 있지만 콘솔 응용 프로그램 프로세스를 보려면 "모든 사용자의 프로세스 표시"를 클릭해야합니다 ... 또한 콘솔 응용 프로그램이 실행될 때 발생하는 예외를 로깅합니다. 패키지 및 나는 어떤 오류가 발생하지 않습니다 ... – seadrag0n