Published on

November 19, 2011

Экспорт файлов отчетов и источников данных в SQL Server

Вам когда-нибудь приходилось экспортировать файлы отчетов и источники данных в SQL Server? В предыдущей статье я рассказывал о том, как экспортировать файлы отчетов с помощью пакета SSIS. Однако, одним из ограничений этого решения было то, что оно экспортировало только файлы отчетов, но не источники данных. В этой статье я предоставлю обновленное решение и покажу вам, как экспортировать как файлы отчетов, так и источники данных.

Переменные

Давайте начнем с описания переменных, которые были добавлены в пакет SSIS:

  • FileExportExtension: Эта переменная указывает расширение XML-файла, который будет создан. Например, “RDL” для файлов отчетов и “RDS” для источников данных.

Задача сценария

Затем внесем некоторые изменения в задачу сценария в пакете SSIS. Откройте задачу сценария и добавьте новую созданную переменную в список переменных только для чтения. Это позволит сценарию получить доступ к значению переменной.

Теперь изменим сам сценарий. Замените существующий код в подпрограмме Main на следующий:

Public Sub Main()
    ' Добавьте свой код здесь
    My.Computer.FileSystem.WriteAllText(Dts.Variables("ReportExportPath").Value + Dts.Variables("ReportName").Value + "." + Dts.Variables("FileExportExtension").Value, Dts.Variables("ReportXML").Value.ToString, False)
    Dts.TaskResult = ScriptResults.Success
End Sub

В этом коде вы можете видеть, что мы используем новую добавленную переменную для указания пути к файлу и расширения для экспортированного XML-файла.

Путь к источнику отчета

Важно отметить использование переменной ReportSourcePath. Эта переменная должна быть установлена на соответствующий путь, содержащий источники данных в таблице Catalog. Например, если ваши источники данных находятся в папке с названием “Источники данных”, установите значение ReportSourcePath на “/Источники данных/”. Убедитесь, что указанный путь ведет к источникам данных, которые вы хотите экспортировать.

Дополнительная гибкость

Если вам нужна еще большая гибкость при экспорте различных типов частей отчета, вы можете рассмотреть изменение “Задачи выполнения SQL”, которая запускает поток в этом пакете. Добавив еще одну переменную для обозначения типа части отчета, вы можете изменить запрос для извлечения конкретных типов частей отчета. Это изменение позволит вам экспортировать не только файлы отчетов и источники данных, но также части отчета, такие как общие наборы данных или части отчета.

Внесение этих предложенных изменений позволит вам иметь больше гибкости в возможности экспортировать различные файлы, связанные с отчетностью. Например, теперь вы можете экспортировать файл RDS, что невозможно сделать через Менеджер отчетов. Этот экспортированный XML-файл затем может быть импортирован на другой сервер при необходимости.

Следите за обновлениями о том, как достичь той же функциональности с использованием T-SQL, а также за дополнительными улучшениями пакета, чтобы обеспечить еще большую гибкость.

Спасибо за чтение!

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.