Как создавать отчеты в генераторе отчетов.

Перед использованием системы отчетов прочитайте статью по ссылке

http://support.simplight.ru/topics/439-podgotovka-sistemyi-generatora-otchetov/


Если все нижеописанное трудно для понимания или у вас нет времени на изучение, просто напишите нам на почту какой отчет вам нужен и мы возьмем его подготовку на себя.


Для того чтобы открыть Генератор отчетов нужно перейти в Пуск –> все программы –> SimpLight –>Система отчетов –> SimpReporter.


Image 483


1.Выделить папку, в которую необходимо добавить отчет. Нажать кнопку «Новый отчет».


Image 419

Ввести название отчета (будет видеть пользователь) и его описание (будет отображаться в виде всплывающей

подсказки при наведении мыши указателя на отчет). Нажать кнопку «Создать».


Image 420

Откроется FastReport.

2.Создать запрос к базе данных. В открывшемся окне перейти на вкладку данные


Image 421


Image 422


Ввести запрос в компонент «SL_ADOQuery».

Для создания формы отчета ввести запрос с конкретными значениями вместо параметров. В дальнейшем эти

значения заменить на параметры (см. ниже).


Image 423


select d.PassportID,

p.Name,

d.ValueTime,

d.ValueData,

p.HighAlarm,

p.LowAlarm

from DataValues d join Passports p on d.PassportID=p. PassportID

where

d.ProjectID = 1 and

d.PassportID=1408015820 and

d.ValueTime between 42720.00001157408 and 42720.00011574077


где : 1 – код текущего проекта в базе данных. Данный код выведен отдельной переменной «Текущий проект»

1408015820 - код существующего канала из базы

42720.00001157408, 42720.00011574077 – дата и время для выборки


Image 424


Внимание! Если используются несколько проектов, то во все запросы необходимо добавлять код текущего

проекта.

Создадим дополнительный запрос для подключения справочника каналов. Расположить ADOQuery. Зададим имя

«sprPassport» и введем один из нижеуказанных запросов.


Запрос отображает все существующие каналы:

select PassportID, Name

from passports


Запрос отображает только те каналы, по которым велась запись:

select PassportID, Name

from Passports

where ID in (select distinct PassportID from DataValues)


Image 425


Image 426


Добавить в источники данных созданные запросы. Меню «Отчет» - «Данные».


Image 427


В открывшемся окне отметить запрос. Нажать «ОК».


Image 428


Перейти на вкладку Page1.


Image 429


Расположить на странице отчета бенд «Заголовок отчета», «Заголовок данных», «Данные 1 уровня»


Image 430


Image 431


Image 432


Выбрать источник данных, нажать кнопку «OK»


Image 433


В бенд «Данные» пометить необходимые поля.


Image 434


Для корректного отображения даты, выделить поле нажать свойство «DisplayFormat» или в контекстном меню «Форматирование…»


Image 435


В открывшемся окне выбрать категорию Дата/время, слева в окне отображены типовые форматы отображения

полей типа Дата/Время, если нет формата, который нужен, то в вести в «Строку форматирования» свой формат,

например dd.mm.yyyy hh:mm:ss.


Image 436


Вставить заголовки полей в бенд «Заголовок данных».


Image 437


В бенд «Заголовок отчета» вставить объект Memo. Ввести заголовок отчета.


Image 438


С помощью панели инструментов настроим вид отчета, выделим заголовок отчета и заголовок данных,

прорисуем рамки полей.


Image 439


Заменить в запросе значения на параметры.


Image 440


select d.PassportID,

p.Name,

d.ValueTime,

d.ValueData,

p.HighAlarm,

p.LowAlarm

from DataValues d join

Passports p on d.PassportID=p. PassportID

where d.ProjectID = :PrID and

d.PassportID=:ID and

d.ValueTime between :dtBeg and :dtEnd

:PrID, :ID, :dtBeg, :dtEnd – параметры запроса


3.Создаем форму для ввода параметров.Меню «Файл» - «Новая форма»


Image 441

Ввести заголовок формы параметров. Свойство Caption формы.


Image 442


Располагаем на форме элементы управления DBLookupComboBox и Label. DBLookupComboBox будет содержать

список каналов – необходимо чтобы пользователь выбрал канал, по которому ему необходимо вывести данные

в отчет. Label – описание компонента.


Image 443


Label1 свойство Caption вводим «Список каналов».


Image 444


Подключить DBLookupComboBox к справочнику – свойство DataSet выбрать из списка «sprPassport». Свойство

KeyField =«PassportID» - значение, которое будет передаваться в БД. ListField = «Name» - данные из этого поля

пользователь будет видеть при открытии списка. Свойство AutoOpenDataSet сделать True, для того, что бы при

открытии отчета автоматически заполнялся список каналов из справочника.


Image 445


Расположить на форме три элементы управления Label. Lablel2 свойство Caption = «Выбрыть данные за период».

Label3 свойство Caption = «с:», Label4 свойство Caption = «по:».


Для задания периода времени расположить на форме две пары элементов управления DateEdit. Для двух

установить свойство Kind = «dtkDate».


Image 446


Для двух других Kind = «dtkTime».


Image 447


Расположить на форме две кнопки «Просмотр» и «Отмена».


Image 448


Image 449


Добавим название канала в заголовок отчета.


Image 450


4.Настроить связь формы параметров с параметрами запроса


На вкладке «Данные» выделить SL_ADOQuery. Открыть Свойство Params. Изменить тип параметров и задать

значение. Для параметра ID значение DBLookupComboBox1.KeyValue, dtBeg -

Trunc(DateEdit1.Date)+DateEdit2.Time- Trunc(DateEdit2.Time), dtEnd - Trunc(DateEdit3.Date)+DateEdit4.Time-

Trunc(DateEdit4.Time)


Image 451


Сохранить отчет.


Запустить предварительный просмотр.


Image 452


Откроется форма с параметрами. Установить параметры и нажать Просмотр.


Image 453


Откроется готовый отчет.


Image 454



Если все вышеописанное трудно для понимания или у вас нет времени на изучение, просто напишите нам на почту какой отчет вам нужен и мы возьмем его подготовку на себя.



Примечания

  1. Процесс репликации базы данных Симп Лайт может занимать продолжительное время, поэтому в репликаторе не указывайте большие временные диапазоны (начните с 1 дня)
  2. Генератор не работает с базой Симп Лайт напрямую, он работает с её среплицированной копией в формате sqlite, поэтому учитывайте что для этой копии нужно будет дополнительное место на диске. База в формате sqlite хранится в папке C:\slProject\Reports\DataBase
  3. В генератор отчетов Симп Лайт построен на базе ПО FastReport, который посредством ODBC драйвера соединяется с БД SQLite. ODBC драйвер входит в состав инсталлятора.
  4. Так же в его состав включен Репликатор Симп Лайт, которой отвечает за копирование данных из БД Симп Лайт в БД SQLite.
  5. В текущей версии отсутствует возможность работы по сети.
  6. Генератор отчетов Симп Лайт работает только с 32-битной версией ODBC-драйвера, который ставится и на 64-битные ОС.


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

FastReport_Руководство пользователя.pdf




Эта статья была полезна для 6 людей. Эта статья помогла вам?

Сервис поддержки клиентов работает на платформе UserEcho