Я работаю с унаследованной мной SSIS. Существует поток данных, который находит все записи со статусом 0 и вставляет их в отдельную таблицу. Поток данных использует статический запрос для получения новых записей.
У меня возникает проблема, когда мой SSIS работает, он не вставляет запись в целевую таблицу. Однако он выбирает многие другие записи в исходной таблице.
Что еще более странно, если я запускаю этот процесс из задания, всегда есть несколько записей (всегда одни и те же), которые не принимаются. Однако, если я запускаю задание вручную, они все же забираются.
Я проверил, и ни одна из записей, которые мы собираем, не содержит нулей ни в одном из ключей-кандидатов. Обработка ошибок не вызывается, поэтому ошибки не возникает. Я могу вставить записи в целевую таблицу, так что это не проблема ПК.
Судя по всему, эти записи не видны SSIS, запущенным заданием, но видны, когда я запускаю его вручную. Кто-нибудь видел эту проблему раньше?





Вы должны проверить, использует ли исходная задача в потоке данных соединение с выражением. Значение Expression изменяет ваш источник, и оно может отличаться при запуске пакета в режиме отладки и при запуске пакета в задании. Вы можете настроить выражение для использования параметров, которые могут использоваться заданием.
Вы можете легко проверить, использует ли соединение Expression, потому что перед именем соединения стоит FX, как показано на следующем рисунке.
Подключение DBSource в диспетчерах подключений
Итак, я проверил выражения, и мы видим, что они указывают на ту же БД. Более того, мы видим, что 95% записей собираются и помещаются в целевую таблицу при запуске из задания. Эти последние 5% требуют, чтобы я отправил, запустив SSIS напрямую.
Вы проверяли, использует ли выражение параметр?
Итак, мы наконец нашли решение проблемы, протестировав на продукте (дети, не пробуйте это дома). Похоже, решение состоит в том, чтобы просто удалить SSIS и ответить на него. Кто-нибудь еще видел эту проблему, из-за которой SSIS просто смешно работает и требует повторного развертывания?
Основываясь на вашем вопросе и ответе ... это может быть что угодно, но, скорее всего, развернутая версия не соответствует версии, которую вы запускали в Visual Studio.
Я выполнил повторное развертывание в качестве теста и все еще получал ошибку. Соединение было выражением, но я мог видеть данные, которые оно изменило, знаю ли я, что оно указывало на нужное место. И ни один файл конфигурации не влиял на соединение.
Есть ли какая-то конфигурация, которая вызывается при запуске из задания?