Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

(Работа с ADO) Kак организовать создание отчёта (НЕ таблицу)?


Guriev ©   (2008-01-30 12:49:00) 

Подскажите, пожалуйста - как организовать создание отчёта (НЕ таблицу)? Т.е. - есть БД (ADO), при двойном щелчке по строчке, открывается форма с подробной информацией по записи. Как, соответственно, отправить на печать содержимое данной формы (ОДНОЙ записи из БД), а не из всей таблицы БД?


Anatoly Podgoretsky   (2008-01-30 13:21:00) [1]

> Guriev  (30.01.2008 13:14:06)  [6]

Пример лежит на твоем диске в демос.


Guriev   (2008-01-30 13:14:00) [2]

> 2 Query - master-detail
можно QuickReport для печати юзать, там есть Header / Detail bands


буду благодарен, если подскажешь - где найти пример использования этого!


clickmaker   (2008-01-30 13:03:00) [3]


> Как бы сделать так, чтобы сверху распечаталась наша запись
> из "подробной" формы, а снизу (продолжение)

2 Query - master-detail
можно QuickReport для печати юзать, там есть Header / Detail bands


Guriev   (2008-01-30 12:58:00) [4]

Схема работы:
ADOConnection --> ADOQuery --> форма...


Guriev   (2008-01-30 12:56:00) [5]

Спасибо! А если ситуации более сложная: главная таблица + подчинённая?
Как бы сделать так, чтобы сверху распечаталась наша запись из "подробной" формы, а снизу (продолжение) - уже данные по этой записи из подчинённой?


clickmaker   (2008-01-30 12:52:00) [6]


> Как, соответственно, отправить на печать содержимое данной
> формы

разные способы есть.
Можно просто через объект Printer:
Printer.BeginDoc;
for i := 0 to Form.ControlCount do
begin
 if (Form.Controls[i] is TLabel) then
   выводим текст метка на Printer.Canvas
 else if (Form.Controls[i] is TEdit) then
   выводим текст поля на Printer.Canvas
end;
Printer.EndDoc;

можно через QuickReport, к примеру


Palladin   (2008-01-30 12:51:00) [7]

Форма.Print;


Наверх

Титульная страница Поиск, карта сайта Написать письмо