[ОТВЕТИТЬ]
Опции темы
02.10.2007 15:47  
shurik_catfish
Вообщем имееться документ (расх накладная). Нужно для каждой позиции в этой накадной отобрать артикул,штрихкод и количество. НО!!!
При есть карточкки товаров которым сопоставлено нескоько штрихкодов - как в запросе выбрать тока один (в SQL не очень силен). Как можно модифицировать этот запрос
Код:
 select smspec.article,smspec.quantity,barcode
 from smspec,SMStoreUnits where docid='0266' 
and doctype='WO'
and SMStoreUnits.article=smspec.article 
order by smspec.article
????
 
02.10.2007 15:54  
shurik_catfish
Этот запрос возвращает артикула, количество, штрихкод - но вот только для каждого артикула выходит по несколько штрихкодов и несколько раз количество а это прямо скажем не катит.
 
02.10.2007 16:58  
akonev
вот так, например. подтянется народ, кто чаще пишут - может толковее вариант предложат
Код:
select t.article,t.quantity,
   (select barcode 
      from smstoreunits b 
      where b.article=t.article and rownum=1) barcode
  from smspec t 
  where docid='0266' 
    and doctype='WO'
  order by t.article
 
02.10.2007 17:16  
Mtirt
Я у себя сделала функцию, и использую в таких случаях её...
Код:
create or replace function barToStrcreate  ( p_a in varchar2 )
    return varchar2
    is
        l_str  varchar2(2000) default null;
        l_sep  varchar2(1) default null;
    begin
        for x in ( select barcode from smstoreunits where article = p_a ) loop
            l_str := l_str || l_sep || x.barcode;
           l_sep := ',';
       end loop;
       return l_str;
   end;
Получится так:
Код:
 select t.article,t.quantity,
   barToStrcreate(t.article) barcode
  from smspec t 
  where docid='0266' 
    and doctype='WO'
  order by t.article
 
"Спасибо" Mtirt от:
05.10.2007 08:31  
shurik_catfish
Огромное спасибо Андрей и Татьяна. Но мне придеться свой запросик исполльзовать, а потом в делфи уже обработаю как надо. Изменились требования - нужно и количество и все штрихкода по этой карточке :(
 
05.10.2007 08:39  
Mtirt
Так функция и дает ВСЕ штрих-кода по этой карточке. И закидывает их в одну строку.
У тебя в поле barcode получается список штрих-кодов, разделенный запятыми. Чем не нравится?
 
05.10.2007 16:27  
shurik_catfish
Не то что не нравиться просто потом все равно через текстовик в СМ вставлять (а там столбиком). В принципе без разницы конечно и так и так придеться количество по штрихкодам из одной карточки как то отсллеживать. (Влад наверное сказал для чего все это :) )
 
05.10.2007 17:01  
OlegON
Цитата:
Сообщение от shurik_catfish
Не то что не нравиться просто потом все равно через текстовик в СМ вставлять (а там столбиком). В принципе без разницы конечно и так и так придеться количество по штрихкодам из одной карточки как то отсллеживать. (Влад наверное сказал для чего все это :) )
Ты сначала бы оформил требования почетче. Я ничего не понял, если честно. Если строку надо разбить на столбик, вбивай перевод строки #13#10 и будет тебе счастье. Определи четко, что именно ты хочешь вывести, а там и самому понятно будет, либо подскажем.
 
 
Опции темы



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

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