Вы находитесь на страницах старой версии сайта.
Переходите на новую версию Interface.Ru

Crystal Reports XI и Visual Studio.NET
Развертывание приложений

© Зайцев С.Л.

Аннотация

Business ObjectsCrystal DecisionsВ этой статье обсуждаются возможности для развертывания приложений Visual Studio .NET с использованием автономной версии Crystal Reports XI для работы как с Visual Studio 2002, так и с Visual Studio 2003. Описывается работа как с объединенными модулями, так и интерактивными установочными пакетами.

Введение

Crystal Reports XI

Crystal Reports XI расширяет возможности генерации отчетов Crystal Reports на платформу Microsoft .NET. Вы можете использовать Crystal Reports Designer в Visual Studio .NET (VS .NET) для создания нового или модификации уже имеющегося отчета Crystal.

Вы можете хранить отчет на локальном компьютере, или опубликовать его с использованием Report Web Service на web-сервере. В зависимости от того, разрабатываете ли вы Windows или web-приложение, вы можете работать с отчетом либо с помощью Windows Forms Viewer, либо с помощью Web Forms Viewer.

Включение отчетов в приложения .NET

При добавлении отчетов в Windows-приложения .NET или в web-приложения, по умолчанию они добавляются к приложению как встроенный ресурс. Это означает, что отчет будет скомпилирован в манифесте сборки, и не будет загружаться из отдельного файла отчета (.RPT).

Работа с отчетом в качестве встроенного ресурса позволяет поставлять и разворачивать приложения .NET без отдельной поставки файлов отчетов. Преимущество заключается в отсутствии для приложения необходимости в развертывании внешних файлов отчетов, поэтому конечные пользователи не могут их модифицировать. Но имеется и недостаток - если отчет необходимо модифицировать, придется перекомпилировать все приложение и снова развернуть его для сохранения изменений в отчете.

Для предотвращения компиляции отчетов в манифест сборки в качестве встроенного ресурса, используйте следующие шаги:

  1. После добавления отчета в проект, выделите отчет в окне .NET Solution Explorer.
  2. В окне Properties измените свойство Build Action с Embedded Resource на None.

При использовании вышеуказанных шагов отчет не будет скомпилирован в манифест сборки, таким образом, отчет будет загружаться с жесткого диска. Отчеты могут быть загружены с диска с помощью указания файлового пути, с использованием метода Load объекта ReportDocument.

При развертывании приложений, не имеющих встроенных файлов отчетов, это файлы должны быть вручную добавлены при настройке проекта. Преимущество хранения отчетов вне сборки заключается в том, что отчеты могут быть легко модифицированы и повторно развернуты без необходимости в перекомпиляции и развертывании всей сборки. Недостаток заключается в том, что жестко заданные типы объектов не могут быть использованы в приложении, а отчеты должны загружаться с жесткого диска.

Обзор методов развертывания

Существует два метода развертывания runtime-файлов Crystal Reports XI на целевом компьютере:

В обоих сценариях устанавливаются одни и те же файлы, тем не менее, методы развертывания отличаются. Модули слияния предназначены тем разработчикам, которые хотят включить runtime-файлы Crystal Reports вместе с установочным пакетом в сопутствующее приложение. Интерактивная установка предназначена для тех, кто хочет просто развернуть эти файлы на серверном компьютере в качестве автономной задачи.

Развертывание с использованием модулей слияния

Компоненты, предназначенные для добавления в настройку проектов для поставки и развертывания приложений Crystal Reports 10, включают:

Файлы отчетов (.RPT)

Файлы отчетов (.RPT) следует поставлять при развертывании приложений .NET. Способ развертывания файлов отчетов зависит от имеющихся потребностей и архитектуры приложения. см. предыдущий раздел , за подробной информацией по развертыванию файлов отчетов.

Модули слияния Crystal Reports

