[ОТВЕТИТЬ]
Опции темы
03.06.2009 19:49  
AirAir
Добрый день.Наконец я решил всеже освоить oracle reports 6i - возник вопрос: я написал запрос который возвращает остатки по нужным мне местам хранения сразу в одном отчете. В этом отчете мне нужен всего один параметр 'группы товаров' по которому будут отбираться товары для анализа только из определенных групп

Select * FROM
(Select
ARTICLE,
NAME,
TREE,
SUM(QUANTITY),
SUM(DECODE(STORELOC,1,QUANTITY,0)) ЦС,
SUM(DECODE(STORELOC,2,QUANTITY,0)) х,
SUM(DECODE(STORELOC,3,QUANTITY,0)) у,
SUM(DECODE(STORELOC,5,QUANTITY,0)) z
--SUM(Total_sum)
FROM
(SELECT
SMGOODS.ARTICLE,
SMCARD.NAME,
SMGOODS.STORELOC,
SMGOODS.QUANTITY,
SACARDCLASS.TREE,
SMCARD.IDMEASUREMENT
-- SUM(SMGOODS.QUANTITY) OVER
-- (PARTITION BY SACARDCLASS.TREE) as Total_sum
FROM
SUPERMAG.SMGOODS,
SUPERMAG.SMCARD,
SUPERMAG.SACARDCLASS
WHERE
SMGOODS.ARTICLE = SMCARD.ARTICLE AND
SMCARD.IDCLASS = SACARDCLASS.ID AND
SMCARD.IDMEASUREMENT = 0 AND
SACARDCLASS.TREE LIKE '16.%')
GROUP by
ARTICLE,
NAME,
TREE
ORDER BY
TREE)
WHERE ЦС >0

Я помещаю этот запрос в oracle reports 6i и ставлю вместо
WHERE
SMGOODS.ARTICLE = SMCARD.ARTICLE AND
SMCARD.IDCLASS = SACARDCLASS.ID AND
SMCARD.IDMEASUREMENT = 0 AND
SACARDCLASS.TREE LIKE '16.%')
это
WHERE
SMGOODS.ARTICLE = SMCARD.ARTICLE AND
SMCARD.IDCLASS = SACARDCLASS.ID AND
SMCARD.IDMEASUREMENT = 0 AND
SACARDCLASS.TREE LIKE ':P_GROUP_TREE.%'), но так не работает,
какая конструкция тут должна быть.(С oracle reports 6i я работаю первый вечер)
Заранее спасибо
 
03.06.2009 20:08  
vdm
Цитата:
Сообщение от AirAir
SACARDCLASS.TREE LIKE ':P_GROUP_TREE.%'), но так не работает,
Точка перед % не лишняя ?
 
03.06.2009 20:23  
MirProd
Цитата:
Сообщение от AirAir
SACARDCLASS.TREE LIKE ':P_GROUP_TREE.%', но так не работает
Если используешь параметры, то
Код:
SACARDCLASS.TREE LIKE :P_GROUP_TREE||'.%'
P.S. Если параметром будет путь группы классификатора, точку убери.
 
04.06.2009 09:44  
AirAir
SACARDCLASS.TREE LIKE :P_GROUP_TREE||'%' вот так работает,но если выбирать две группы, то ничего не возвращается. Огромное спасибо!!!
 
04.06.2009 15:44  
Pall_V
я вместо SACARDCLASS использую вьюху SVCARDTREESPLIT с помощью нее проще
 
"Спасибо" Pall_V от:
08.06.2009 08:45  
Mihon
Цитата:
Сообщение от AirAir
SACARDCLASS.TREE LIKE :P_GROUP_TREE||'%' вот так работает,но если выбирать две группы, то ничего не возвращается. Огромное спасибо!!!
Если выбирать 2 и более группы - то нужно использовать:
1) С+. То есть их исходники искать (незнамо где) и смотреть как расшифровывается у них несколько групп в параметре (насколько я знаю, с помощью внутренних функций заполняется временная табличка в БД)
2) Самописную форму параметров, где этот параметр будет отправляться отчету в удобном для расшифровки виде. Удобном для тебя :)
 
 
Опции темы



Часовой пояс GMT +3, время: 20:59.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.