T-SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
T-SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

21 Mart 2017 Salı

MS SQL Server'da veritabanı bazında açık ve aktif bağlantılar

         MS SQL Server'da çalışan ve aktif bağlantıları izlemek için bu sorgu yardımcı olacaktır. Veritabanı, kullanıcı adı, sunucu adı, ve bağlantı sayılarını göstermektedir.

SELECT TOP 100 PERCENT

     DB_NAME(dbid) AS DBName
    ,loginame AS LoginName
    ,hostname AS HostName
    ,COUNT(dbid) AS NumberOfConnections

FROM sys.sysprocesses
WHERE dbid > 0
GROUP BY dbid, loginame, hostname

16 Ocak 2017 Pazartesi

SQL Server Management Studio da koyu tema kullanmak

      SQL Server Management Studio 'da sorgu yazarken beyaz yerine siyah ekranda sorgular yazmak isterseniz. Yada benim gibi koyu tema kullanmayı seviyorsanız. Aşağıdaki link'i kullanarak ayarları içeren dosyayı indirip Tools - Import and Export Settings den içeri alabilirsiniz.





My SSMS colors


İndirmek için link
AB.DarkScheme.vssettings.zip
Kaynak

13 Aralık 2016 Salı

T-SQL Dikey Modu Seçimi

       T-SQL sorgu tasarlarken dikey seçim modu "Ctrl+Alt+Up/Down Arrow" ile çoklu sorgu düzenlemeleri yapabiliriniz.

4 Ekim 2016 Salı

Excel'de metni tarihle birlikte formülde bileştirmek

Excel üzerinde metni tarih ile birleştirme için aşağıdaki formülü kullanabilirsiniz. Bazen basit sorgular için çok işe yarıyor.

=METNEÇEVİR(B2;"gg.AA.yyyy")

Kaynak : https://support.office.com/tr-TR/article/METNEÇEVİR-işlevi-20d5ac4d-7b94-49fd-bb38-93d29371225c

28 Nisan 2016 Perşembe

Microsoft SQL Server'da Kilitlenmiş Prosesleri Sorgulamak

MS SQL Server üzerinde kilitli kalmış prosesleri sorgulamak gerekebilir. Eğer mevcut çalışan ERP yazılımına trigger ile araya girecek şekilde yazıyorsanız ilgili ekrana bağlı tabloları kilitleyebilirsiniz.

SELECT
        cmd
       ,spid
       ,kpid
       ,login_time
       ,last_batch
       ,status
       ,hostname
       ,nt_username
       ,loginame
       ,hostprocess
       ,cpu
       ,memusage
       ,physical_io

FROM sys.sysprocesses
WHERE cmd = 'KILLED/ROLLBACK'
ORDER BY cmd


Tüm prosesleri görüntülemek için WHERE kriterini kaldırabilirsiniz.

SELECT
        cmd
       ,spid
       ,kpid
       ,login_time
       ,last_batch
       ,status
       ,hostname
       ,nt_username
       ,loginame
       ,hostprocess
       ,cpu
       ,memusage
       ,physical_io

FROM sys.sysprocesses
ORDER BY cmd

21 Nisan 2016 Perşembe

Hareketsiz Stoklar Raporu

Stokları çıkış fatura ve çıkış irsalilerine göre kaç gün hareketsiz olduğunu öğrenmek için basit bir rapor sorgusu.

SELECT TOP 100 PERCENT

        sth_stok_kod AS [Stok Kodu]
       ,sto_isim AS [Stok İsmi]
       ,dbo.fn_StokCins(sto_cins) AS [Stok Cinsi]
       ,dbo.fn_YilAyTr(MAX(sth_tarih)) AS [Ay]
       ,MAX(sth_tarih) AS [Tarih]
       ,DATEDIFF(DAY,MAX(sth_tarih),GETDATE()) AS [Hareket Gün Sayısı]
       ,dbo.fn_StokHarDepoIsmi(sth_giris_depo_no,sth_cikis_depo_no,sth_tip) AS [Depo İsmi]
       ,ISNULL(dbo.fn_Stok_Siparis_Miktar(sth_stok_kod,0,'',NULL),0) AS [Sipariş Miktarı]

FROM dbo.STOK_HAREKETLERI WITH(NOLOCK)
       LEFT OUTER JOIN dbo.STOKLAR WITH(NOLOCK) ON (sto_kod=sth_stok_kod)
WHERE sth_tip=1 AND sth_cins=0 AND sth_normal_iade=0
GROUP BY sto_cins, sth_stok_kod, sto_isim, dbo.fn_StokHarDepoIsmi(sth_giris_depo_no,sth_cikis_depo_no,sth_tip)
ORDER BY sth_stok_kod, MAX(sth_tarih) DESC

25 Mart 2016 Cuma

SQL Server Management Studio – Büyük ve Küçük harf Kısayolu


Yazdığınız sorguyu seçip CTRL+SHIFT+U ile büyük harf ve CTRL+SHIFT+L ile küçük harfe dönüştürebilirsiniz.

Büyük harf : CTRL+SHIFT+U
SELECT *
FROM DBO.CARI_HESAP_HAREKETLERI
WHERE CHA_TARİHİ BETWEEN '20160101' AND '20160131'

