SSIS Исключить определенные файлы в контейнере циклов Foreach
У меня есть пакет служб SSIS, который загружает CSV-файлы из определенного каталога, используя выражение и подстановочный знак для сбора всех файлов.
В настоящее время FileSpec
контейнера ищет все файлы в следующем формате:
fileName_environment_ *
и это работает нормально. Второй набор файлов теперь загружается из той же директории, и, чтобы отличить их, формат файла:
fileName_environment_business_ *
Итак, второй пакет служб SSIS собирает только новые файлы, так как структура файлов будет выглядеть следующим образом:
filename_environment_abc
filename_environment_def
filename_environment_xyz
filename_environment_business_abc
filename_environment_business_def
filename_environment_business_xyz
но первый пакет будет обрабатывать все файлы.
Итак, вопрос в том, могу ли я установить FileSpec
первого пакета служб SSIS, чтобы игнорировать файлы в формате:
fileName_environment_business_ *
1 ответ
В контейнер цикла foreach положить манекен Script task
перед первым блоком у вас уже есть. Соедините эти два с линией и установите Constraint Options
к выражению, в котором вы должны определить FINDSTRING
функция:
FINDSTRING(@var, "business", 1) == 0
Где @var - это повторяемый цикл.
Только файлы без "бизнеса" внутри перейдут к следующему шагу. Надеюсь, это то, что вы хотели.