2013-07-18 3 views
4

dtexec 도구가 패키지가 실행 완료 될 때까지 (원격 SSIS 패키지를 가리킬 때까지) 종료되지 않게 할 방법이 있습니까?dtexec을 사용하여 원격 ssis 패키지 실행

패키지가 성공적으로 실행되지만 dtexec은 SQL Server의 "모든 실행"보고서에보고 된 실제 실행 시간보다 훨씬 짧은 런타임을보고합니다. 는 메시지를 출력합니다

To view the details for the execution, right-click on the Integration Services Catalog, and open the [All Executions] report 

내 목표는 명령 줄에서 dtexec를 킥오프 한 다음 패키지의 완료에 따라 다른 코드를 실행하는 것입니다. 이상적으로는 dtexec을 패키지가 실행 완료 될 때까지 종료하지 않기를 바란다.

이것이 가능합니까?

답변

4

당신은 내 링크는 링크로 응답하고 코드 만 대답하게하려면 SYNCHRONIZED 매개 변수

을 찾고, 여기 필의 코드에서 같은 동작을 얻으려면 TSQL

withing에
DECLARE @execution_id BIGINT = 0; 

-- Create a package execution 
EXEC [SSISDB].[catalog].[create_execution] 
     @package_name=N'Package.dtsx', 
     @[email protected]_id OUTPUT, 
     @folder_name=N'PhilsTest', 
     @project_name=N'Demo', 
     @use32bitruntime=False; 

EXEC [SSISDB].[catalog].[set_execution_parameter_value] 
     @execution_id, 
     @object_type=50, 
     @parameter_name=N'SYNCHRONIZED', 
     @parameter_value=1; -- true 


-- Start the package 
EXEC [SSISDB].[catalog].[start_execution] 
     @execution_id; 

을 그 일을위한거야 dtexec과 같은 매개 변수를 지정하면

DTExec 
/ISSERVER "\SSISDB\folderB\Integration Services Project17\Package.dtsx" 
/SERVER "." /Envreference 2 
/Par "$Project::ProjectParameter(Int32)";1 /Par "Parameter(Int32)";21 
/Par "CM.sqlcldb2.SSIS_repro.InitialCatalog";ssisdb 
/Par "$ServerOption::SYNCHRONIZED(Boolean)";True 
+0

과 같은 매개 변수가 지정됩니다. 감사! – TGH