Как сэкономить время и деньги при построении интерактивного контента веб-сайта?

Зайцев С.Л.

Оглавление

Введение

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

В этой статье показано, как веб-разработчики с помощью решений Business Objects/Crystal Decisions (далее - Crystal Decisions) могут передавать реляционные данные в Интернет более чем в 100 раз быстрее, чем при публикации информации с помощью отчётов, написанных на ASP. Построенные на стандартах XML, ADO, ActiveX, Visual Basic (VB) и Java Script, решения Crystal Decisions не только обеспечивают безопасность и масштабируемость, но и множество самых разнообразных функций, с помощью которых разработчики и профессионалы в информационных технологиях могут быстро передавать в Интернет информацию презентационного качества, и при этом не писать код.

Резюме

Многие разработчики знают о том, что Crystal Reports - это мировой стандарт представления реляционных данных в настольных компьютерах. Эти решения применимы не только на настольных компьютерах, но и в Интернете. Начиная с 7-ой версии, Crystal Reports имеет единый интерфейс конструирования для быстрого создания отчётов для Windows и Интернета. Созданные отчёты можно доставлять и контролировать с помощью Crystal Enterprise - надёжной платформы для работы с отчётами, анализа и передачи информации через Интернет. Продукт Crystal Decisions даёт разработчику среду, интерфейсы и инструменты, которые избавляют от необходимости писать для отчётов множество строк кода ASP. Не утруждая себя написанием кода, разработчики значительно быстрее могут компоновать профессиональные отчёты с помощью объектно-ориентированных интерфейсов конструктора.

В следующем примере приведён довольно простой отчёт о клиентах, который содержит следующее:

  • 5 столбцов (два из них содержат гиперссылки, зависящие от контента)
  • 1 поле для формулы
  • заголовки столбцов
  • данные о клиентах, отсортированные в алфавитном порядке по названиям компаний
  • дополнительное форматирование с презентационным качеством

Отчёт (см. ниже) был создан за 1,5 минуты с помощью Crystal Reports. Затем всего за минуту он был опубликован в Интернете с помощью Crystal Enterprise как динамический отчёт, включающий расписание и возможности защиты. Те же действия, выполненные с использованием кода ASP, заняли у опытного разработчика 495 минут! Даже если не учитывать затраты времени на публикацию отчёта, разница получается впечатляющая - опытному программисту на ASP потребовалось потратить только на конструирование отчёта 210 минут.

Отчёт о клиентах, созданный с помощью Crystal Reports

Отчёт о клиентах, созданный с помощью ASP

Сравнение затрат времени при использовании ASP и Crystal

Ниже в таблице приведены затраты времени на каждый шаг процесса создания вышеупомянутого отчёта и его опубликование в Интернете с использованием кода ASP в одном случае и технологии Crystal Decisions - в другом.

 

Время на написание кода ASP 

Время при использовании Crystal 

Технология Crystal 

Создание отчёта о клиентах- Подключение к базе данных- Выбор и размещение поля- Сортировка/группирование- Вставка адреса электронной почты- Ссылка на веб-сайт- Форматирование отчёта

210 минут
(3,5 часа)

1,5 минуты

Crystal Reports
(указать и щёлкнуть мышью в конструкторе)

Загрузка страниц по запросу 

45 минут

0 минут

Crystal Enterprise(автоматически)

Добавление защиты 

240 минут(4 часа)

1 минута

Crystal Enterprise
(указать и щёлкнуть на консоли Crystal Management Console)

Добавление функций расписания 

Не включено

0 минут

 

Обновление отчётов после обновления базы данных 

Не включено

0 минут

Crystal Enterprise

Итого времени 

495 минут

2,5 минуты

 

В приведённой таблице не учтено время, затрачиваемое на сопровождение и обновление приложения.

Опубликование реляционных данных на веб-сайте должно быть лёгким

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

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

Выбор правильного инструмента для максимального увеличения прибыли на инвестицию в веб-сайт

