Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Технология создания отчетов в Delphi




Quick reports

На главную форму поместите 3 кнопки - "Просмотр", "Печать" и "Выход", а в заголовке окна (Caption) напишите "QuickReportdemo

Теперь создадим новую форму, поместим на нее компонент Table, установим свойство DatabaseName в DATA1, а для TableName выберем Customer, после чего установим свойство Active в истину. Таким образом, мы подготовили данные для вывода. Теперь поместим на форму компонент QuickRep, который визуально предствляет собой лист отчета и установим в свойстве Bands флаги HasColumnHeader, HasDetail, HasPageFooter и HasTitle. В результате на "листе" появятся 4 области, представляющие собой соответствующие логические части отчета. Теперь в центре самой верхней области - Title - поместим компонент QRLabel. Это аналог стандартной подписи (Label), предназначенный специально для отчетов QuickReport. В свойстве Caption напишем "Клиенты", после чего можно увеличить размер шрифта, сделать его полужирным или выбрать другую гарнитуру, чтобы заголовок не "затерялся"

Компонент TQuickRep, размещенный на форме, представляется сеткой отчета, в которую затем помещаются составные части отчета , например, полосы TQRBand..Многие из этих свойств можно установить на этапе конструирования с помощью редактора свойств, если в локальном меню компонента TQuickRep выбрать пункт ReportsettingsКомпонентом TQuickRep можно управлять с помощью имеющихся у него методов. В частности, метод Preview активизирует окно предварительного просмотра отчета а методPrint инициирует печать отчета на принтере. Чтобы на этапе конструирования просмотреть в окне предварительного просмотра содержимое отчета в том виде, как он будет выводиться на печать, нужно выбрать пунктPreview в локальном менюкомпонента TQuickRep. При этом некоторые данные (например, значения вычисляемых полей) отображаться не будут, поскольку они вычисляются только во время выполнения приложения.

Компонент TQRExpr позволяет поместить в отчет результат вычисления выражения, которое формируется с помощью редактора формул. Окно редактора формул активизируется кнопкой, имеющейся в поле свойстваExpression этого компонента, которое отображается в окне инспектора объектов.ПолеEnterexpression служит для ввода и редактирования выражения, которое может состоять из имен полей (столбцов) таблиц, функций и переменных, связанных знаками операций, набираемыми с помощью среднего ряда кнопок . Имя поля таблицы (Datafield), функция (Function)или переменная(Variable) добавляется в выражение с помощью вспомогательного окна, которое появляется при нажатии на соответствующую кнопку верхнегоряда.КомпонентTQRExpr может использоваться для вычисления итогов для групп строк в таблице. Чтобы функция, заданная свойствомExpression, применялась отдельно к каждой группе, необходимо свойству ResetAfterPrint компонента TQRExpr присвоить значение True

TQRLabel, помещенный на QRBand1 (этот компонент предназначен для вывода статического текста, и его свойству Caption можно присвоить значение, равное тексту заголовка будущего отчета).

