We wpisie Jak uruchomić pakiet SSIS z TSQL w Management Studio? pokazałem jak uruchomić pakiet SSIS w management studio. W wersji SQL 2012 istnieje możliwość zdefiniowania tzw. Data Tap. Polega to na tym, że w Data Flow Task zostanie dodany „jakby Data Viewer”, ale jego celem nie będzie pokazanie rekordów przepływających z jednego tasku do drugiego w przeglądarce, ale raczej zapisanie tych rekordów w pliku. Kolejne instrukcje widać poniżej:
1. Przygotowanie pakietu do uruchomienia:
Declare @execution_id bigint EXEC [SSISDB].[catalog].[create_execution] @package_name=N’Package.dtsx’, @execution_id=@execution_id OUTPUT, @folder_name=N’SSIS LookUp’, @project_name=N’SSIS LookUp’, @use32bitruntime=False, @reference_id=Null Select @execution_id2. Podpięcie DataTap podajesz package path (w SQL Data Tools właściwości Data Flow Task – odczytaj i przekopiuj) oraz identyfikator ścieżki danych (strzałki łączącej dwa taski, z którego rekordy chcesz zalogować – włsćiwość strzałki w SQL Data Tools):
EXEC [SSISDB].[catalog].add_data_tap @execution_id = @execution_id, @task_package_path = '\Package\Sequence Container\Data Flow Task’, @dataflow_path_id_string = 'Paths[Lookup.Lookup No Match Output]’, @data_filename = 'output.txt’3. Uruchomienie pakietu. Plik output.txt powstanie w C:\Program Files\Microsoft SQL Server\110\DTS\DataDumps
DECLARE @var0 smallint = 1 EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id, @object_type=50, @parameter_name=N’LOGGING_LEVEL’, @parameter_value=@var0 EXEC [SSISDB].[catalog].[start_execution] @execution_idDokładniejszy opis na blogu: http://www.bidn.com/blogs/KathiKellenberger/sql-server/2904/ssis-2012-data-tap