Модули слияния, которые необходимо добавлять в настройку проекта, устанавливаются с Crystal Reports XI в каталог C:\Program Files\Common Files\Merge Modules. Обновленные версии модулей слияния можно найти на сайте технической поддержки Business Objects по следующему адресу.

Поиск файла:
crxi_net_merge_modules.zip

Предшествующие версии Crystal Reports для развертывания отчетов требовали включения трех или более модулей в настройку проекта. Для Crystal Reports XI, необходимо включить только один файл слияния, при этом второй является опциональным:

Crystal11_NET_EmbeddedReporting.msm

Этот модуль слияния содержит элементы управления CrystalReportViewer, SDK-сборки Crystal Reports .NET, SDK-сборки RAS, ядро обработки отчетов, компоненты базы данных и компоненты экспорта. Этот модуль слияния всегда требуется для приложений Crystal Reports XI .NET.

Запустите на выполнение файл модуля слияния (.MSI) на компьютере, где вы разворачиваете приложение, и при появлении приглашения введите ключевой код Crystal Reports XI. (см. раздел Получение и добавление ключевого кода, где приведена дополнительная информация.)

CrystalReports11_Maps.msm

Этот модуль слияния используется для инсталляции файлов, требуемых для отображения в отчетах географических карт. Этот модуль слияния требуется только в том случае, если в отчет включена картографическая информация.

Развертывание с использованием интерактивной установки

Интерактивная установка может выполняться только при работе с полной версией Crystal Reports XI редакций Developer или Server.

При развертывании web-приложения, или при развертывании Windows-приложений на одном и том же компьютере, рекомендуется, чтобы зависимости (dependencies) Crystal были установлены отдельно. Этот пакет WindowsIinstaller находится в C:\Program Files\Common Files\Merge Modules – и имеет название CrystalReports11_NET_EmbeddedInstall.msi. Обновленные версии установочного пакета можно найти на сайте технической поддержки Business Objects по следующему адресу: http://support.businessobjects.com/search

Поиск файла:
crXI_net_server_install.zip

Запустите на выполнение установочный файл (.MSI) на компьютере, где вы разворачиваете приложение, и при появлении приглашения введите ключевой код Crystal Reports XI. (см. раздел Получение и добавление ключевого кода, где приведена дополнительная информация.)

Получение и добавление ключевого кода

Когда модуль слияния Сrystal11_NET_EmbeddedReporting.msm добавляется в настройку проекта, то его свойство Keycode требует введения ключевого кода. Этот ключевой код высылается по электронной почте при регистрации продукта. Это ключевой код также может быть найден в меню справки Visual Studio.NET, для это нужно щелкнуть по пункту About Microsoft Development Environment. Это ключевой код указан в разворачивающемся списке с перечислением установленных продуктов: Installed Products.

Состоящий из 23 цифр ключевой код должен быть введен в свойство LicenseKey модуля слияния Crystal11_NET_EmbeddedReporting.msm.


Примечание: Информацию по ошибкам введения ключевых кодов можно получить в разделе "Дополнительная информация".


Развертывание Web-приложений ASP.NET

В следующей процедуре предполагается, что у вас уже есть web-приложение или приложение web-сервисов, готовое для использования. Для развертывания Web-приложений ASP .NET с использованием модулей слияния Crystal Reports XI:

  1. В VS .NET, откройте ваше web-приложение и в меню View щелкните Solution Explorer. Находясь в Solution Explorer, щелкните правой клавишей мыши по вашему web-приложению, затем щелкните по Add и затем - по New Project.
  2. Появится диалоговое окно добавления нового проекта Add New Project. Щелкните по Setup and Deployment Projects на левой панели и затем по Web Setup Project на правой панели. Щелкните OK.
  3. Находясь в Solution Explorer, щелкните правой клавишей мыши по Web Setup Project, затем щелкните по Add и затем - по Project Output.
  4. Появится диалоговое окно Add Project Output Group. При нажатой клавише Ctrl щелкните по Primary Output и по Content Files. Щелкните OK.
    После добавления в проект Primary Output, будут добавлены некоторые обнаруженные зависимости.
    Зависимости dotnetfxredist_x86_enu.msm и dotnetcrystalreports.msm должны быть удалены, если они все еще присутствуют. Для исключения этих файлов, в Solution Explorer щелкните правой клавишей мыши по файлу и затем по Exclude.
  5. В Solution Explorer, щелкните правой клавишей мыши на WebSetup и выберите Add, затем щелкните на Merge Module.
  6. Появится диалоговое окно Add Modules (добавление модулей). Щелкните на модуле слияния Crystal11_NET_EmbeddedReporting.msm, а затем по Open для добавления его в ваш проект. Щелкните OK.


