Я работаю над проектом SSIS, чтобы импортировать строки вызовов (файл Excel) в базу данных SQL Server.
Вот мой поток данных:
Я добавил несколько поисков для проверки строк перед процессом импорта. Первый проверяет, существует ли уже строка (сделано для предотвращения дублирования, поскольку пользователь перетаскивает файлы импорта в указанную папку). Затем другие запросы проверяют ограничения внешних ключей. Более того, все не совпадающие строки перенаправляются в другую базу данных. Таким образом, я могу проверить недопустимые строки, а затем пакет аудита сообщит мне, изменилась ли моя таблица NoMatchingRowsCall во время ввода.
Теперь я хотел бы добавить «Сообщение об ошибке» к несоответствующим строкам, чтобы проверить «в чем проблема с этой строкой?». Я думаю добавить «производный столбец» после каждого поиска (без соответствующего вывода), чтобы добавить сообщение об ошибке. Как насчет этого? Как добавить текстовое содержимое в «производный столбец»? Должен ли я использовать переменную пакета?
Вот что я хотел бы получить:
ID | C1 | C2 | C3 | ERROR_MESSAGE
1 | .. | .. | .. | Row already exists
2 | .. | .. | .. | FK error for column C1
3 | .. | .. | .. | FK error for column C2
...
Я хочу, чтобы «мягкое» решение отслеживало ошибочные строки без остановки выполнения пакета и имело возможность вручную вставлять ошибочную строку, если это необходимо, путем изменения ошибочных ключей.