24.01.2018 16:34
m1n1mal
 
Спасибо, то что нужно!
Немного изменил функцию, так как колонка мне нужна в расчетах.
Сейчас, при наличии наценки на товар в колонку выводится его значение, если оно отсутствует, выводится значение установленное на группу.

SQL код:
CREATE OR REPLACE function SUPERMAG.extracharge2  p_a in varchar2loc in integer 
    return 
varchar2 
    is 
        cl_name  varchar2
(100) default null
        
cl_name2  varchar2(100) default null
        
pt  integer(3) default null;         
    
begin 
          select pricetype into pt from supermag
.smlocprices where locid loc and (bitand(flags2) = 2); 
          
select max(extrachargeinto cl_name from supermag.smextracharge where article=p_a and pricetype pt
          if 
cl_name is not null then
          cl_name 
:= cl_name;
          ELSE
          
cl_name := supermag.smgetextrachargeclass(p_apt);
          
end if;
          return 
cl_name;  
   
end;

Код для бизнес-анализа не менялся:
SQL код:
SUPERMAG.extracharge2({Карточка товараАртикул},{Место храненияКод места хранения}) 
24.01.2018 17:35
Starter
 
Тогда можно было бы и без самописных функций, стандартными супермаговскими. Самописное - когда нужно отделить/понять - наценка индивидуальная или установленная на группу. А если просто получить наценку - стандартные подойдут (правда, их тоже нужно сперва найти где-нибудь).

SQL код:
supermag.SMGetExtraChargeArt({Карточка товараАртикул},RepPrice.GETPRICETYPECASH({Место храненияКод места хранения})) 

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