Примечание: При развертывании web-приложения, использующего набор данных ADO .NET, вам необходимо также включить два дополнительных модуля слияния, указанных выше в разделе "Runtime".


  1. Находясь в вашем проекте WebSetup, щелкните по модулю слияния Crystal11_NET_EmbeddedReporting.msm для отображения свойств.
  2. Раскройте список MergeModuleProperties и введите действительный ключевой код в окно свойств Keycode. Дополнительная информация приведена в разделе "Ключевой код".
    Данный шаг является обязательным при развертывании Crystal Reports для приложений Visual Studio.NET.

Вы можете провести пользовательскую настройку вашей инсталляции, исключив ненужную базу данных и файлы экспорта. Обратитесь к разделу "Пользовательская настройка вашей инсталляции".

Для создания вашей настройки Web-проекта, выделите и щелкните правой клавишей мыши по вашему пакету развертывания (WebSetup1) в Solution Explorer, затем щелкните по Build. Теперь вы готовы к развертыванию вашего Web-приложения ASP.NET.

Развертывание приложения Windows

В следующей процедуре предполагается, что у вас уже есть Windows-приложение, готовое для использования. Для развертывания Windows-приложения с использованием модулей слияния:

  1. В VS .NET, откройте ваше web-приложение и затем щелкните по меню View в Solution Explorer. В Solution Explorer, щелкните правой кнопкой мыши по вашему Windows-приложению, щелкните по Add и затем по New Project.
  2. Появится диалоговое окно добавления нового проекта Add New Project. Щелкните по Setup and Deployment Projects на левой панели и затем - по Setup Project на правой панели. Щелкните OK.
  3. Находясь в Solution Explorer, щелкните правой кнопкой по Setup Project, затем Add и затем щелкните по Project Output.
  4. Появится диалоговое окно Add Project Output Group. При нажатой клавише Ctrl щелкните по Primary Output и по Content Files. Щелкните OK.
    После добавления в проект Primary Output будут добавлены некоторые обнаруженные зависимости. Зависимости dotnetfxredist_x86_enu.msm и dotnetcrystalreports.msm должны быть удалены, если они все еще присутствуют. Для исключения этих файлов, в Solution Explorer щелкните правой кнопкой мыши по файлу и затем щелкните по Exclude.
  5. Находясь в Solution Explorer, щелкните правой кнопкой мыши по Setup Project и выберите Add, затем щелкните по Merge Module.
  6. Появится диалоговое окно Add Modules (добавление модулей). Щелкните по модулю слияния Crystal11_NET_EmbeddedReporting.msm и затем по Open для добавления этого файла в ваш проект. Щелкните OK.


Примечание: Если вы развертываете Windows-приложение, использующее набор данных ADO.NET, вам необходимо также включить два дополнительных модуля слияния, указанных выше в разделе "Runtime".


  1. Находясь в вашем Setup Project, щелкните по модулю слияния Crystal11_NET_EmbeddedReporting.msm для отображения свойств.
  2. Раскройте список MergeModuleProperties и введите действительный ключевой код в окно свойств Keycode. Дополнительная информация приведена в разделе "Ключевой код".
    Данный шаг является обязательным при развертывании Crystal Reports для приложений Visual Studio .NET.
  3. Для создания вашей настройки Web-проекта, выделите и щелкните правой клавишей мыши по вашему пакету развертывания (setup1) в Solution Explorer, затем щелкните по Build. Теперь вы готовы к развертыванию вашего Windows-приложения.

