ðÒÉ×ÅÔ.
ëÁË-ÔÏ ÕÖÅ ÏÂÓÕÖÄÁÌÏÓØ, ÞÔÏ ÅÓÌÉ ÓÒÅÄÉ ÐÏÌÅÊ, ÐÏ ËÏÔÏÒÙÍ ÅÓÔØ ËÏÎÓÔÁÎÔÁ,
ÓÅÒ×ÅÒ ×ÅÄÅÔ ÓÅÂÑ ÓÔÒÁÎÎÏ. ô.Å. ÚÁÃÉËÌÉ×ÁÅÔÓÑ.
ðÏÈÏÖÁÑ ÓÉÔÕÁÃÉÑ, ÅÓÌÉ ÅÓÔØ ×ÌÏÖÅÎÎÙÊ case

select A.IDKey as IDCommodity,
       A.IDCOMMODITYTREE,
       A.IDCOMMODITYTYPE,
       CT.TEXT as GroupText,
       A.CODE1,
       A.CODE2,
       A.TEXT,
       A.TEXTADD,
       A.PROPERTYTEXT,
       A.PROPERTYTEXTADD,
       A.IDMEASURE,
       A.IDMEASUREADD,
       A.CCol1 as HasNDS,
      case when FF.CatalogPrice>0
         then FF.CatalogPrice
         else
           case when bgl_check_inscheme('SALEPRICE',?IDSCHEME)=1
            then cast(Rem.saleprice*Ref12.rateamount as numeric(15,3)) else
FF.CatalogPrice end
      end as CatalogPrice,
      case bgl_check_inscheme('COSTPRICE',?IDSCHEME)
       when 1 then Rem.costprice
       else null end as CostPrice,
      case bgl_check_inscheme('SALEPRICE',?IDSCHEME)
       when 1 then Rem.saleprice
       else null end as SalePrice,
      case bgl_check_inscheme('USEBYDATE',?IDSCHEME)
       when 1 then Rem.usebydate
       else null end as UseByDate,
      case bgl_check_inscheme('IDCOLOR',?IDSCHEME)
       when 1 then Rem.idcolor
       else null end as IDColor,
      case bgl_check_inscheme('BARCODE',?IDSCHEME)
       when 1 then Rem.barcode
       else null end as Barcode,
      case bgl_check_inscheme('PARAM1',?IDSCHEME)
       when 1 then Rem.param1
       else null end as Param1,
      case bgl_check_inscheme('PARAM2',?IDSCHEME)
       when 1 then Rem.param2
       else null end as Param2,
      sum(Rem.QUANTITY_REM) as Quantity
From
sp_Customer_SalePrice(?IDDate,?IDCurrency,?IDCustomer,?IDKey,?TreeFilterStyl
e,?IDCompany) FF
     inner join Commodity A on A.IDKey=FF.IDCommodity
     inner join CommodityTree CT on CT.IDKey=A.IDCommodityTree
     inner join REMAINDER Rem on Rem.IDDepot=?IDDepot and
Rem.IDDate<=?IDDate and A.IDKey=Rem.IDCommodity and Rem.Quantity_Rem>0
left join sp_get_rate(?IDCurrencySale,?IDCurrency,?IDDate) Ref12 on 0=0
group by 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21

äÅÌÏ ×ÓÅ ÔÕÔ

      case when FF.CatalogPrice>0
         then FF.CatalogPrice
         else
           case when bgl_check_inscheme('SALEPRICE',?IDSCHEME)=1
            then cast(Rem.saleprice*Ref12.rateamount as numeric(15,3)) else
FF.CatalogPrice end
      end as CatalogPrice,

 FF.CatalogPrice=0
bgl_check_inscheme('SALEPRICE',?IDSCHEME)=0

ïÛÉÂËÁ ÉÍÅÎÎÏ ÔÏÇÄÁ, ËÏÇÄÁ ×Ï ×ÌÏÖÅÎÎÏÍ case
bgl_check_inscheme('SALEPRICE',?IDSCHEME)=1
îÁÐÒÉÍÅÒ
      case when FF.CatalogPrice>0
         then FF.CatalogPrice
         else
           case when 0=0
            then cast(Rem.saleprice*Ref12.rateamount as numeric(15,3)) else
FF.CatalogPrice end
      end as CatalogPrice,
ÐÒÁ×ÉÌØÎÏ

      case when bgl_check_inscheme('SALEPRICE',?IDSCHEME)=1
         then
           case when FF.CatalogPrice>0
            then cast(Rem.saleprice*Ref12.rateamount as numeric(15,3)) else
FF.CatalogPrice end

         else FF.CatalogPrice
      end as CatalogPrice,
ÐÒÁ×ÉÌØÎÏ

      case when FF.CatalogPrice>0
         then FF.CatalogPrice
         else
           case when bgl_check_inscheme('SALEPRICE',?IDSCHEME)=1
            then cast(Rem.saleprice*Ref12.rateamount as numeric(15,3)) else
FF.CatalogPrice end
      end as CatalogPrice,
ÎÅ ÐÒÁ×ÉÌØÎÏ

bgl_check_inscheme ×ÏÚ×ÒÁÝÁÅÔ ÉÌÉ 0 ÉÌÉ 1
ëÔÏ ÇÌÀÞÉÔ? ñ ÉÌÉ ÓÅÒ×ÅÒ?
FB 1.5.3

-- 
Dmytro Lendel



Ответить