2012-04-26 2 views
2

다른 서버의 작업이 성공적으로 끝나자 마자 메일을 보내거나 자동으로 내 서버에서 작업을 시작하고 싶습니다. 다른 서버에 대한 액세스 권한이 있으며 작업 상태를 볼 수는 있지만 SSIS 패키지를 실행중인 작업 자체는 변경할 수 없습니다.다른 서버의 작업이 완료되면 작업 또는 프로세스를 시작하는 방법은 무엇입니까?

기본적으로 소스가 자체적으로 새로 고침을 멈추자 마자 작업을 통해 ETL을 실행하여 데이터베이스를 새로 고침하고 싶습니다. 이 Windows 서비스 구현 옆에 제안을 갖고 싶습니다.

+1

타사에서 웹 서비스를 호출 할 수 있습니까? 아니면 파일의 기록이 중단 될 때 조치를 취할 수 있습니까? – Seph

+0

두 가지 기본 옵션. '1.' 제 3 자에게 'Finished'메시지를 보냅니다. '2.' 제 3 자에게 직접 설문하고 ETL이 끝나면 ETL을 시작하십시오. '질문? '제 3자가 귀하의 서버에서 SP에 전화를 걸거나 귀하의 서버에서 SQL Server 에이전트를 사용할 수 있다면 어떤 장애가 귀하의 장애물이 될 수 있습니까? – MatBailie

+0

Microsoft SSIS,이 ETL 패키지 및 구성 파일을 선택하여 실행하는 SQL Server 2008에서 작업을 작성합니다. – Vaibhav

답변

1

질문과 제목을보다 명확하게 편집 할 수있는 자유를 얻었습니다. 설명에서 이해할 수 있듯이 서버 B의 작업이 성공적으로 완료되면 서버 A에서 작업을 실행하거나 다른 프로세스를 시작하려고합니다. 서버 B의 작업 정의는 변경할 수 없지만 여기에 로그온하여 작업 기록을 볼 수 있습니다.

서버 B에서 작업 또는 다른 것을 변경할 수 없다면 이는 작업이 완료되면 서버 A에 알릴 수 없음을 의미합니다. 따라서 Windows 서비스를 사용하여 서버 A에서 서버 B를 쿼리하거나 몇 분마다 (또는 시간 또는 기타 적절한 경우) 실행되는 간단한 스크립트를 사용해야합니다.

SMO Job 클래스를 사용하여 .NET 또는 PowerShell에서 작업 상태를 쿼리하거나 sp_help_job 절차를 사용하여 TSQL에서 작업 상태를 쿼리 할 수 ​​있습니다. 어떤 솔루션이 더 좋은지는 폴링 메커니즘을 어떻게 구현할 것인가에 달려 있습니다.

+0

내 엉터리로 작성된 질문을 업데이트 해 주셔서 감사합니다 ^.^. 제안 된 방법 중 하나를 구현하고 완료 될 때 답을 표시하십시오. – Vaibhav

관련 문제