Пользовательская настройка вашей инсталляции

В Crystal Reports 11 и в Visual Studio .NET, модуль слияния Crystal11_NET_EmbeddedReporting.msm позволяет вам указывать установочные опции для драйверов баз данных, драйверов экспорта и виртуального IIS-каталога crystalreportviewers11.

По умолчанию, все это устанавливается с Crystal11_NET_EmbeddedReporting.msm.

Выберите, какие драйвера баз данных нужно устанавливать

  1. В вашем проекта развертывания щелкните по Crystal11_NET_EmbeddedReporting.msm и в окне Property, разверните список MergeModuleProperties.
  2. Установите значение для определенного драйвера равным 1, для включения этого драйвера в ваш проект развертывания.
  3. Установите значение для определенного драйвера равным 0, для исключения этого драйвера из вашего проекта развертывания.

Название свойства для драйверов баз данных

Описание

InstallACTДрайвер базы данных Crystal Reports для баз данных ACT.
InstallBTRIEVEДрайвер базы данных Crystal Reports для баз данных Pervasive.
InstallCDO32Драйвер базы данных Crystal Data Object.
InstallCRDB_ADOДрайвер базы данных Crystal Reports для объектов данных Microsoft ActiveX / OLE DB.
InstallCRDB_ADOPLUSДрайвер базы данных Crystal Reports для Microsoft ADO.NET.
InstallCRDB_CDOДрайвер базы данных Crystal Reports для объектов данных Crystal.
InstallCRDB_COMДрайвер базы данных Crystal Reports для провайдера данных COM.
InstallCRDB_DATASETДрайвер базы данных Crystal Reports для провайдера DataSet.
InstallCRDB_ODBCДрайвер базы данных Crystal Reports для ODBC.
InstallCRDB_ORACLEДрайвер базы данных Crystal Reports для Oracle.
InstallCRDB_QUERYДрайвер базы данных Crystal Reports для данных запросов.
InstallDAOДрайвер базы данных Crystal Reports для объектов Microsoft Data Access Objects.
InstallFIELDDEFДрайвер базы данных Crystal Reports для определения полей.
InstallFILESYSTEMДрайвер базы данных Crystal Reports для данных файловой системы.
InstallIBM_DB2Драйвер базы данных Crystal Reports для сервера DB2.
InstallINFORMIXДрайвер базы данных Crystal Reports для сервера Informix Online.
InstallP2BBDEДрайвер базы данных Crystal Reports для IDAPI.
InstallP2BXBSEДрайвер базы данных Crystal Reports для xBase.
InstallP2IXBSE_DLLФизическая библиотека DLL Crystal Reports для xBase.
InstallP2SACLДрайвер базы данных Crystal Reports для Public Folder ACL.
InstallP2SEVTДрайвер базы данных Crystal Reports для журнала регистрации событий NT.
InstallP2SEXSRДрайвер базы данных Crystal Reports для Exchange Server Admin.
InstallP2SMAPIДрайвер базы данных Crystal Reports для Exchange. Папки и адресная книга.
InstallP2SMSIISДрайвер базы данных Crystal Reports для журнальных файлов IIS.
InstallP2SOUTLKДрайвер базы данных Crystal Reports для данных Outlook.
InstallP2SREPLДрайвер базы данных Crystal Reports для Exchange Public Folder Replica.
InstallP2STRACKДрайвер базы данных Crystal Reports для журнала отслеживания сообщений Exchange Server.
InstallP2SWBLGДрайвер базы данных Crystal Reports для журнальных файлов Web.
InstallSYBASEДрайвер базы данных Crystal Reports для Sybase.

