Главная страница
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.611 c
7-23817
Yaro
2002-04-12 10:08
2002.07.08
Использование стороннего ActiveX a во время выполнения программы.


14-23740
ev
2002-06-01 20:17
2002.07.08
распределенная БД


8-23677
Lenidus
2002-02-27 23:46
2002.07.08
Тень от TPanel


7-23821
Chief
2002-04-13 17:20
2002.07.08
Чтение данных с устройства под Windows 2000


1-23608
Sirus
2002-06-24 08:12
2002.07.08
Как закрыть TQuickRep... Отчет создается, работае, но не хочет...