16.02.2012 11:06
Danil_
 
Сейчас у меня вот такой вот запрос

Код:
SELECT s.displayitem displayitem, 
s.ARTICLE ARTICLE, 
s.NAME NAME, 
s.SPECITEM SPECITEM, 
round(s.QuantByDoc,-s.Prec)  QUANTBYDOC, 
s.REASON REASON,
round(s.itemprice,:P_Prec) itemprice, 
round(s.quantity,-s.Prec) quantity_fact,
s.MESABBREV MESABBREV,
s.Prec Prec,
round(s.TotalPrice,:P_Prec) TotalPrice_fact,
round(nvl(t.TotalPrice,0),:P_Prec) TotalPrice_doc,
sm.supplierdoc supplierdoc,
sm.supplierinvoice supplierinvoice,
sm.supplinvoicecreate supplinvoicecreate
FROM supermag.SVSpecNaclRep s, supermag.TTPrintNacl t, supermag.smwaybillsin sm
WHERE s.DOCID = :P_DOC_ID
     AND s.DOCTYPE = :P_DOC_TYPE
     and t.doctype(+)=s.doctype
     and t.docid(+)=s.docid
     and t.specitem(+)=s.specitem 
     and t.docid = sm.id
     and t.doctype = sm.doctype
 and s.Quantity!=nvl(t.Quantity,0)
ORDER BY &P_SORT,s.displayitem
Поле F_SUPPLIERDOC не показывает ничего.
Где может быть ошибка?
17.02.2012 00:58
vdm
 
Эх. :dash2:
Расписывать каждый шаг картинками лень, а словами объяснять видимо не умею.
Погуглите чтоль "уроки oracle reports". Да и про sql... и повнимательнее...

Вручную, вне reports этот запрос выполни, подставив нужные параметры.
Будет ли там нужный тебе результат?

Предполагаю, что не будет, т.к. вот это все же неправильно:
Код:
     and t.docid = sm.id
     and t.doctype = sm.doctype
Как думаешь, получишь ли ты строки, где на месте t.* - null?
Правильное условие было уже указано выше.

Если так и не выйдет у тебя каменный цветок номеров со спецификацией (мне надоело повторять, что он и не нужен), вернись хотя бы в сторону своего же эксперимента
https://olegon.ru/showpost.php?p=109116&postcount=8
Тот CF_SUPPLIERDOC точно рабочий, ставь его источником для нужного поля в разметке и будет счастье.

Ну и чтобы еще больше запутать: можно и один общий запрос в модели данных разбить на группы, 1-ю с данными документа поставщика, 2-ю со всем остальным, и 2 повторяющихся рамки для них нарисовать, 2-ю внутри первой. Но вы лучше сюда пока не смотрите :)
29.02.2012 08:56
Danil_
 
У меня всё получилось. В запросе ошибку нашел и знания по репорт-билдеру повысил.
Всем большое спасибо.
Часовой пояс GMT +3, время: 03:58.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.