Перезапись zip-файла в выражении пользовательской переменной в ssis - PullRequest
0 голосов
/ 03 февраля 2020

Я хочу перезаписать zip-файл в папке, но когда я попробовал приведенное ниже выражение, выдается ошибка:

Выражение недопустимо и не может быть проанализировано. он может содержать недопустимые элементы.

Выражение:

@[User::Command_Syntax] = " /c copy  " + "\"" + @[User::Output_File_Path_Var] + substring(@[User::Output_Zip_Name_Var], 1, len(@[User::Output_Zip_Name_Var]) - 4) +  REPLACE(right(@[User::Output_Zip_Name_Var], 4) , ".zip", "") +  ".zip"  + "\"" + " " + "\"" + @[User::Archive_File_Path_Var] + substring(@[User::Output_Zip_Name_Var], 1, len(@[User::Output_Zip_Name_Var]) - 4) +  REPLACE(right(@[User::Output_Zip_Name_Var], 4) , ".zip", "") +  ".zip" + "\""

Может кто-нибудь, пожалуйста, дайте мне знать, почему я получаю ошибку. Заранее спасибо!

1 Ответ

0 голосов
/ 03 февраля 2020

Я использую инструмент, который находится за пределами Visual Studio, который помогает устранять неполадки построения выражений. Информация об инструменте находится здесь: SQLIS | Редактор выражений и тестер служб SSIS и github здесь: Выражение служб SSIS GitHub

При этом я скопировал / вставил ваше выражение выше в редактор, добавленный в переменные @ user. с выдуманными значениями в способности инструмента «Добавить переменную», и я получаю это в качестве результата при оценке.

enter image description here

Так оно и есть Похоже, что для меня это оценка. Можете ли вы проверить правильность написания пользовательских переменных и их правильного типа (строки)?

Вы также можете проверить назначение переменных во время отладки. Вот хорошая статья о том, как отлаживать, если необходимо: Отладка потока управления в SSIS

...