Мы оцениваем SSIS, чтобы увидеть, подходит ли он для нового проекта, который готовится к выпуску. Один из процессов должен будет обработать плоский файл с разделенными записями. Файл будет содержать заказы. Есть строка заголовка, (необязательно) строка адреса доставки и одна или несколько строк с подробностями. Поля каждой строки разделены, но имеют разный формат.
Я прочитал этот ответ:
Транзакционные данные SSIS (разные типы записей, один файл)
И я могу разделить данные с помощью задачи «Условное разделение», чтобы получить несколько выходных данных, но я не уверен, как оттуда действовать. У меня есть две проблемы, которые мне нужно решить:
Заголовок заказа должен быть вставлен первым, перед адресом и деталями, поскольку адрес и детали будут ссылаться на запись заказа, поэтому я думаю, что мне нужно сначала обработать этот вывод, но я не уверен в SSIS, как сделать эту ветвь Задача условного разделения должна быть обработана раньше других ветвей. В идеале я хотел бы обработать заголовок заказа, а затем сохранить идентификатор заказа в пользовательской переменной, чтобы при обработке деталей я мог ссылаться на эту переменную.
В файле будет несколько заказов, поэтому разделить его будет сложнее.
Я всегда мог написать приложение на C #, которое будет предварительно обрабатывать файл или считывать файл в промежуточную таблицу, но я не уверен, что мне нравится такой подход.
Может ли кто-нибудь, кто прошел через этот процесс, поделиться некоторыми мыслями о том, как они с этим справились?
Спасибо,
Крис