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

Вниз

помогите с отчетом   Найти похожие ветки 

 
Doctor   (2002-07-16 13:27) [0]

народ, как быть ?
надо сделать в отчете таблицу типа
название товара/сумма/кол-во/за период/до периода/на конец периода
вот в этом периоде и вся загвоздка.
по идее надо сделать выборку где where period и даты, но это получается 3 запроса, а в отчет в DataSet можно вставить тоько 1 ресурс, по 2-м другим отчет не строится!!!!
делать union-тогда будет набор, из которого я не выберу информацию
и left join не катит, т.к. все данные из 1 таблицы
КТО ЗНАЕТ ПОМОГИТЕ, plz !!!!


 
Johnmen ©   (2002-07-16 13:32) [1]

Добрый Доктор, это неизлечимо ! :)))) Шучу.......:))))))

Ничто не мешает джойнить таблицу саму с собой. (Если это поможет...)



 
Doctor   (2002-07-16 13:39) [2]

мне надо вывод 3 одинаковых поля для разных дат (периодов)
из за этого ругается компилятор, что не может раздуплить, где какое поле


 
Johnmen ©   (2002-07-16 13:42) [3]

укажи алиасы


 
Doctor   (2002-07-16 13:45) [4]

ну смотри, даже если будет название_табл.назв_поля
все равно то данные из 1 таблицы !!!
и будет матюкаться.........


 
Johnmen ©   (2002-07-16 13:48) [5]

Приведи текст запроса и текст матюков...


 
Doctor   (2002-07-16 13:50) [6]

вот 1 запрос
select
optionid,sum(SUMMA),count(dogovorid) from DOGOVOR
where zayavl_data <= :kon
group by optionId
2
select
optionid,sum(SUMMA),count(dogovorid) from DOGOVOR
where zayavl_data <= :nach
group by optionId
3
select
optionid,sum(SUMMA),count(dogovorid) from DOGOVOR
where zayavl_data between :nach and :kon
group by optionId

как объеденить все 3, если знаешь напиши


 
Johnmen ©   (2002-07-16 13:59) [7]

Вариант такой.
Добавляем в каждый запрос поле XXX :
в первом - 1 AS XXX; в 2 - 2 AS XXX; 3 - 3 AS XXX
Объединяем запросы UNION ALL
В отчете делаем группировку по полю XXX

Если же надо в горизонте - то можно через виртуальную таблицу...


 
Doctor   (2002-07-16 14:03) [8]

а как через виртуальную таблицу, впервые слышу об этом
(надо в "горизонте")


 
ПИТОН   (2002-07-16 14:03) [9]

Попробуй юнионом объединить эти три таблицы в локальную так

select
optionid,sum(SUMMA) as summa ,count(dogovorid) as now, 0 as befor, 0 as after
from DOGOVOR
where zayavl_data <= :kon
group by optionId
Union all
select
optionid,0,0,count(dogovorid),0 from DOGOVOR
where zayavl_data <= :nach
group by optionId
union all
select
optionid,0,count(dogovorid),0,0 from DOGOVOR
where zayavl_data between :nach and :kon
group by optionId

а потом их просуммировать:
select optionid, sum(sum), sum(now), sum(befor), sum(after)
from localtable
group by optionid


 
roottim   (2002-07-16 14:05) [10]

а в ИБ поддерживается ?
select
field,..,
(select field from...)
field
from mtable
where...

хотя не очень понятен вид отчета... хотябы пример


 
Sergey13 ©   (2002-07-16 14:07) [11]

2Doctor (16.07.02 13:27)
Я такие весчи делал через CAST, т.е. типа

select name,cast((select sum from table1 t2 where ... ) as number) as pole_name
from table1 t1
where ...

За синтаксис не ручаюсь, давно я IB активно не юзал. Работало тормозно, и наверное коряво. Но работало. Для отчета пойдет.


 
Alexandr ©   (2002-07-16 14:07) [12]

поддерживается.


 
Johnmen ©   (2002-07-16 14:08) [13]

UNION"ами получаешь вертикально.
Есть такой очень неплохой компонент RxMemoryData из библ. RxLib. Это вирт. таблица.



 
Doctor   (2002-07-16 14:15) [14]

может тогда и подскажешь, где свачать rx,
а то я скачал откуда-то и при компиляции выдается ошибка
file not found "Gauges.dcu"
а компоненты действительно рулезные , у меня когда то стояла их старая версия.......


 
Johnmen ©   (2002-07-16 14:26) [15]

http://www.delphiplus.org
http://www.delphiplus.spils.lv
http://www.torry.net - сделай поиск


 
Alexandr ©   (2002-07-16 14:30) [16]

насколько я припоминаю сейчас две верки создания RxLIb

одна на sourceforge
другая есть на www.demo.ru

только в них есть поддержка Delphi6

Какую из них выбрать - решать тебе...



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

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

Наверх




Память: 0.5 MB
Время: 0.013 c
1-13613
MARcoDEN
2002-07-23 21:28
2002.08.05
Combining signed and unsigned types


14-13798
dnkSoftWare
2002-07-11 11:07
2002.08.05
Help&Manual лепит HTML Help и выводит его в нерусской кодировке??


3-13529
SkyR
2002-07-15 08:09
2002.08.05
Опяь SQL запрос...


1-13604
иван
2002-07-24 16:58
2002.08.05
ПОМОЖИТЕ, ЧЕМ МОЖИТЕ!!!!!!!!


14-13793
Феликс
2002-07-10 20:24
2002.08.05
Слушайте! Правда, что ли, что сборная Россия проиграла Японцам?