[ОТВЕТИТЬ]
Опции темы
03.11.2011 02:22  
Zhalex
Очень нужен отчет или запрос по сабжу. (SM - 1.028.1)
(была инвентаризация - утром запускается маг - а этот отчет в SMUtills-ах ругается что нет лицензии для его использования)
 
03.11.2011 07:11  
OlegON
А что не получается? Ш/к - smstoreunits, остатки - smgoods, карточки smcard.
Ждем твоего варианта.
 
03.11.2011 09:20  
Shlong
Цитата:
Сообщение от Zhalex
Очень нужен отчет или запрос по сабжу. (SM - 1.028.1)
(была инвентаризация - утром запускается маг - а этот отчет в SMUtills-ах ругается что нет лицензии для его использования)
по поводу отчета лучше обратится к YuraZ вполне возможно что отчет заказной...
 
03.11.2011 14:09  
CrazyWolf
Насколько я понял, в первом приближении, Вам нужно это
Код:
select l.name, c.article, c.name, smu.barcode, smg.quantity 
from smcard c
left outer join smgoods smg on (c.article = smg.article)
left outer join smstorelocations l on (smg.storeloc = l.id)
left outer join smstoreunits smu on (c.article = smu.article and smu.barcodetype = 5)
where smg.quantity <> 0
 
08.11.2011 00:40  
Zhalex
Цитата:
Сообщение от OlegON
А что не получается? Ш/к - smstoreunits, остатки - smgoods, карточки smcard.
Ждем твоего варианта.
Спасибо!
Цитата:
Сообщение от Shlong
по поводу отчета лучше обратится к YuraZ вполне возможно что отчет заказной...
все так, но во вне рабочее время недоступен.
Цитата:
Сообщение от CrazyWolf
Насколько я понял, в первом приближении, Вам нужно это
Код:
select l.name, c.article, c.name, smu.barcode, smg.quantity 
from smcard c
left outer join smgoods smg on (c.article = smg.article)
left outer join smstorelocations l on (smg.storeloc = l.id)
left outer join smstoreunits smu on (c.article = smu.article and smu.barcodetype = 5)
where smg.quantity <> 0
ага. у меня получилось так:
Код:
select c.name, u.barcode
from smcard c, smstoreunits u, smgoods g
where g.quantity <> 0
        and g.article = c.article
        and u.article = c.article
        and u.barcodetype  =5
order by 1
ПС. по-хорошему еще надобы и розничную цену прикрутить, т.к. при переводе мага с суммого учета на количественный/штрихкодирование изначально кассиры товары знают лучше по ценам.
 
08.11.2011 07:48  
akonev
смотришь id-шник места хранения
Код:
select ID, NAME from supermag.smstorelocations
смотришь id-шник вида цены
Код:
select ID, NAME from supermag.smpricetypes
вставляешь их в запрос
Код:
select c.name, u.barcode, p.price
from smcard c, smstoreunits u, smgoods g, smprices p
where g.quantity <> 0
        and g.article = c.article
        and u.article = c.article
        and u.barcodetype  =5
        and p.article(+)=c.article 
        and p.storeloc(+)=место_хранения
        and p.pricetype(+)=вид_цены
order by 1
если у тебя одно место хранения и один вид цены - можно id-шники не смотреть и тупо выкинуть две строки с условиями
 
08.11.2011 07:51  
akonev
... а если МХ не одно, то по хорошему еще в первом твоем запросе надо было условие на ID места хранения по таблице остатков. иначе строки дублироваться будут.
Код:
select c.name, u.barcode, p.price
from smcard c, smstoreunits u, smgoods g, smprices p
where g.quantity <> 0
        and g.article = c.article
        and u.article = c.article
        and u.barcodetype  =5
        and p.article(+)=c.article 
        and g.storeloc=место_хранения
        and p.storeloc(+)=место_хранения
        and p.pricetype(+)=вид_цены
order by 1
 
08.11.2011 11:26  
Zhalex
Цитата:
Код:
nd p.storeloc(+)=место_хранения
        and p.pricetype(+)=вид_цены
(+) это просто визуальная отметка, что эти строчки добавляются в первоначальный скрипт, или же некая конструкция в SQL Oracle?
 
08.11.2011 11:38  
akonev
Цитата:
Сообщение от Zhalex
(+) это просто визуальная отметка, что эти строчки добавляются в первоначальный скрипт, или же некая конструкция в SQL Oracle?
это пометка, что данных в привязанной этим условием табличке может и не найтись.
если есть цена - выберет цену. если нет цены - запрос выдаст null вместо цены по этим строкам. можешь рассматривать для себя как проверку, что есть цены на все короткие коды с остатками.

строго говоря, такие связки должны устанавливаться правильно прописанным join, но оракел милостив - разрешает и такой синтаксис
 
08.11.2011 11:38  
akonev
... если плюсики убрать - сторки без цен в выборку не попадут.
 
 


Опции темы



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

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