Dtexe c ISSERVER возвращает неверный путь к серверу - PullRequest
1 голос
/ 29 января 2020

Я выполняю пакет служб SSIS через master..xp_cmdshell из хранимой процедуры и всегда получаю сообщение об ошибке

"Описание: '\ SSISDB \ Main \ Projects \ ProjectName \ Packages \ PackageName .dtsx 'не является допустимым путем к серверу. "

Я пробовал различные варианты перестановок и комбинаций на пути, но это не помогает. Этот пакет был перенесен с SQL 2008 (MSDB) на SQL 2016 (SSISDB), и я использую команду dtexe c (которая раньше использовала MSDB и теперь обновлена, чтобы указывать на SSISDB). Что я делаю не так?

dtexec /ISSERVER "\SSISDB\Main\Projects\ProjectName\Packages\PackageName.dtsx"  
/SERVER SERVERNAME /CONFIGFILE "D:\WorkSpace\Configurations.dtsConfig"  
/CHECKPOINTING OFF /REPORTING E /SET  
"\Package.Variables[User::LogId].Properties[Value]";718801

Вот так это выглядит в SSMS-2016 в виде дерева пакета enter image description here

Спасибо, Арвинд

1 Ответ

2 голосов
/ 29 января 2020

Я понял, что вам нужно удалить "Projects" и "Packages" из пути к папке. (Об этом узнал после запуска пакета вручную и проверки местоположения папки, указанного в имени пакета из отчета о выполнении).

Так его и следует назвать так, как указано ниже:

dtexec /ISSERVER "\SSISDB\Main\ProjectName\PackageName.dtsx" /SERVER SERVERNAME
 /CONFIGFILE "D:\WorkSpace\Configurations.dtsConfig" /CHECKPOINTING OFF 
/REPORTING E /SET "\Package.Variables[User::LogId].Properties[Value]";718801 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...