TQRDBText на QRBand1(этот компонент предназначен для вывода содержимого полей таблицы или запроса, служащего источником данных проектируемого отчета

Ravereports

Для начала нам потребуется главная форма приложения, подобная той, что была использована в примере с QuickReport (см. рис. 22.1). Этой формой и ограничимся, поскольку в данном случае форма отчета создается не средствами VCL-компонент в IDE Delphi, а в специализированной среде RaveReports. Поэтому единственный компонент доступа к данным - Table - мы так же поместим на этой форме. При этом, как и в предыдущем случае, установим свойство DatabaseName в DATA1, TableName - в customer, а Active - в истину.Теперь перейдем к компонентам, расположенным на закладке Rave. Из них нам понадобятся RvProject - основной компонент отчета, RvSystem - для генерации отчетов и вывода их на принтер или в окно просмотра, а так жеRvDataSetConnection - для взаимодействия с источником данных, т.е. с компонентом Table. Соответственно, следует связать компонент RvDataSetConnection с Table, установив у него в свойстве DataSet значение Table1. Что касается компонента RvProject, то его следует связать с компонентом RvSystem, для чего в свойстве Engine следует установить значение RvSystem1.После этого можно приступить собственно к проектированию отчета, для чего нам понадобится загрузить среду RaveReports. Сделать это можно как из меню Tools, так и при помощи двойного щелчка мышкой по компоненту RvProject.В среде RaveReports следует начать новый проект, выбрав пункт New из меню File. При этом автоматически создастся новый проект, уже содержащий пустой одностраничный отчет. Для начала подготовим заголовок страницы отчета, для чего вверху страницы, по центру, расположим текстовую надпись (компонент Text расположен на вкладке Standard), в свойстве Text которой, при помощи инспектора компонентов, укажем значение "Клиенты". Чтобы выделить эту надпись шрифтом, можно перейти на закладку Fonts и настроить вид надписи при помощи имеющихся на ней элементов управления. Затем наметим заголовки столбцов, для чего несколько ниже основного заголовка разместим еще 2 компонента Text, один из которых будет являться заголовкам для колонки с номерами клиентов в базе, а другой - для имен.Таким образом, можно приступать к подготовке к выводу собственно данных. Но, прежде всего, нам потребуется определить источник данных, для чего следует создать объект данных (File ' NewDataObject). В окне диалога DataConnections следует выбрать вариант DirectDataView и нажать на кнопку Next, после чего появится второй экран этого диалога со списком доступных соединений. Впрочем, в данном случае, список будет состоять всего из 1 элемента - RvDataSetConnection1, который мы и выберем. После нажатия на кнопку Finish, новый источник данных появится в дереве проекта под именем DataView1.

RvProject - ключевой компонент, используемый для взаимодействия между отчетом Rave и приложением Delphi;

RvSystem - компонент, обеспечивающий взаимодействие между отчетом и функциями по печати и просмотру отчета. Фактически, RvSystem является интегрированной версией RvNDRWriter, RvRenderPreview и RvRenderPrinter;

RvCustomConnection - обеспечивает соединение с источником данных типа текстового файла, таблицы Excel и т.п.;

RvDataSetConnection - обеспечивает соединение с набором данных СУБД;

RvTableConnection - обеспечивает соединение с компонентом типа Table;

RvQueryConnection - обеспечивает соединение с компонентом типа Query;

RvNDRWriter - компонент для подготовки отчета в специальном двоичном формате для дальнейшего вывода на принтер или для просмотра на экране;

RvRenderPreview - компонент, обеспечивающий вывод отчета на экран;

RvRenderPrinter - компонент, обеспечивающий вывод отчета на печать;

RvRenderPDF, RvRenderHTML, RvRenderRTF, RvRenderText - группа компонентов, обеспечивающих экспорт отчета в форматы PDF, HTML, RTF или в текстовый файл.

Создание диаграмм

Компонент chart. позволяет создавать графики и диаграммы самого разнообразного вида. Для этого достаточно поместить компонент на форму и дважды щелкнуть по нему, чтобы открылось окно редактирования диаграммы

Обычная диаграмма представляет собой наглядное изображение одного или нескольких рядов числовых значений в виде линий, наборов точек или столбиков,секторо, круга и т.п. С точки зрения Delphiряд данных- это объект класса, происходящего от абстрактного класса TChartSeries.

Чтобы добавить к диаграмме объект ряда данных, необходимо открыть окно Редактора диаграмм на вкладке Chartи перейти на ее подвкладкуSeries.Далее нажать кнопку Add, откроется галерея типов в которой вы сможете выбрать форму представления ряда.Сразу после этого на панели отобразится пример набранной диаграммы,заполненой произвольными значениями. Однако если сразу же запустить программу на выполнение,панель окажется пустой, поскольку примеры видны только на этапе проектирования.Поэтому следует прибегнуть к программному коду, чтобы заполнить диаграмму значениями.Наиболее простой и наглядный метод – это использование метода Addдля свойства Series.Для выбора заголовка диаграммы используется свойство Text.Titleявляющиеся списком строк.В типичном случае следует лишь изменить лишь нулевой элемент этого списка,у которого по умолчанию стоит значение 'TCart’.

Так же возможна печать диаграммы,для чего у компонента Chartимеется метод Print.Так что выводить на печать построеные диаграммы просто:Chart1.Print;

General:установка параметров прокрутки и маштабирования,а также печать диаграммы и экспорт ее в файл или буфер обмена в различных форматах;

Axis:параметрыотображения,разметки и подписи осей;

Titles:выбор текста и оформление заголовка диаграммы

Legend:выбор оформления легенды и вспомогательных надписей;

Panel:установка параметров панели,т.е. области окна,в которой отображается диаграмма

Paging:разбиение диаграммы на страницы

Walls:параметры изображения стенок диаграммы

3D:параметры относящиеся к диаграммам объемного вида:столбчатым,точечным.

Сохранение диаграммы.Вывод в файл.

Оба диаграммных компонента,ChartиDBChart, распологают методами вывода диаграммы в файл в форматах точечного рисунка BMP.

Chart1.SaveToBitmapFile(‘graf.bmp’);Chart1.SaveToMetafile(‘graf.wmf);

Копирование в буфер обмена

Помещать диаграмму в буфер обмена тоже можно в одном из двух форматов изображения,BMPили WindowsMetaFile

Chart1.CopyToClipboardBitrtrap;

Chart1.CopyToClipboardMetafile(True);//EMF

Програмное задание заголовка диаграммы

Заголовок диаграммы(свойство TChart.Title)имеет тип TChartTitle,то есть это не простая строка а свойство-множество,имеющее несколько подсвойств,заведающих текстом заголовка,егошрифтом,цветом и т.п.

With.Chart1.Title do begin

Font.Color:=dRed

Font.Size:=11;

Font.Style:=[fsBold];

Text.Clear;

Text.Add(продажа по месяцам)

Text.Add(год 2014) end;

 










Последнее изменение этой страницы: 2018-05-29; просмотров: 223.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...