Для опубликования реляционных данных в Интернете существует большое разнообразие инструментов. Наиболее популярны отчёты с кодом ASP (такие инструменты как Macromedia Dreamweaver и Microsoft FrontPage.

Почему ASP?

Инструменты на основе кода ASP популярны по следующим причинам.

  • Привычность. VB Script похож на Microsoft Visual Basic (VB) , поэтому разработчики знакомы с этим широко известным стандартом. Многие разработчики считают, что этим языком легче пользоваться, чем JSP, JavaBeans, PHP и так далее.
  • Стандартность. Технология ASP содержит гибкие серверные компоненты, уже встроенные в продукты Microsoft, на которых установлен сервер IIS (Internet Information Server), с целью создания ASP-приложений.
  • ASP-разработчиков проще найти. Разработчиков, знающих ASP, довольно много, поэтому сложностей с их поиском нет.
  • Хорошая интеграция в другие продукты Microsoft. ASP, Internet Explorer, IIS и SQL-сервер хорошо взаимодействуют друг с другом.
  • Возможность многократного использования. Разработчики могут сэкономить время, копируя и вставляя строки кода, ранее написанные для других веб-страниц, а также создавая универсальные компоненты, которые годятся для многих веб-страниц.

Почему Crystal?

Технология Crystal имеет все преимущества технологии ASP, но значительно быстрее и дешевле.

  • Качество презентации, интерактивные отчёты. Интуитивно понятный интерфейс конструктора позволяет создать практически любой отчёт. Его можно превратить в интерактивные документы с развёрткой (переход по иерархии вниз), графиками, картами, оповещениями, параметрами, гиперссылками, возможностью вносить изменения и многими другими возможностями.
  • Использование уже знакомых стандартов. Используя общеизвестные стандарты для веб-сайтов, в том числе DHTML, VB Script, JavaScript, COM и XML, технология Crystal даёт компаниям полный контроль над всеми аспектами создания контента, интеграции и функциональности системы. VB Script был использован при разработке Crystal Server Pages (CSP) - веб-страниц, которые может видеть конечный пользователь.
  • Все возможности настройки. Мощные возможности настройки и полная поддержка стандартных языков создания сценариев (JavaScript и VBScript) позволяют разработчикам быстро строить нужные веб-приложения.
  • Мощная система управления контентом. Для управления информационной инфраструктурой достаточно нескольких щелчков мыши.
  • Практически отсутствует необходимость в написании кода. Предусмотрены почти все функции.

Максимизация отдачи от инвестиций в веб-сайты с помощью Crystal

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

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

Этот отчёт, который должен обновляться по ночам, является списком клиентов, отсортированным по названиям компаний. Он содержит сведения о представителях компаний и гиперссылки на их адреса электронной почты и веб-сайты. Через неделю вы завершаете написание отчётов, затем передаёте их на сайт интрасети так, что доступ к ним имеет только бухгалтерия, и приступаете следующему проекту.

Через неделю отдел маркетинга и отдел сбыта прослышали об этих отчётах и захотели такие же, но с небольшими изменениями. Отдел сбыта попросил, чтобы в отчёте о клиентах были номера телефонов. Отдел маркетинга попросил включить в отчёт ежемесячные ведомости доходов клиентов, сгруппированные по регионам, а не по названиям компаний. Бухгалтерский отдел также сообщил, что один из 5 отчётов выполняется слишком долго, поэтому его лучше выполнять раз в неделю, а не ежедневно. Кроме того, из бухгалтерии сообщили, что из-за того, что сотрудники информационного отдела вчера что-то делали с серверами, отчёты были недоступны 5 часов, и бухгалтеры не имели доступа к данным. Поэтому они не смогли во время выполнить пару важных задач для своих аудиторов. В результате вам приходится отложить свой текущий проект по крайней мере на неделю, чтобы выполнить просьбы отделов. Кроме того, вам приходится доказывать директору, что необходимо купить более мощное оборудование, чтобы удовлетворить дополнительные потребности пользователей.

Подводная часть айсберга тоже важна

Создание отчётов - не статичный проект. Приведенный выше пример показывает, что различные отделы предприятия по-разному смотрят на одни и те же данные.

За последние годы мы видели, как заказчики создают ASP-отчёты для публикации реляционных данных. Первые шаги довольно просты, но дальше сложность непомерно разрастается из-за появления в системе новых пользователей, интеграции новой технологии, обновления, настройки и добавления отчётов в связи с растущими требованиями пользователей. Все эти вопросы ведения и управления изменениями разработчики и ИТ-специалисты должны предусмотреть, публикуя данные на сайте.

Ниже приведены два отчёта, отображающие данные, описанные в вышеупомянутом сценарии; один из этих отчётов сделан и опубликован по технологии Crystal, а другой - по технологии ASP. Первый отчёт создан с помощью Crystal Reports (издание Developer или Professional), а опубликован с помощью среды Crystal Enterprise. Эти два отчёта похожи, но…

Рис. 1. Отчёт о клиентах, созданный с помощью Crystal Reports

Рис. 2. Отчёт о клиентах, созданный с помощью ASP

То, что мы видим в отчёте, является лишь вершиной айсберга. Рассмотрим следующие вопросы проекта по созданию отчётов при использовании технологий ASP и Crystal. Та часть айсберга, которая скрыта под водой, может очень существенно повлиять на окупаемость ваших инвестиций.

1. Вопросы вывода отчёта

  • Презентационное качеств
  • Содержимое отчёта и удобство подачи информации
  • Параметры диапазона опций поставки контента

2. Вопросы развёртывания и управления

  • Быстродействие системы
  • Масштабируемость системы и постоянная доступность данных
  • Надёжность инфраструктуры защиты данны
  • Поддержка и рост системы по мере роста организации

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

Далее сравниваются решения указанных вопросов с помощью Crystal и ASP, а также поясняется важность этих вопросов для успеха проекта по созданию и опубликованию отчётов.

1. Вопросы вывода отчёта

Представление отчёта

Отчёт со сводными, сильно уплотнёнными данными может существенно помочь пользователю лучше понять бизнес-процесс. Форматирование презентационного качества с использованием различных шрифтов, линий, рисунков и макетов с произвольной разметкой может помочь пользователю лучше и профессиональнее работать с информацией. В Crystal такая гибкость достигается всего лишь нажатием кнопки мастера. При написании кода ASP даже с помощью таких конструкторов как Dreamweaver и FrontPage, для добавления упомянутых функций требуются часы.

С помощью Crystal Reports можно легко представить информацию в той форме, к которой привыкли пользователи, какой бы она ни была - матричный отчет, счёт-фактура, заказ и так далее. Объектно-ориентированный конструктор поддерживает создание практически любых отчётов, любые стили и форматы. А при использовании ASP вы ограничены только выводом на основе таблиц. Произвольная компоновка в Crystal даёт возможность быстро извлекать нужную конечному пользователю информацию, и форматировать ее с целью выделения наиболее важных данных.

Удобство пользования отчётами и возможности доставки контента

Возможность объединять данные в группы, уплотнять, сортировать и фильтровать их, критически важна для опубликования данных в виде, удобном для конечных пользователей. Для увеличения ценности отчёта для конечных пользователей требуется также возможность добавлять бизнес-логику, например, вычисления, выделение исключений и параметров; требуются средства навигации: поиск, групповые деревья и переход на нижние уровни иерархии; кроме того, необходимы средства визуализации для создания графиков и карт.

При использовании ASP все эти функции отчёта приходится писать вручную. Во многих отношениях «комплексный отчёт» с упомянутыми функциями становится настоящим приложением. А при использовании Crystal Reports не нужно заботиться о написании кода для встраивания нужных функций - код создаётся автоматически всего несколькими щелчками мыши. Правда, один раз написанный код ASP можно многократно использовать для других отчётов, но если придётся вести более 10 отчётов, то усилий потребуется слишком много. Даже простое планирование выполнения отчёта потребует создание отдельного приложения.

Новаторская технология Crystal для создания, персонализации и настройки отчётов через сеть встроена в продукт и доступна через любой веб-браузер. Она предоставляет следующие возможности.

  • Параметризованные отчёты для усложнённой сортировки, фильтрации и сведения данных, создания карт и графиков.
  • Система планирования выполнения отчётов в заданные промежутки времени или регулярно с заданным периодом.
  • Встроенные средства навигации, в том числе оглавление, гиперссылки, детализация по иерархии, поиск.
  • Экспорт в файлы форматов Acrobat (PDF), Microsoft Excel, Word (RTF) и собственный формат Crystal Reports.

Разделение создания отчёта от создания приложения

Тесная интеграция между отчётами ASP и приложениями также потребляет много ресурсов для контроля качества. Во многих случаев код, использованный в приложении ASP, используется и в отчёте. Любое изменение кода отчёта или приложения, даже одной строки, требует нового тестирования приложения перед тем, как предоставить его пользователям. А поскольку отчёты обычно не являются статичными проектами, потому что потребности конечных пользователей изменяются, то проблема ведения изменений приобретает ещё большее значение.

Crystal разделяет отчёты и приложения, поэтому изменение отчёта никак не влияет на приложение, и наоборот - изменение приложения не влияет на отчёт. Права на внесение изменение, планирование, добавление новых отчётов, переформатирование… Crystal выполняет эти функции универсально, поэтому разработчикам и ИТ-специалистам не приходится беспокоиться о том, что они могут повредить код при изменении отчётов и приложений. Новый репозитарий Crystal Decisions использует единое место для обмена, обновления и управления объектами всех отчётов. Например, десять отчётов могут иметь общий текстовый объект, хранящийся в репозитарии. Если необходимо внести изменение, разработчик может изменить объект в репозитарии, после чего изменение автоматически распространяется на все отчёты, содержащие указанный объект.

Ещё одно преимущество отделения разработки отчётов от разработки приложений - разработчик имеет возможность передать конструирование контента другому лицу.

2. Вопросы развёртывания и управления

После опубликования данных для отчётов могут возникнуть другие проблемы. Кто обладает правом на эту информацию? Что пользователи могут с ней делать? Будет ли обновляться отчет при обновлении базы данных? Легко ли добавлять новых пользователей и изменять их права? Долговременный успех проекта по созданию и опубликованию отчётов зависит не только от полезности отчётов и удобством их использования конечными пользователями, но и от вашей способности сопровождать отчёты с использованием существующей у вас ИТ-инфраструктуры.

Далее сравниваются особенности развёртывания и сопровождения отчётов с помощью Crystal и ASP, а также поясняется важность этих вопросов для успеха всего проекта по созданию и опубликованию отчётов.

Быстродействие

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

Технология ASP не предусматривает кэширование данных на сервере. Она использует для кэширования локальный браузер пользователя, поэтому, если вы не купите и не установите дополнительное программное обеспечение или прокси-сервер, ASP-отчёты всегда будут обращаться к базе данных, в результате чего время реакции увеличивается, особенно в случае больших отчётов.

Crystal содержит серверный компонент, специально выделенный для кэширования отчётов. Этот серверный компонент может быть помещён на отдельный компьютер или несколько компьютеров, чтобы ускорить доставку часто выполняемых отчётов.

Crystal также содержит технологию обработки отчётов с загрузкой страниц отчёта по запросу. При этом каждый отчёт разбивается на страницы, и браузеру отправляются только запрошенные страницы, а не весь отчёт. Технология загрузки страниц по запросу также поддерживает общие задания: отчёты кэшируются, благодаря чему отдельные страницы отчётов могут отправляться различным пользователям без обращения к базе данных. Эта новаторская технология распределяет обработку отчётов, минимизируя количество обращений к базе данных, благодаря чему:

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

Планирование выполнения отчётов в те промежутки времени, когда нагрузка на систему снижается, и совместное использование отчётов также очень важны для повышения эффективности.

Масштабируемость и доступность

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

Разработчики, которые пишут отчёты на языке ASP, могут быть ограничены в масштабируемости, поскольку они всегда вынуждены использовать IIS. Чтобы получать информацию могло одновременно большое количество пользователей, разработчики могут повысить производительность своих ASP-приложений либо с помощью программного обеспечения, либо оборудования, но оба варианта имеют недостатки. Для распределения нагрузки по массиву (ферме) веб-серверов путем установки дополнительного оборудования требуются дорогостоящие ИТ-специалисты с сертификатами компании Cisco, а эти специалисты малочисленны и обычно постоянно заняты. Если же идти по пути установки дополнительного программного обеспечения, например, сервера MTS (Microsoft Transaction Server), который содержится в IIS, то при этом обычно необходима дополнительная работа по преобразованию всех сценариев в библиотеки DLL, которые должны стать компонентами MTS.

В основе Crystal лежит архитектура распределённых компонентов. Это означает, что отдельные компоненты системы могут быть «развязаны» (обработка плановых отчётов, управление системой, кэширование, обработка отчётов в реальном времени, доставки веб-данных) и распределены по множеству компьютеров. Благодаря этому увеличивается количество пользователей, которые могут иметь одновременный доступ к веб-сайту, повышается эффективность использования оборудования, быстрый рост возможностей системы, причём переписывать отчёты не требуется.

Crystal также распределяет нагрузку между всеми функциями управления системой и обработки отчётов. Кроме того, Crystal поддерживает кластеризацию и переключение ресурсов при сбое на уровне управления системой. Это значит, что к кластеру можно добавить несколько компьютеров, чтобы уменьшить время отклика и более эффективно распределять нагрузку, вызванную обращениями пользователей. Если какой-либо компьютер из кластера выйдет из строя, остальные компьютеры кластера автоматически возьмут на себя его функции, и нормальная работа кластера продолжится.

Безопасность

Когда речь идёт об отчётах, главные вопросы безопасности - кто имеет право просматривать отчёты и выполняемые ими операции. Может ли каждый пользователь планировать отчёты, просматривать их по запросу, вводить параметры отчётов, просматривать экземпляры отчёта за прошлые периоды и так далее? Все эти вопросы должны быть учтены в коде ASP каждого отчёта. И даже с учётом того, что некоторые компоненты кода ASP отчётов можно использовать многократно, контроль качества требует слишком много затрат времени.

Интерфейс Crystal позволяет вести функции защиты просто и удобно - всего лишь несколькими щелчками мыши. Все отчёты (объекты отчётов) хранятся в центральном репозитарии, благодаря чему управление функциями защиты отдельных объектов и папок ведётся просто нажатиями кнопки мыши. Кроме гибкости модели отдельных пользователей и групп пользователей, Crystal Enterprise поддерживает интеграцию с системами безопасности других производителей, в том числе LDAP и NT. Благодаря этому можно использовать существующую у вас инфраструктуру безопасности, чтобы ускорить развёртывание и администрирование.

Долгосрочная поддержка

Изменяющиеся потребности в отчётах. Как уже было показано в примере, в котором разработчик создал пять отчётов для бухгалтерии, требования к отчётам постоянно изменяются в различных отделах предприятия. Возможность вести и планировать обновления в системе отчётов критически важны при планировании ресурсов. Когда разработчик вносит изменения в код ASP, ему необходимо проанализировать, как эти изменения повлияют на остальные приложения, и протестировать код, чтобы убедиться в том, что отчёт или приложения по-прежнему работают без ошибок. Как правило, при внесении изменений требуются значительные трудозатраты на вопросы «подводной части айсберга», такие как масштабируемость, безопасность, которые при использовании Crystal решаются автоматически.

Использование результатов предыдущей работы. Более четырнадцати миллионов проданных лицензий, 300 OEM-партнёров показывают, что технология Crystal стала мировым стандартом в работе с отчётами. Crystal Reports применяется на многих передовых предприятиях, и наверняка вы сможете найти на своём предприятии хоть одного специалиста, знакомого с этими продуктами. Поэтому у вас есть возможность воспользоваться услугами своих специалистов, а не отправлять кого-нибудь на курсы по изучению ASP.

Техническая поддержка. Все продукты Crystal обладают возможностью доступа к различным уровням технической поддержки от самообслуживания до элитных персональных услуг, которые осуществляются круглосуточно (24 часа в сутки, 7 дней в неделю). Какой уровень поддержки может обеспечить ваш ASP-разработчик?

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

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

Краткий обзор вопросов, касающихся «подводной части айсберга», приведён в приложении № 3

Увеличение производительности веб-разработок в 180 раз с помощью Crystal

Сравним два отчёта, приведенных на рис. 1 и 2. Оба они представляют одну и ту же информацию, но один из них требует на создание и публикацию в сети существенно меньше времени.

  • Рис. 1. На создание и опубликование этого отчёта с помощью продуктов Crystal требуется 2,5 минуты. Обзор действий по созданию и публикации этого отчёта с помощью Crystal содержится в приложении 1.
  • Рис. 2. На создание этого отчёта с помощью кода ASP требуется 450 минут (7,5 часов), причём здесь не учтено время на опубликование и планирование отчёта. Обзор действий по созданию и публикации этого отчёта с помощью ASP содержится в приложении 2.

Расчёт окупаемости

  • 450 минут (ASP) - 2,5 минут (Crystal)
  • На 99% быстрее при использовании Crystal!
  • 450/2,5 = в 180 раз быстрее при использовании Crystal!

Выводы

  • Продукт Crystal Reports позволяет существенно быстрее публиковать данные на веб-сайте с качеством презентации с использованием легко управляемой веб-инфраструктуры под названием Crystal Enterprise.
  • С помощью технологии Crystal можно упростить весь процесс создания и опубликования отчётов. Разработчики могут сосредоточиться на разработке своих приложений, предоставив написание отчётов другим специалистам, а продукты Crystal обеспечат согласованность всех тех вопросов, которые раньше замедляли работу.
  • Кроме того, с помощью Crystal разработчики имеют доступ к полной модели COM (модель компонентных объектов), благодаря чему имеют возможность интегрировать свои отчёты в приложения нужным им способом.

Как найти дополнительную информацию

Дополнительная информация о Crystal Reports, Crystal Enterprise и семействе продуктов Crystal Decisions находится на следующих сайтах.

Приложение 1: Создание списка представителей клиентов с помощью Crystal Reports

Резюме

Данный пример был использован для определения времени, требуемого на создание отчёта с помощью Crystal Reports, опубликование его с помощью Crystal Enterprise и включение модели безопасности. Всего потребовалось 2,5 минуты. Этот пример был построен с помощью Crystal Reports Developer Edition и Crystal Enterprise Professional Edition. Вместо Developer Edition можно использовать Crystal Reports Advanced Edition.

Создание отчёта

Затраченное время: 1,5 минуты

Подключение к базе данных для получения доступа к данным

  1. Укажите на учебную базу данных Xtreme, выберите таблицу Customers (Клиенты).
  2. Заполните следующие поля: название компании-клиента, имя представителя, его фамилия, адрес электронной почты, веб-сайт.
  3. Вставьте имя и фамилию в текстовые поля, чтобы имя клиента было представлено как один объект.
  4. Сформатируйте текст так, чтобы он отображался шрифтом Arial Narrow размера 9.

Сортировка клиентов в алфавитном порядке с буквой в качестве заголовка группы клиентов

  1. В меню Insert (Вставка) выберите пункт Field Object (Объект поле). Появится диалоговое окно Field Explorer (Обозреватель полей).
  2. Выберите Formula Fields (Поля с формулами), затем New (Создать).
  3. В диалоговом окне Formula Name (Имя формулы) введите имя, которое хотите присвоить формуле, например, «Первая буква». Нажмите кнопку OK. Появится редактор формул (Formula Editor).
  4. В верхнем правом углу в раскрывающемся списке выберите пункт Crystal Syntax (Синтаксис Crystal). В поле Formula (Формула) ведите следующую формулу: {Клиент.Имя клиента} [1]. Нажмите кнопки Save (Сохранить) и Close (Закрыть). Имя указанной формулы появится в папке Field Objects.
  5. В меню Insert (Вставка) выберите пункт Group (Группировка). Появится диалоговое окно Insert Group (Вставка группировки). Выберите в раскрывающемся списке созданное поле с формулой в качестве поля, по которому будут группироваться данные. Во втором раскрывающемся списке выберите порядок сортировки. Нажмите кнопку OK.
  6. Теперь данные отчёта будут группироваться по первой букве названия компании.

Ввод адреса электронной почты, соответствующего имени клиента

  1. Щелкните правой кнопкой мыши по полю с именем клиента, выберите команду форматирования текста, затем перейдите на вкладку гиперссылки.
  2. В разделе типа гиперссылки выберите адрес электронной почты.
  3. Установите флажок «This Field contains an email address» (Это поле содержит адрес электронной почты).
  4. Перейдите на вкладку общих параметров, вызовите редактор формул. Введите {Клиент.Адрес электронной почты}.
  5. Перейдите на вкладку шрифта, выберите синий цвет ссылки и её подчёркивание.

Ввод ссылки на веб-сайт клиента

  1. Щелкните правой кнопкой мыши на поле веб-сайта клиента, выберите форматирование поля.
  2. Перейдите на вкладку гиперссылки, выберите текущее значение поля.
  3. Перейдите на вкладку Common (Общие), вызовите редактор формул, введите {Клиент.Веб-сайт}.
  4. Перейдите на вкладку шрифта, выберите синий цвет ссылки и её подчёркивание.

Форматирование с презентационным качеством

  1. Добавьте в заголовке страницы эмблему компании.
  2. Добавьте название (Список представителей клиентов), выберите жирный шрифт с размером 16.
  3. В разделе updated (обновление) добавьте поле обновления данных. Затем включите в текстовое окно поле Data date (Дата данных). Установите шрифт размера 8, курсив.
  4. В нижней части страницы (в её нижнем колонтитуле) добавьте синее поле.

Примечание: навигация генерируется автоматически - групповые деревья (оглавление, указатель), средство поиска и так далее.

Опубликование в сети

Выберите команду File (Файл), Save As (Сохранить как), затем выберите папку Crystal Enterprise.

Войдите в систему и выберите папку, в которой нужно сохранить отчёт.

Браузеры

Шесть просмотрщиков отчётов Crystal автоматически определяют тип браузера и представляют отчёты презентационного качества пользователям браузеров Internet Explorer и Netscape.

Экспорт

Crystal Reports позволяет пользователям автоматически экспортировать данные в файлы более 30 форматов, включая PDF, RTF, Excel и Word.

Печать

Возможна печать из любого браузера.

Планирование и безопасность

Затраченное время: 1 минута

Расписание

Администратор с помощью консоли Management Console продукта Crystal Enterprise может запланировать выполнение отчёта по ночам, чтобы днём пользователи могли просматривать в отчёте самые свежие данные. Кроме того, возможностью планировать автоматическое выполнение отчётов можно наделить конечных пользователей - они будут делать это через свои браузеры.

Безопасность

Защиту можно настроить так, чтобы просматривать отчёт могла только определенная группа. Такой группе можно предоставить все права, в том числе право планировать выполнение отчёта.

Масштабируемость

  • По умолчанию разрешено одновременное выполнение не более 20 экземпляров данного отчёта в папке. Администратор может в любой момент войти в консоль управления и изменить этот параметр.
  • Загрузка страниц отчёта по запросу генерируется автоматически.

Приложение 2: Обзор действий по созданию отчётов с помощью ASP и Crystal

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

Резюме

Опытный программист на ASP с помощью текстового редактора за полный рабочий день (7,5 часов) написал отчёт, подобный тому, который был создан и опубликован с помощью Crystal Reports и Crystal Enterprise за 2,5 минуты.

Создание отчёта с помощью ASP

Затраченное время: 3 часа

Страница, разработанная для данного примера, содержит 143 строки кода ASP; она устанавливает связь с базой данных и отправляет в неё запросы с помощью ADO.

Подключение к базе данных для доступа к данным

  1. Укажите на базу данных Xtreme.
  2. Запустите запрос и вернитесь к нужным записям.
  3. В базу данных с помощью ADO был отправлен запрос, в результате которого нужные данные были переданы из базы данных в таблицу. Заметим, что при работе с таблицами иногда встречаются проблемы с форматированием данных.
  4. Данные были отформатированы с помощью функции FormatDateTime языка vbScript.

Сортировка клиентов в алфавитном порядке с буквой в качестве заголовка группы клиентов

  1. Удалите первую букву и сохраните ее во временной переменной.
  2. Сравните первую букву значения поля с упомянутой временной переменной. Если они совпадают, отобразите значение. Если не совпадают, то будет отображена первая буква и первая запись.

Ввод адреса электронной почты, соответствующего имени клиента

  1. Проверьте поля, предназначены ли они для адресов электронной почты. Поле для адреса электронной почты должно быть сцеплено с тегом «mailto:».
  2. Поле для адреса веб-сайта должно быть сцеплено с тегом «href».

Форматирование с презентационным качеством

  • Разработчик может пользоваться Microsoft FrontPage, Macromedia Dreamweaver или другим инструментом графического дизайна. В данном примере был использован обычный текстовый редактор.
  • В данном примере размеры таблиц устанавливались динамически, чтобы упростить перенос кода между различными наборами записей. Из-за этого размеры могли зависеть от размеров полей. Поэтому вид у такого отчёта был не слишком привлекательным.

Добавление защиты

Затраченное время: 4 часа

Действия по добавлению защиты

  • Чтобы установить нужный уровень защита веб-сайта, использовалась модель безопасности Base64.
  • С целью генерирования паролей, приложение VB преобразовывало знаки ASCII имени и пароля пользователя в двоичные разряды. Затем всё объединялось в одну длинную строку, и данные разбивались на 6-разрядные куски. Каждый из 6 разрядов преобразовывался в эквивалентный знак Base64.

Добавление масштабируемости

Затраченное время: 45 минут

  • В данном примере загрузка страниц по запросу действует только последовательно. Считается количество отправляемых на страницу полей, и когда оно достигает 70, счётчик обнуляется для подсчёта полей другой страницы.
  • Набор записей должен храниться в переменной сеанса, из-за этого нагрузка на веб-сервер значительно возрастает. Если набор записей содержит 10 000 записей, и доступ получат 100 пользователей, то система очень быстро исчерпает ресурсы сервера.

Дополнительные параметры

Затраченное время: для данного примера не выполнено

Браузеры

Данный пример построен для выполнения с использованием Internet Explorer версии 5.0 или более поздней. Отчёт выглядит хорошо при использовании Internet Explorer версии 5.0 или более поздней. При использовании браузера Netscape таблицы выглядят несколько иначе. Это можно исправить путём изменения кода, что может увеличить время на разработку приложения.

Экспорт

Средства пакета Office не могли быть использованы для экспорта в файл формата Excel или Doc с дальнейшим экспортов в PDF. В данном примере эти функции не использовались из-за возможных осложнений с лицензированием.

Печать

Поскольку информация выводилась только в формате HTML, отчёт нужно было печатать с помощью кнопки «Печать» браузера, а при этом распечатывается сразу вся страница.

Приложение 3: Обзор подводной части айсберга

 

Преимущество 

ASP 

Crystal 

Бизнес-логика  Создание важных сводных данных, которых может не быть в базе данных. Требуется написание кода. Несколько щелчков мыши в режиме конструктора.
Навигация по отчёту  Быстрый переход к нужным сведениям. Может быть быстро интегрирована с помощью Dreamweaver, FrontPage и других подобных продуктов. Оглавление/групповые деревья и функции поиска генерируются/доступны автоматически.
Обновление данных в отчёте  Любой пользователь имеет доступ к свежей информации. Достигается выполнением другого запроса к базе данных. Включается автоматически на основе прав доступа.
Форматирование  Построение отчёта с требуемым форматированием с целью создания удобочитаемых документов. Для создания требуемых отчётов требуется написание кода. Для создания отчёта с большим объёмом форматирования нужно много времени. Специалисты создают практически любые отчёты с любой разметкой.
Параметры  Опытные пользователи могут интерактивно создавать нужный им контент с помощью параметров отчёта. Требуется написание кода. Минут 20 - 30 работы, затем код можно использовать в других отчётах. Несколько щелчков мыши в режиме конструктора.
Планирование  Обработка больших отчётов в периоды наименьшей нагрузки на сервер с целью своевременного обновления данных отчёта. Для планирования нужно создать отдельное приложение. Достаточно всего несколько щелчков мыши на консоли управления, которые также дают пользователю право на планирование.
Экспорт  Отправка динамического контента в файл другого формата. Требуется написание кода. Экспорт в файлы более 30 форматов, включая PDF, DOC, XLS, RTF, XML.
Безопасность  Возможность указывать, кто имеет право на просмотр информации, а также разрешать или запрещать действия с информацией. Написание кода вручную для каждой группы, каждого члена группы, каждой роли. Включено в Crystal Enterprise. Проверка подлинности с помощью LDAP/NT, поддержка единого входа.
Распределение нагрузки  Максимальная эффективность обработки отчётов. Требуется программное обеспечение других производителей. Включено в Crystal Enterprise Professional.
Кэширование/страницы по запросу  Уменьшение времени отклика, уменьшение количества обращений к базе данных. Для кэширования используется локальный кэш. Для уменьшения количества обращений к базе данных требуется прокси-сервер. Доступно автоматически.
Кластеризация, переключение ресурсов при сбое  Информация отчёта всегда доступна. Требуется продукт других производителей. Включено в Crystal Enterprise Professional.
Поддержка нескольких процессоров  Повышается скорость обработки отчётов. В случае использования ASP требуется IIS, выполняется только на одном сервере. Включено в Crystal Enterprise Professional.
Управление изменениями  Изменения вносятся в отчёты и инфраструктуру легко. После любого изменения кода или приложения необходимо выполнить тестирование заново. Приложения отделены от отчётов, изменения легко интегрируются.
Техническая поддержка  Долгосрочная поддержка при росте потребностей в работе с информацией. Легко ли найти незанятого ASP-разработчика? Есть пакеты с обновлениями.
Интеграция будущих технологий  Конкурентное преимущество После любого изменения кода или приложения необходимо выполнить тестирование заново. Переход к новой версии программного обеспечения. Выполняемый компанией Crystal процесс контроля качества помогает легко перейти на новую версию.

Приложение 4: Сравнение затрат времени при использовании Crystal и ASP

 

Время на написание кода ASP

Время при использовании Crystal

Технология Crystal

Создание отчёта о клиентах- Подключение к базе данных- Выбор и размещение поля- Сортировка/группирование- Вставка адреса электронной почты- Ссылка на веб-сайт- Форматирование отчёта

210 минут
(3,5 часа)

1,5 минуты

Crystal Reports
(указать и щёлкнуть мышью в конструкторе)

Загрузка страниц по запросу

45 минут

0 минут

Crystal Enterprise (автоматически)

Добавление защиты

240 минут
(4 часа)

1 минута

Crystal Enterprise
(указать и щёлкнуть на консоли Crystal Management Console)

Добавление функций расписания

Не включено

0 минут

Crystal Enterprise

 


Страница сайта http://185.71.96.61
Оригинал находится по адресу http://185.71.96.61/home.asp?artId=2077