Выберите, какой драйвер экспорта следует установить

  1. Находясь в вашем проекте развертывания, щелкните по Crystal11_NET_EmbeddedReporting.msm и в окне Property, разверните список MergeModuleProperties.
  2. Установите значение для определенного драйвера равным 1, для включения этого драйвера в ваш проект развертывания.
  3. Установите значение для определенного драйвера равным 0, для исключения этого драйвера из вашего проекта развертывания.

Название свойства для драйверов экспорта

Описание

InstallU2DMAPIДрайвер экспорта Crystal Reports для формата экспорта MAPI.
InstallU2DNOTESДрайвер экспорта Crystal Reports для формата экспорта Lotus Notes Database Destination.
InstallU2DVIMДрайвер экспорта Crystal Reports для формата экспорта Lotus Notes Mail.
InstallU2FCRДрайвер экспорта Crystal Reports для формата экспорта отчетов (Report).
InstallU2FHTMLДрайвер экспорта Crystal Reports для формата экспорта HTML 4.0.
InstallU2ODBCДрайвер экспорта Crystal Reports для формата экспорта ODBC.
InstallU2FPDFДрайвер экспорта Crystal Reports для экспорта в формате PDF.
InstallU2FRECДрайвер экспорта Crystal Reports для формата экспорта в виде записей (Records).
InstallU2FRTFДрайвер экспорта Crystal Reports для формата экспорта Rich Text (rtf).
InstallU2SEPVДрайвер экспорта Crystal Reports для формата значений с разделителями.
InstallU2FTEXTДрайвер экспорта Crystal Reports для текстового формата экспорта.
InstallU2FXLSДрайвер экспорта Crystal Reports для формата экспорта Excel.
InstallU2FXMLДрайвер экспорта Crystal Reports для формата экспорта XML.

Выберите, куда следует установить программы просмотра Crystal

  1. Находясь в вашем проекте развертывания, щелкните по Crystal11_NET_EmbeddedReporting.msm и в окне Property, разверните список MergeModuleProperties.
  2. Установите значение свойства равным 1, для включения инсталляции crystalreportviewers11 виртуального каталога IIS в ваш проект развертывания.
  3. Установите значение свойства равным 0, для исключения инсталляции crystalreportviewers11 виртуального каталога IIS в ваш проект развертывания.

Название свойства для установки виртуального каталога

Описание

InstallViewerVirtualDirСвойство для контроля того, где именно будет установлен виртуальный каталог IIS crystalreportviewers11.

Развертывание файлов среды выполнения

.NET Framework

Так как проекты, созданные в VS.NET относятся к .NET Framework, то Framework должна также поставляться и устанавливаться на целевом компьютере. Когда создается настройка проекта, то обычно Framework автоматически не включается. Имеется несколько способов поставки Framework. За дальнейшей информацией обратитесь на следующий сайт: http://msdn.microsoft.com/netframework/downloads/framework1_1/

ADO.NET

Если какой-либо из файлов отчетов использует объекты баз данных ADO .NET, вам потребуется включить следующие два объединенных модуля:


Примечание: Файлы от этих объединенных модулей должны быть доступны для приложения. Они должны быть указаны либо в системном пути, либо находится в каталоге приложения. Рекомендуется, чтобы эти файлы были установлены в каталоге приложения. Если эти файлы недоступны приложению, то при попытке обработки отчетов появятся ошибки времени выполнения.


Информацию описаний keycode-ошибок можно искать по следующему адресу:

Для дополнительной информации и ресурсам по .NET, посетите один из следующих сайтов:

Дополнительная информация

За дополнительной информацией обращайтесь в компанию Interface Ltd.

Обсудить на форуме Crystal Decisions

Рекомендовать страницу

INTERFACE Ltd.
Телефон/Факс: +7 (495) 925-0049
Отправить E-Mail
http://www.interface.ru
Rambler's Top100
Ваши замечания и предложения отправляйте редактору
По техническим вопросам обращайтесь к вебмастеру
Дата публикации: 27.02.06