Küçük harf : CTRL+SHIFT+L
select *
from dbo.carı_hesap_hareketlerı
where cha_tarihi between '20160101' and '20160131'

9 Şubat 2016 Salı

TSQL sorgu ile işlemciyi meşgul etmek

60 saniye boyunca işlemciyi meşgul etmek

DECLARE @T DATETIME, @F BIGINT;
SET @T = GETDATE();
WHILE DATEADD(SECOND,60,@T)>GETDATE()
SET @F=POWER(2,30);

24 Aralık 2015 Perşembe

TSQL Sorgusunda Alt Toplam

TSQL sorgularımızda toplam alma ihtiyacımız olabiliyor.
Basit bir örnek.


SELECT TOP 100 PERCENT
        COALESCE(CAST(sth_stok_kod AS VARCHAR), 'TOPLAM') AS [STOK]
       ,SUM(sth_miktar) AS [MİKTAR]
       ,SUM(sth_tutar) AS [TUTAR]
FROM dbo.STOK_HAREKETLERI
GROUP BY sth_stok_kod
WITH ROLLUP


29 Nisan 2014 Salı

Mikro'da muhasebe fişleri ve cari bağlantı evraklarının kontrol raporu

Merhabalar,
Girişi yaptığımız kayıtların muhasebe fişlerinin kontrolünü her zaman yaparız. Ancak muhasebedeki fişlerin ticari bağlantısı olmayan fişler var mı şeklinde bir kontrol yapmayız. Yapmak için çok uğraşırız.

Aşağıdaki rapor sorgusu işinizi çözecektir. Function'u oluşturup sorguyu menüye ekleyerek çalıştırabilir veya function içerisinden sorguyu alıp yanlızda çalıştırabilirsiniz.

Rapor sorgusu: SELECT TOP 100 PERCENT * FROM dbo.rp_MuhasebeCariKontrolYonetimi(?T1,?T2)

Mikro veritabanına oluşturulacak fonksiyon:
CREATE FUNCTION dbo.rp_MuhasebeCariKontrolYonetimi(@Ilktar as datetime, @Sontar as datetime)
RETURNS TABLE AS
RETURN
(
SELECT TOP 100 PERCENT

      fis_RECno AS [KAYIT NO]
     ,fis_tarih AS [TARİH]
     ,fis_sira_no AS [SIRA NO]
     ,fis_satir_no AS [SATIR NO]
     ,fis_yevmiye_no AS [YEVMİYE NO]
     ,fis_hesap_kod AS [HESAP KODU]
     ,dbo.fn_MuhHesapIsmi(fis_hesap_kod) AS [HESAP İSMİ]
     ,fis_aciklama1 AS [AÇIKLAMA]
     ,dbo.fn_FisTur(fis_tur) AS [FİŞ TİPİ]
     ,dbo.fn_BORC(fis_meblag0) AS [BORÇ]
     ,dbo.fn_ALACAK(fis_meblag0) AS [ALACAK]
     ,dbo.fn_FisAktifPasif(fis_aktif_pasif) AS [FİŞ DURUMU]
     ,dbo.fn_FisMahsupTur(fis_fmahsup_tipi) AS [MAHSUP TİPİ]
     ,RTrim(dbo.fn_ResourceSplit ('A',883,fis_ticari_tip+1,DEFAULT)) AS [ENTEGRASYON KAYNAĞI]
     ,CASE WHEN fis_ticari_tip IN (1,5) THEN dbo.fn_StokHarEvrTip(fis_ticari_evraktip)
            WHEN fis_ticari_tip = 2 THEN dbo.fn_CariHarEvrTipUzun(fis_ticari_evraktip)
            WHEN fis_ticari_tip = 3 THEN dbo.fn_GetResource('S',1769,DEFAULT)
            WHEN fis_ticari_tip = 4 THEN dbo.fn_GetResource('S',1785,DEFAULT)
            WHEN fis_ticari_tip = 6 THEN dbo.fn_GetResource('S',1786,DEFAULT)
            WHEN fis_ticari_tip = 7 THEN dbo.fn_GetResource('S',1787,DEFAULT)
            ELSE '' END AS [EVRAK TİPİ]
     ,fis_tic_evrak_seri AS [EVRAK SERİ]
     ,fis_tic_evrak_sira AS [EVRAK SIRA]
     ,CASE WHEN fis_ticari_tip IN (1,5)
            THEN (SELECT CASE WHEN COUNT(*)>0 THEN 'VAR' ELSE 'YOK' END
                     FROM dbo.STOK_HAREKETLERI WITH(NOLOCK)
                     WHERE sth_RECno=fis_ticari_RECno)
            WHEN fis_ticari_tip = 2     
            THEN (SELECT CASE WHEN COUNT(*)>0 THEN 'VAR' ELSE 'YOK' END
                     FROM dbo.CARI_HESAP_HAREKETLERI WITH(NOLOCK)
                     WHERE cha_RECno=fis_ticari_RECno)
            ELSE '' END AS [TİCARİ EVRAK BAĞLANTISI]

FROM dbo.MUHASEBE_FISLERI WITH (NOLOCK)
WHERE (fis_tarih BETWEEN @Ilktar AND @Sontar)
ORDER BY fis_tarih, fis_sira_no, fis_satir_no
)