Зачастую разработчики генераторов отчётов создают собственные форматы для хранения шаблонов. Например, FastReport использует формат .frx для хранения шаблонов и .fpx для хранения подготовленных к экспорту отчётов – а в Crystal Reports используются файлы формата .rpt.
Из этой статьи вы узнаете, как импортировать шаблон отчёта из формата RPT, созданного в Crystal Reports, в формат FRX, который используется в FastReport.
Для импорта шаблонов вам нужно иметь установленным настольный дизайнер отчётов. Импорт происходит при открытии им корректного RPT-файла. Добавить в дизайнер эту возможность можно, если скомпилировать специальное дополнение (плагин). Рассмотрим весь процесс от начала и до конца.
Во-первых, загрузите проект плагина. Вы можете найти его по ссылке, в разделе Дополнения по ссылке.
Необходимая ссылка подписана “Конвертер из Crystal Reports (*.rpt) в формат FastReport .NET (*.frx)”. При нажатии на неё скачается архив, который нужно распаковать в удобное для вас место. Затем нужно открыть файл FastReport.RPTImportPlugin.sln с помощью Visual Studio.
Загрузите пакет, необходимый для работы плагина. Он называется “Crystal Reports, version for Visual Studio”, и скачать его можно по следующей ссылке (необходима регистрация на сайте sap.com).
По ссылке будет доступно несколько вариантов скачивания. Скачайте и установите следующий пакет, который есть в 32-битной и 64-битной версиях:
В проекте FastReport.RPTImportPlugin, который вы скачали, будут настроены следующие ссылки:
Удалите все ссылки, упоминающие FastReport и CrystalDecisions, и затем добавьте ссылки на актуальные файлы:
1) CrystalDecisions.CrystalReports.Engine.dll и CrystalDecisions.Shared.dll. После установки пакета, который вы скачали, эти DLL-файлы будут расположены по следующему пути:
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\CrystalDecisions.CrystalReports.Engine C:\Windows\Microsoft.NET\assembly\GAC_MSIL\CrystalDecisions.Shared
2) FastReport.dll, FastReport.Compat.dll и FastReport.DataVisualization.dll. Эти DLL расположены в корневой папке установленного FastReport .NET. Если вы не меняли путь установки по умолчанию, то вы найдёте их здесь:
C:\Program Files (x86)\FastReports\FastReport.Net
Убедитесь, что вы используете корректные DLL! Если у вас установлено несколько версий FastReport .NET, вы можете ошибочно выбрать DLL неправильной версии, и дизайнер не распознает плагин или же не запустится.
После этих действий ваш список ссылок будет выглядеть таким образом:
Скомпилируйте проект. После, перейдите в папку FastReport.RPTImportPlugin\bin\Debug и найдите файл FastReport.RPTImportPlugin.dll.
Откройте дизайнер отчётов, и в меню “Настройки…” выберите вкладку “Плагины”. Нажмите на кнопку “Добавить”, и выберите файл FastReport.RPTImportPlugin.dll. После этого вы увидите его в списке установленных плагинов:
После добавления плагина перезапустите дизайнер, и выберите пункт “Открыть…”. После этого откроется меню выбора файлов, где в селекторе формата файлов должен появиться новый пункт:
Внимание! Если при компиляции вы выбрали DLL, которые не совпадают с DLL, используемыми дизайнером, то:
В этих случаях повторно откройте проект FastReport.RPTImportPlugin, удалите из него FastReport.dll, FastReport.Compat.dll и FastReport.DataVisualization.dll, добавьте верные DLL и перекомпилируйте плагин.
Если дизайнер не открывается после замены DLL, перепроверьте все остальные шаги. Если же даже это не помогло, то удалите ссылку на плагин из Config-файла и обратитесь в нашу поддержку.
Файл Config находится по следующему пути, и содержит ряд настроек FastReport .NET:
…AppData\Local\FastReport
Чтобы удалить соединение с плагином, найдите и удалите строку, начинающуюся с <Plugin Name, и сохраните файл. После этого дизайнер откроется без проблем, но и без плагина.
Полностью эта строка будет выглядеть таким образом:
<Plugin Name="ваш путь к плагину\FastReport.RPTImportPlugin.dll"/>
Заметьте, что при импорте есть некоторые ограничения, вызванные разными техническими причинами. Например, не будут сохранены настроенные соединения с источниками данных, а также некоторые объекты могут отображаться с небольшими неточностями. Если вас не устраивает какой-либо аспект импорта шаблонов, обращайтесь в нашу техническую поддержку. Мы всегда стремимся улучшать наши продукты, и в том числе – улучшаем качество импорта отчётов.
Подытожим, к этому моменту у вас должен быть скомпилированный плагин, который вы добавили в дизайнер FastReport. После этих действий вы сможете открывать RPT-файлы, созданные в Crystal Reports, в дизайнере FastReport .NET и сохранять их как FRX-файлы, т.е. шаблоны отчётов для FastReport .NET.