(SSIS) Задача потока данных – экспорт SQL в файл Excel

(SSIS) Задача потока данных – экспорт SQL в файл Excel

Я ищу решение/руководство по следующему случаю. В базе данных MS SQL у меня есть две таблицы (счет-фактура, позиция счета-фактуры). Мне нужно экспортировать данные в Excel.

Моя проблема заключается в структуре экспортного файла Excel.

  1. Первая запись из таблицы «счет-фактура»
  2. связанные записи из таблицы «позиция счета»
  3. пустая строка

  4. Вторая запись из таблицы «счет-фактура»

  5. связанные записи из таблицы «позиция счета»
  6. пустая строка

  7. Третья запись из таблицы «счет-фактура»

  8. связанные записи из таблицы «позиция счета»
  9. пустая строка

  10. ...

  11. Последняя запись из таблицы «счет-фактура»
  12. связанные записи из таблицы «позиция счета»
  13. пустая строка

Кто-нибудь знает хороший пример?

решение1

Ответ на этот вопрос немного сложен.

  • Создайте две переменные с именами Invoice как объект и invoiceId как строка (я предположил, что это связующее поле между этими двумя таблицами).
  • Теперь, используя задачу скрипта, перечислите invoiceIds из таблицы счетов и сохраните их в объекте Invoice. В наборе результатов имя результата равно 0, а VariableName равно User::Invoice.
  • Вытяните для каждого контейнера цикла и выберите перечислитель ADO, затем выберите User::Invoice как объект ADO. Теперь перейдите к отображению переменных и передайте поле InvoiceID в переменную User::invloiceId.
  • Теперь добавьте задачу потока данных. Выберите три источника. Один из таблицы invloice, другой из таблицы InvoiceItem и еще один как пустая строка (преобразуйте с помощью преобразования данных, если необходимо, так как это пустая строка)
  • Теперь с помощью параметра invoiceID в условии where для каждой таблицы.
  • Используйте union all для объединения всех трех выходных данных.
  • Теперь выберите Excel в качестве места назначения и передайте в него все данные.

Надеюсь, это решит вашу проблему. Спасибо.

Связанный контент