Шаг 47 - Использование Crystal Reports в прикладных программах - Обзор средств для Visual Basic

Компания Seagate Software обеспечила несколько методов использования языка Visual Basic для создания пользовательского приложения со средствами формирования отчетов. Выбор метода, конечно же, зависит от многих факторов. Ниже, в таблице, перечислены методы, их преимущества и недостатки.

методпреимуществанедостатки
Report Engine APIПолностью предоставляет все функции Crystal Reports, доступные для программной модификации. Если какая-то функция хоть где-то реализована, она доступна и в Report Engine APIНаиболее сложный интерфейс как с точки зрения изучения, так и программирования. Часть функций API (в частности обслуживание событий отчета и мыши) требует программирования с использованием функций обратного вызова (Callback), другие используют сложные структуры, и работают с указателями на них. И то, и другое не так просто реализовать в Visual Basic
Report Engine Automation ServerСохранен для совместимости с более ранними версиями. Не рекомендуется для новых приложений.
Report Designer ComponentВ этом компоненте объединены возможности разработки и интеграции отчетов, причем все это полностью реализовано внутри IDE. Все операции по созданию отчета выполняются в рамках Visual Basic. Имеет свой собственный сервер Automation Server предоставляющий практически все функции Crystal Reports в рамках объектной модели свойства\методы\событияБольшая сложность программирования (хотя и меньше, чем Report Engine API). При разработке отчета непосредственно в IDE Visual Basic отсутствует возможность предварительного просмотра отчета.
Элементы управления ActiveXОбеспечивают наиболее простой интерфейс программирования. Способ наиболее быстрого создания приложения с интегрированными отчетами.Обладают пониженной по сравнению с другими методами функциональностью. Например, совсем не поддерживаются события отчета. Требуют наличия предварительно созданных отчетов (*.rpt-файлов).

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

Давайте займемся всеми этими методами в порядке - от простого к сложному.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Юрий Гвоздев - 26.02.2003