Ответ 1
Похоже, у вас есть правильная идея в целом, и ссылка @Speedbirt186 предоставила несколько хороших деталей, но похоже, что есть пара нюансов, которые, как я думал, я могу указать на поток и переменные.
Цикл foreach может присваивать переменной весь путь или имя файла или имя файла и расширение. Последнее будет наиболее полезным в вашем случае, если вы не хотите добавлять задачу script для разделения имени файла из этого пути. Если вы начнете с добавления в свой проект 5 переменных, это упростит работу. 1 будет путь исходного каталога, другой путь каталога назначения (архива), а затем 1 для хранения имени файла и расширения, назначенного для каждого цикла. Затем добавляются две дополнительные динамические переменные, которые просто объединяют исходный каталог и имя файла, чтобы получить полный путь источника и место назначения с именем файла, чтобы получить полный путь назначения.
Затем убедитесь, что вы настроили подключения к базе данных и файла Excel. В соединении с файлом Excel после его настройки перейдите в "Выражения" в окне свойств и установите свойство "Строка соединения" в SourceFullPath. Это укажет на соединение, чтобы изменить путь к файлу на каждой итерации вашего цикла.
Теперь вам просто нужно настроить ваш цикл и т.д. Добавьте каждый контейнер контейнера, задающий каталог, фильтр и выберите "Имя файла и расширение".
Теперь в поле выражения на странице коллекции задано свойство каталога, которое будет иметь значение вашей переменной исходного каталога.
Последняя часть цикла Fore for - это настроить сопоставления переменных для хранения имени файла в вашей переменной. поэтому перейдите на эту вкладку, выберите переменную имени файла и установите индекс на 0.
В этот момент вы можете добавить поток данных и настроить свой импорт так же, как и с обычным файлом (обратите внимание, что ваше значение по умолчанию для параметра имени файла должно быть в фактическом файле со структурой, которую вы хотите импортировать).
После того, как ваш поток данных упадет в вашей задаче Execute SQL и настройте его, как вам нужно. вот пример прямого ввода, и вы можете видеть простой способ ссылки на параметр - это просто знак вопроса (?).
Далее в вашей задаче sql настройте сопоставление параметров, добавив нужные детали, например:
Теперь вы находитесь в своей файловой задаче. Отбросьте задание на файл и настройте его по своему усмотрению, но выберите переменные пути цели и источника, чтобы указать задачу, файл которой нужно переместить.
чтобы это было сделано. есть еще одно замечание. То, как у вас есть приоритет, установленный в изображении, который вы опубликовали, показывает, что вы переходите от потока данных к вашему sql и к задаче файла одновременно. Если ваша хранимая процедура зависит от вашего файла, вы можете поместить ее после своей задачи sql. Вы всегда можете изменить параметры ограничения на "завершение", если вы хотите переместить файл, даже если ваш сохраненный процесс не работает.