 ALTER FUNCTION [dbo].[fn_winsat_satis_sarti_fiyati](@carikod as varchar(25),@stokkod as varchar(25),@depono as int,@tarih as nvarchar(8))     
RETURNS float     
 AS     
 BEGIN 
 DECLARE 
 @fiyat float, 
 @carifiyatno int, 
 @degisken nvarchar
 	SELECT TOP 1 @fiyat=sat_brut_fiyat
 	FROM SATIS_SARTLARI WITH (NOLOCK, INDEX = NDX_SATIS_SARTLARI_03)  
 	WHERE (sat_cari_kod=@carikod AND  sat_stok_kod=@stokkod AND  sat_basla_tarih<=@tarih AND (sat_bitis_tarih>=@tarih OR sat_bitis_tarih<='19101231')  AND sat_depo_no=@depono) 
 	ORDER BY sat_basla_tarih DESC, sat_bitis_tarih DESC 
 if @fiyat <=0 or @fiyat is null 
 	SELECT TOP 1 @fiyat=sat_brut_fiyat
 	FROM SATIS_SARTLARI WITH (NOLOCK, INDEX = NDX_SATIS_SARTLARI_03)  
 	WHERE (sat_cari_kod=@carikod AND  sat_stok_kod=@stokkod AND  sat_basla_tarih<=@tarih AND (sat_bitis_tarih>=@tarih OR sat_bitis_tarih<='19101231')  AND (sat_depo_no=0 or sat_depo_no is NULL))  
 	ORDER BY sat_basla_tarih DESC, sat_bitis_tarih DESC 
 if @fiyat <=0 or @fiyat is null 
 begin 
 	select @carifiyatno=cari_satis_fk from CARI_HESAPLAR where cari_kod =@carikod 
 	set @fiyat= cast(dbo.fn_StokSatisFiyati(@stokkod,1,@depono) as varchar(10))--';0;0;0;0;0' 
 end 
if @fiyat is null set @fiyat=0 
 return @fiyat
 END 
