2015-11-04 3 views
0

У меня есть пакет SSIS для загрузки некоторых данных в зависимости от месяца, и я хочу вызвать пакет через оконный пакетный файл. Вот что в файле CMD, который работает отлично теперь:Передавать значение переменной при выполнении пакета SSIS

CD /D C:\Program Files\Microsoft SQL Server\100\DTS\Binn 

DTExec.exe /f "E:\APAutomation\SSIS\AP\ActualDataImport_Console_PL.dtsx" /SET \Package.Variables[User::ActualMonth].Properties[Value]; "9" 

Теперь я заменю 9 с переменной так, чтобы сделать его менее жёстко

CD /D C:\Program Files\Microsoft SQL Server\100\DTS\Binn 
set ActualMonth = 9 

DTExec.exe /f "E:\APAutomation\SSIS\AP\ActualDataImport_Console_PL.dtsx" /SET \Package.Variables[User::ActualMonth].Properties[Value]; "%ActualMonth%" 

однако, это не будет работать: это это сообщ ошибка:

C:\Program Files\Microsoft SQL Server\100\DTS\Binn>DTExec.exe /f "E:\APAutomatio 
n\SSIS\AP\ActualDataImport_Console_PL.dtsx" /SET \Package.Variables[User::Actual 
Month].Properties[Value]; "" 
Microsoft (R) SQL Server Execute Package Utility 
Version 10.50.1600.1 for 64-bit 
Copyright (C) Microsoft Corporation 2010. All rights reserved. 

Argument ""\Package.Variables[User::ActualMonth].Properties[Value];"" for option 
"set" is not valid. 

C:\Program Files\Microsoft SQL Server\100\DTS\Binn>pause 
Press any key to continue . . . 

Я также попытался:

set ActualMonth = "9" 
DTExec.exe /f "E:\APAutomation\SSIS\AP\ActualDataImport_Console_PL.dtsx" /SET \Package.Variables[User::ActualMonth].Properties[Value]; %ActualMonth% 

он бросил мне ту же ошибку msg. Помощь Pls!

ответ

0

Я думаю, что ваша конкретная проблема пространства ...

использовать этот

set ActualMonth=9 

вместо этого:

set ActualMonth = 9 

Что вы делаете в основном установки пакета конфигурации из командного файла. Это может сработать лучше, если вы настроите пакет для чтения из файла конфигурации пакета и разместите там номер месяца.

+0

Вы правы! Просто узнал. спасибо – Jasmine

+0

Я предлагаю вам посмотреть в конфигурации пакетов ... вы собираетесь устанавливать этот месяц вручную каждый раз? –

+0

Благодарю вас за ваше предложение. На самом деле в моем реальном пакете я называю файл bat setenviroment, который является значением параметров. о котором я не упомянул, чтобы просто и сосредоточиться на вопросе, который я задаю здесь. – Jasmine

Смежные вопросы