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

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

Report for iBx [D7, IB6.x, FireBird]


Shizuku ©   (2005-02-17 15:02:00) 

Нужно создать отчёт для IBx приложения, который бы не использовал BDE для установления связи с источником данных.
Например Rave report "не видит" TibQuery, но прекрасно определяет обычный TQuery.


DSKalugin   (2005-02-17 18:13:00) [1]

SELECT *
FROM
TEST
INNER JOIN QUESTION ON (TEST.TEST_ID = QUESTION.TEST_ID)
INNER JOIN ANSWER ON (QUESTION.QUESTION_ID = ANSWER.QUESTION_ID)
INNER JOIN RESULT ON (ANSWER.REPLY_ID = RESULT.REPLY_ID)
WHERE
(RESULT.CREATED >= :after_dt) and
(RESULT.CREATED < :before_dt)

введи два параметра в запрос after_dt и before_dt

перед открытием ibQuery заполни их

ibQuery.Close;
ibQuery.ParamByName('after_dt').AsDateTime:=XXX
ibQuery.ParamByName('before_dt').AsDateTime:=XXX
ibQuery.Open


Shizuku   (2005-02-17 16:57:00) [2]

Работает!

А как запросить пару параметров перед тем как сгенирировать отчёт? Мне придётся каким-то хитрым способом запросить у пользователя дату и передать её в запрос (отчёт на дату):

SELECT *
FROM
 TEST
 INNER JOIN QUESTION ON (TEST.TEST_ID = QUESTION.TEST_ID)
 INNER JOIN ANSWER ON (QUESTION.QUESTION_ID = ANSWER.QUESTION_ID)
 INNER JOIN RESULT ON (ANSWER.REPLY_ID = RESULT.REPLY_ID)
WHERE
 (RESULT.CREATED >= '11.02.2005 00:00:00') and
 (RESULT.CREATED < '12.02.2005 00:00:00')


DSKalugin   (2005-02-17 16:38:00) [3]

Используй QuickReport или то что видит

http://www.sql.ru/forum/actualthread.aspx?bid=2&tid=160859
в модуле (Unit) самого отчета прописать сразу после секции
implementation
строку
uses твойDataModule;


Наверх

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