переместить файлы в подпапку ssis package - PullRequest
0 голосов
/ 23 мая 2018

Я создал пакет ssis для перемещения файлов резервных копий из папки c: в папку E:

source file path: C:\Backup\A\xxx.bak
destination file path: E:\DB Backups\A\xxx.bak

Я использовал контейнер foreachloop и создал две переменные: sourcefileV и destinationV и задачу файловой системы.переименовать файл.Однако пакет работает после перемещения файла в место назначения, файл не находится в подпапке E:\DB Backups\A, он находится в E:\DB Backups.Я должен вручную вырезать и переместить его в подпапку.Есть ли способ напрямую переместить файл в подпапку назначения в пакете ssis?

Спасибо,

1 Ответ

0 голосов
/ 25 мая 2018

Вы можете создать две переменные @[User::DestinationFolder] и @[User::SourceFolder].

@[User::SourceFolder] = C:\Backup\
@[User::DestinationFolder] = E:\DB Backups\

И вы можете использовать следующее выражение для создания пути к папке назначения.

@[User::DestinationFolder] +  SUBSTRING(REPLACE(@[User::SourceFileV],@[User::SourceFolder],""),1, LEN(REPLACE(@[User::SourceFileV],@[User::SourceFolder],"")) - FINDSTRING(REVERSE(@[User::SourceFileV]),"\\",1))

И вы можете использовать следующее выражение для получения пути к файлу назначения

@[User::DestinationFolder] + REPLACE(@[User::SourceFileV],@[User::SourceFolder],"")

Сначала вы должны добавить Execute File System Task, чтобы создать каталог назначения.Затем вам нужно добавить второй Execute File System Task, чтобы скопировать файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...