25-12-2019, Saat: 12:27
Merhaba,
Database ve tablo isimlerini parametre olarak atama imkanı var mıdır ?
Yardımınız ve desteğiniz için şimdiden teşekkürler.
iyi çalışmalar,
Database ve tablo isimlerini parametre olarak atama imkanı var mıdır ?
Yardımınız ve desteğiniz için şimdiden teşekkürler.
iyi çalışmalar,
DECLARE @Firma int=1 DECLARE @Hesapp int=1 declare @Yevmiye1 VARCHAR(250)='[DENEME_FİRMASI_2_2016].[dbo].[yevmiye] Y' declare @Yevmiye2 VARCHAR(250)='[DENEME_FİRMASI_2_2017].[dbo].[yevmiye] Y' declare @Yevmiye3 VARCHAR(250)='[DENEME_FİRMASI_2_2018].[dbo].[yevmiye] Y' declare @Yevmiye4 VARCHAR(250)='[DENEME_FİRMASI_2_2019].[dbo].[yevmiye] Y' declare @Hesapplani1 VARCHAR(250)='[DENEME_FİRMASI_2016].[dbo].[hesplan] h' declare @Hesapplani2 VARCHAR(250)='[DENEME_FİRMASI_2017].[dbo].[hesplan] h' declare @Hesapplani3 VARCHAR(250)='[DENEME_FİRMASI_2018].[dbo].[hesplan] h' declare @Hesapplani4 VARCHAR(250)='[DENEME_FİRMASI_2019].[dbo].[hesplan] h' declare @Yevmiye VARCHAR(250) = CASE WHEN @Firma = 1 THEN @Yevmiye1 WHEN @Firma = 2 THEN @Yevmiye2 WHEN @Firma = 3 THEN @Yevmiye3 WHEN @Firma = 4 THEN @Yevmiye4 ELSE @Yevmiye1 END; declare @Hesapplani VARCHAR(250) = CASE WHEN @Hesapp = 1 THEN @Hesapplani1 WHEN @Hesapp = 2 THEN @Hesapplani2 WHEN @Hesapp = 3 THEN @Hesapplani3 WHEN @Hesapp = 4 THEN @Hesapplani4 ELSE @Hesapplani1 END; SELECT @Firma AS Firma, y.Refno,y.Refno2,y.Gmkod,h.Aciklama,h.Vergidairesi as VERGI_DAIRESI, h.Vergikimlikno as VERGI_NO, y.Fistar,y.Evraktarihi,y.Evrakno, MONTH(y.Fistar) as Ay,year(y.Fistar) as Yil, y.Fistur,y.Fisno,y.Aciklama, (COALESCE(y.Doviz, 0)) as Doviz, (COALESCE(y.Dovizadi,0)) AS Dovizadi, CASE WHEN (COALESCE(y.Borclu,0)) > 0.00 then (COALESCE(y.Doviz, 0)) ELSE 0.00 END AS Doviz_Borc, CASE WHEN (COALESCE(y.Alacakli,0)) > 0.00 then (COALESCE(y.Doviz, 0)) ELSE 0.00 END AS Doviz_Alacak, CASE WHEN y.Dovizadi = NULL THEN 'TRY' WHEN y.Dovizadi = 1 THEN 'TRY' WHEN y.Dovizadi = 2 THEN 'USD' WHEN y.Dovizadi = 3 THEN 'EURO' ELSE 'TRY' END AS Doviz_Adi, (COALESCE(y.Borclu,0)) as Borclu, (COALESCE(y.Alacakli,0)) as Alacakli ,y.Islemtipi,y.Belge_Turu, --y.Belge_Turu_Aciklamasi, CASE WHEN y.Belge_Turu = 1 THEN 'Fatura' WHEN y.Belge_Turu = 2 THEN 'Çek' WHEN y.Belge_Turu = 3 THEN 'Makbuz' WHEN y.Belge_Turu = 4 THEN 'Müşteri Sipariş Belgesi' WHEN y.Belge_Turu = 5 THEN 'Satıcı Sipariş Belgesi' WHEN y.Belge_Turu = 6 THEN 'Senet' WHEN y.Belge_Turu = 7 THEN 'Navlun' WHEN y.Belge_Turu = 8 THEN y.Belge_Turu_Aciklamasi WHEN y.Belge_Turu = 9 THEN 'Belge Yok' ELSE '' END AS Belge_Turu_Aciklamasi, CASE WHEN y.Vade_Tarihi is null then y.Evraktarihi else y.Vade_Tarihi end as Vade_Tarihi ,(convert(varchar,@Firma)) +'-'+(convert(varchar,y.Fisno) +'-'+convert(varchar,MONTH(y.Fistar)) +'-'+ convert(varchar,(DATEPART(yy,(DATEADD(YEAR,0,y.Fistar))))) +'-'+convert(varchar,y.Fistur) +'-'+ convert(varchar,y.Refno)+'-'+ convert(varchar,y.Refno2)) AS REF , GETDATE() as Mtarih, '' AS Kod, '' AS Kod2,'' AS Kod3, '' AS Kod4,'' AS Kod5 FROM @Yevmiye LEFT JOIN @Hesapplani h on h.Kod=y.Gmkod COLLATE Turkish_CS_AS order by y.Fistar, y.Fistur, y.Fisno, y.Refno