20.02.2018 15:45
Завтра уже
сегодня у нас уже почти среда )
20.02.2018 15:47
Цитата:
whitewizard сегодня у нас уже почти среда )
вот это ответ так ответ ))
Спасибо за помощь заранее.
20.02.2018 15:48
Код:
CREATE OR REPLACE FUNCTION GETPACKNAME( DOC_ID IN smdocuments.ID%TYPE )
 RETURN varchar2
is
pt varchar2(200);
 BEGIN
   select t.PACKNAME into pt
from supermag.SLSPECPACKS t
where t.DOCID=DOC_ID and t.doctype='WO';
return pt;
 EXCEPTION
   WHEN OTHERS THEN
      RETURN NULL;
END;
20.02.2018 15:55
товарищи, вы лучшие! ))
Mtirt, благодарю ))
20.02.2018 17:23
а как можно по этому полю или по номеру документа сгрупировать?
Пробую кроме вывода значения выводить кол-во разных значений - получаю кучу одинаковых строк.
Во вложении скрины и модель отчёта
Миниатюры
Нажмите на изображение для увеличения
Название: Image 2610.png
Просмотров: 287
Размер:	17.9 Кб
ID:	9233   Нажмите на изображение для увеличения
Название: Image 2611.png
Просмотров: 281
Размер:	16.0 Кб
ID:	9234   Нажмите на изображение для увеличения
Название: Image 2612.png
Просмотров: 288
Размер:	7.0 Кб
ID:	9235   Нажмите на изображение для увеличения
Название: Image 2609.png
Просмотров: 289
Размер:	84.7 Кб
ID:	9236  
Вложения
Тип файла: rar Количество приходов _ расходов артикула2.rar (833 байт, 28 просмотров)
20.02.2018 18:29
а, всё, получилось
20.02.2018 18:58
Расскажи, мало ли, кому ещё понадобится.
21.02.2018 18:58
Та ещё колупаюсь, не всё получилось.
Выводит ерунду пока что, не учтено, что в документе всё-таки на каждую позицию указывается разные коды продавцов, и выставлять решили для упрощения задачи в виде цифры (к примеру, Иванов это цифра "1", Петров цифра "2"), в таком варианте вообще ничего не показывает отчёт ((
21.02.2018 19:19
Так ведь в SLSPECPACKS для разных позиций одного документа будут разные значения, и функция будет возвращать NULL, так как запрос будет возвращать больше одного значения.
21.02.2018 19:44
Нужно функцию переделывать, добавлять параметр - код позиции.

SQL код:
CREATE OR REPLACE FUNCTION GETPACKNAME( DOC_ID IN smdocuments.ID%TYPE,myspecitem in number )
 RETURN varchar2
is
pt varchar2(200);
 BEGIN
   select t.PACKNAME into pt
from supermag.SLSPECPACKS t
where t.DOCID=DOC_ID and t.doctype='WO' and t.SPECITEM=myspecitem;
return pt;
 EXCEPTION
   WHEN OTHERS THEN
      RETURN NULL;
END; 
и вызов в БА тоже переделывать.
SQL код:
SUPERMAG.GETPACKNAME({Заголовок документа. Номер документа},{Заголовок документа. Код позиции спецификации}) 
Часовой пояс GMT +3, время: 05:14.

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