Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.08;
Скачать: CL | DM;

Вниз

не лады с репортом :-(   Найти похожие ветки 

 
Oleg_er   (2002-06-14 07:01) [0]

приветствую! проблемка приключилась... т.к. на local SQL нельзя написать типа select name, fld1, fld2 from (select name, fld as fld1, 0 as fld2 from tbl where prizn=1 union all select name, 0 as fld1, fld as fld2 from tbl where prizn=2) - решил эту пролему решить в QuickReport

выставил на страницу 3 TQuery
1: select distinct name from tbl
2: select name, fld from tbl where prizn=1
3: select name, fld from tbl where prizn=2

в первый столбец - qr1.name
2ой if (qr2.name=qr1.name, qr2.fld,0)
3ий if (qr3.name=qr1.name, 0, qr3.fld)

в результате первя строчка - все номано, а остальные - только первый столбец заполняется - остальные по нулям :-( что делать???


 
Oleg_er   (2002-06-14 08:57) [1]

а вообще такое возможно?
ну оччень надо!


 
Lord Warlock ©   (2002-06-14 09:14) [2]

В QuickReport работа со столбцами очень поганая, это не столбцы, а продолжение той же страницы на этих "столбцах", так что проблему не решишь. Что касается твоего суперзапроса, сделай их 2 штуки для каждой суммы, это легко, а потом сливай в самодельную временную таблицу, в которой нужные тебе 3 поля (ее лучше спроектировать в DBD, а не создавать динамически), и с ней делай что хочешь.

Подход конечно не ахти, но сработает


 
fnatali ©   (2002-06-14 09:14) [3]

А почему нельзя воспользоваться просто такой конструкцией?
select name, fld as fld1, 0 as fld2 from tbl where prizn=1
union all
select name, 0 as fld1, fld as fld2 from tbl where prizn=2


 
Lord Warlock ©   (2002-06-14 09:25) [4]


> fnatali © (14.06.02 09:14)


Это у него не подходит по условиям задачи, см
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1023967564&n=1


 
fnatali ©   (2002-06-14 09:56) [5]

Так там пример с суммированием - а здесь - без. И в результате
select name, fld1, fld2 from (select name, fld as fld1, 0 as fld2 from tbl where prizn=1 union all select name, 0 as fld1, fld as fld2 from tbl where prizn=2) и
select name, fld as fld1, 0 as fld2 from tbl where prizn=1
union all
select name, 0 as fld1, fld as fld2 from tbl where prizn=2
одно и тоже.
Oleg_er (14.06.02 08:57) - вы бы почётче условия задачи формулировали, а то с телепатией туговато.


 
Lord Warlock ©   (2002-06-14 10:00) [6]


> fnatali © (14.06.02 09:56)


по-моему четче некуда...


 
Dick ©   (2002-06-16 10:06) [7]

Можно воспользоваться вычисляемыми полями. Через Fields Editor добавляем новое поле, ставим ему тип Calculated и в обработчике собития (что-то вроде onCalcfields) y TQuery заполняешь нужные поля.


 
Виталий Панасенко   (2002-06-17 08:55) [8]

А можно создать композитный отчет (из двух, трех и т.д. репортов)



Страницы: 1 вся ветка

Текущий архив: 2002.07.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
1-23634
kmc
2002-06-25 20:21
2002.07.08
TCanvas.TextOut


3-23446
Siv_Soft
2002-06-14 12:49
2002.07.08
Использование fetch


1-23662
Cosinus
2002-06-26 11:11
2002.07.08
Подскажите, как понять, какая именно клавиша нажата на мыши?


3-23511
Romank
2002-06-14 17:26
2002.07.08
Problem with calculated field


1-23572
Voldemar
2002-06-26 14:42
2002.07.08
Отчет в HTML