VegaWin programından SQL ile stok bilgilerini çekme

Aşağıdaki kod bloğu ile veritabanında bulunan stoklar çekilebilir.

SELECT
  F0101TBLSTOKLAR.STOKKODU,
  F0101TBLSTOKLAR.MALINCINSI,
  F0101TBLSTOKLAR.KOD1,
  F0101TBLSTOKLAR.ALISFIYATI,
  F0101TBLSTOKLAR.MALIYET,
  inter.BIRIMADI,
  inter.KDV,
  inter.SFIYAT,
  (SELECT SUM(COALESCE(F0101D0004TBLSTOKHAREKETLERI.GIREN, '') - COALESCE(F0101D0004TBLSTOKHAREKETLERI.CIKAN, '')) FROM F0101D0004TBLSTOKHAREKETLERI WHERE F0101TBLSTOKLAR.IND = F0101D0004TBLSTOKHAREKETLERI.STOKNO ) AS KALAN
FROM F0101TBLSTOKLAR 
join dbo.F0101TBLINTERURUN1 inter on inter.BARCODE = F0101TBLSTOKLAR.STOKKODU
AND F0101TBLSTOKLAR.IND >= 100
AND (F0101TBLSTOKLAR.STATUS <> 2
OR F0101TBLSTOKLAR.STATUS IS NULL)

Eğer stok takibi yapılıyor ise aşağıdaki kodlar yukarıdaki kod parçasının sonuna eklenerek miktarı 0 dan büyük olan stoklar çekilebilir.

AND CAST(F0101TBLSTOKLAR.KALAN AS int) > 0
AND DATALENGTH(F0101TBLSTOKLAR.KALAN) > 0
AND cast(F0101TBLSTOKLAR.KALAN as nvarchar(200)) <> 'NULL'

Aşağıdaki kod bloğu kullanılarak da veritabanında bulunan stoklar çekilebilir.


SELECT
TBLSTOKLAR.IND,
TBLSTOKLAR.STOKKODU,
TBLSTOKLAR.MALINCINSI,
TBLSTOKLAR.STOKTIPI,
--ISNULL(SUM(ISNULL(SH.GIREN,0)-ISNULL(SH.CIKAN,0)),0) AS KALAN,
REPLACE(CAST(ISNULL(SUM(ISNULL(SH.GIREN,0)-ISNULL(SH.CIKAN,0)),0) as DECIMAL(18,2)), '.', ',') AS 'KalanMiktar',
REPLACE(CAST(TBLSTOKLAR.ALISFIYATI AS DECIMAL(18,3)), '.', ',') AS 'Alış Fiyatı',
REPLACE(CAST(TBLSTOKLAR.DALISFIYATI AS DECIMAL(18,3)), '.', ',') AS 'D-Alış Fiyatı',
--TBLSTOKLAR.ALISFIYATI,
--TBLSTOKLAR.DALISFIYATI,
TBLSTOKLAR.APB,
REPLACE(CAST(TBLSTOKLAR.MALIYET AS DECIMAL(18,3)), '.', ',') AS 'Maliyet',
--TBLSTOKLAR.MALIYET,
TBLSTOKLAR.URETICI,
TBLSTOKLAR.STATUS,
TBLSTOKLAR.KOD1,
TBLSTOKLAR.KOD2,
TBLSTOKLAR.KOD3,
TBLSTOKLAR.KOD4,
TBLSTOKLAR.KOD5,
TBLSTOKLAR.KOD6,
TBLSTOKLAR.KOD7,
TBLSTOKLAR.KOD8,
TBLSTOKLAR.KOD9,
TBLSTOKLAR.KOD10,
TBLBIRIMLEREX.KDV,
TBLBIRIMLEREX.KDVDAHIL,
REPLACE(CAST(TBLBIRIMLEREX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') AS 'SATIŞ FİYATI 1',
REPLACE(CAST(TBLBIRIMLEREX.SATISFIYATI2 AS DECIMAL(18,2)), '.', ',') AS 'SATIŞ FİYATI 2',
REPLACE(CAST(TBLBIRIMLEREX.SATISFIYATI3 AS DECIMAL(18,2)), '.', ',') AS 'SATIŞ FİYATI 3',
--TBLBIRIMLEREX.SATISFIYATI1,
--TBLBIRIMLEREX.SATISFIYATI2,
--TBLBIRIMLEREX.SATISFIYATI3,
TBLBIRIMLEREX.BIRIMADI,
TBLBIRIMLEREX.ACIKLAMA,
TBLBIRIMLEREX.BARCODE,
TBLBIRIMLEREX.BARCODESTD,
TBLSTOKLAR.KARTINACILMATARIHI  ,
TBLSTOKLAR.KURUMISKONTOSU ,
TBLSTOKLAR.TICARIISKONTO,
TBLSTOKLAR.HEDEFSATISFIAYTI,
TBLSTOKLAR.IMALATCISATISFIYATI,
(SELECT ACIKLAMA+ '-' + CAST(CAST(KDV AS INT ) AS NVARCHAR(5)) FROM F0101TBLKDVGRUPLARI WHERE IND = TBLSTOKLAR.KDVGRUBU) AS KDVGRUBU

FROM F0101TBLSTOKLAR AS TBLSTOKLAR
LEFT JOIN F0101TBLBIRIMLEREX AS TBLBIRIMLEREX ON TBLBIRIMLEREX.IND=TBLSTOKLAR.BIRIMEX
LEFT JOIN F0101D0001TBLSTOKHAREKETLERI AS SH ON SH.STOKNO=TBLSTOKLAR.IND

WHERE  TBLSTOKLAR.IND>=100 AND (TBLSTOKLAR.STATUS = 1 OR TBLSTOKLAR.STATUS IS NULL ) 
GROUP BY
TBLSTOKLAR.IND,
TBLSTOKLAR.STOKKODU,
TBLSTOKLAR.MALINCINSI,
TBLSTOKLAR.STOKTIPI,
TBLSTOKLAR.KALAN,
TBLSTOKLAR.ALISFIYATI,
TBLSTOKLAR.DALISFIYATI,
TBLSTOKLAR.APB,
TBLSTOKLAR.MALIYET,
TBLSTOKLAR.URETICI,
TBLSTOKLAR.STATUS,
TBLSTOKLAR.KOD1,
TBLSTOKLAR.KOD2,
TBLSTOKLAR.KOD3,
TBLSTOKLAR.KOD4,
TBLSTOKLAR.KOD5,
TBLSTOKLAR.KOD6,
TBLSTOKLAR.KOD7,
TBLSTOKLAR.KOD8,
TBLSTOKLAR.KOD9,
TBLSTOKLAR.KOD10,
TBLSTOKLAR.KDVGRUBU,
TBLBIRIMLEREX.SATISFIYATI1,
TBLBIRIMLEREX.SATISFIYATI2,
TBLBIRIMLEREX.SATISFIYATI3,
TBLBIRIMLEREX.BIRIMADI,
TBLBIRIMLEREX.ACIKLAMA,
TBLBIRIMLEREX.BARCODE,
TBLBIRIMLEREX.BARCODESTD,
TBLBIRIMLEREX.CARPAN,
TBLBIRIMLEREX.KDV,
TBLBIRIMLEREX.KDVDAHIL,
TBLSTOKLAR.KARTINACILMATARIHI,
TBLSTOKLAR.KURUMISKONTOSU,
TBLSTOKLAR.TICARIISKONTO,
TBLSTOKLAR.HEDEFSATISFIAYTI,
TBLSTOKLAR.IMALATCISATISFIYATI

Aşağıdaki kod bloğu ile birden fazla ek birim ve barkodları ile birlikte aktarılabilir.

SELECT
TBLSTOKLAR.IND,
TBLSTOKLAR.STOKKODU,
TBLBIRIMLEREX.BARCODE,
TBLSTOKLAR.MALINCINSI,

REPLACE(CAST(ISNULL(SUM(ISNULL(SH.GIREN,0)-ISNULL(SH.CIKAN,0)),0) as DECIMAL(18,2)), '.', ',') AS 'KalanMiktar',
REPLACE(CAST(TBLSTOKLAR.ALISFIYATI AS DECIMAL(18,3)), '.', ',') AS 'Alış Fiyatı',
REPLACE(CAST(TBLSTOKLAR.DALISFIYATI AS DECIMAL(18,3)), '.', ',') AS 'D-Alış Fiyatı',

TBLSTOKLAR.APB,
REPLACE(CAST(TBLSTOKLAR.MALIYET AS DECIMAL(18,3)), '.', ',') AS 'Maliyet',

TBLSTOKLAR.URETICI,

TBLSTOKLAR.KOD3,

REPLACE(CAST(TBLBIRIMLEREX.KDV AS DECIMAL(18,2)), '.', ',') AS 'KDV',
REPLACE(CAST(TBLBIRIMLEREX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') AS 'SATIŞ FİYATI 1',
REPLACE(CAST(TBLBIRIMLEREX.SATISFIYATI2 AS DECIMAL(18,2)), '.', ',') AS 'SATIŞ FİYATI 2',
REPLACE(CAST(TBLBIRIMLEREX.SATISFIYATI3 AS DECIMAL(18,2)), '.', ',') AS 'SATIŞ FİYATI 3',

TBLBIRIMLEREX.BIRIMADI,
TBLBIRIMLEREX.ACIKLAMA,

--1.EK BİRİM/BARKOD
(SELECT TOP 1 BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND ) AS EK1BARKOD,
(SELECT TOP 1 BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND ) AS EK1BIRIM,
(SELECT TOP 1 REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND ) AS EK1CARPAN,
(SELECT TOP 1 REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND ) AS EK1SATISFIYAT,

--2.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 1 ROWS FETCH NEXT 1 ROWS ONLY) AS EK2BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 1 ROWS FETCH NEXT 1 ROWS ONLY) AS EK2BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 1 ROWS FETCH NEXT 1 ROWS ONLY) AS EK2CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 1 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK2SATISFIYAT,

--3.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 2 ROWS FETCH NEXT 1 ROWS ONLY) AS EK3BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 2 ROWS FETCH NEXT 1 ROWS ONLY) AS EK3BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 2 ROWS FETCH NEXT 1 ROWS ONLY) AS EK3CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 2 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK3SATISFIYAT,

--4.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 3 ROWS FETCH NEXT 1 ROWS ONLY) AS EK4BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 3 ROWS FETCH NEXT 1 ROWS ONLY) AS EK4BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 3 ROWS FETCH NEXT 1 ROWS ONLY) AS EK4CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 3 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK4SATISFIYAT,

--5.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 4 ROWS FETCH NEXT 1 ROWS ONLY) AS EK5BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 4 ROWS FETCH NEXT 1 ROWS ONLY) AS EK5BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 4 ROWS FETCH NEXT 1 ROWS ONLY) AS EK5CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 4 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK5SATISFIYAT,

--6.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 5 ROWS FETCH NEXT 1 ROWS ONLY) AS EK6BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 5 ROWS FETCH NEXT 1 ROWS ONLY) AS EK6BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 5 ROWS FETCH NEXT 1 ROWS ONLY) AS EK6CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 5 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK6SATISFIYAT,

--7.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 6 ROWS FETCH NEXT 1 ROWS ONLY) AS EK7BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 6 ROWS FETCH NEXT 1 ROWS ONLY) AS EK7BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 6 ROWS FETCH NEXT 1 ROWS ONLY) AS EK7CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 6 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK7SATISFIYAT,

--8.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 7 ROWS FETCH NEXT 1 ROWS ONLY) AS EK8BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 7 ROWS FETCH NEXT 1 ROWS ONLY) AS EK8BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 7 ROWS FETCH NEXT 1 ROWS ONLY) AS EK8CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 7 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK8SATISFIYAT,

--9.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 8 ROWS FETCH NEXT 1 ROWS ONLY) AS EK9BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 8 ROWS FETCH NEXT 1 ROWS ONLY) AS EK9BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 8 ROWS FETCH NEXT 1 ROWS ONLY) AS EK9CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 8 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK9SATISFIYAT,

--10.EK BİRİM/BARKOD
(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 9 ROWS FETCH NEXT 1 ROWS ONLY) AS EK10BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 9 ROWS FETCH NEXT 1 ROWS ONLY) AS EK10BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 9 ROWS FETCH NEXT 1 ROWS ONLY) AS EK10CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 9 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK10SATISFIYAT,

(SELECT BX.BARCODE FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 10 ROWS FETCH NEXT 1 ROWS ONLY) AS EK11BARKOD,
(SELECT BX.BIRIMADI FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 10 ROWS FETCH NEXT 1 ROWS ONLY) AS EK11BIRIM,
(SELECT REPLACE(CAST(BX.CARPAN AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 10 ROWS FETCH NEXT 1 ROWS ONLY) AS EK11CARPAN,
(SELECT REPLACE(CAST(BX.SATISFIYATI1 AS DECIMAL(18,2)), '.', ',') FROM F0101TBLBIRIMLEREX AS BX WHERE BX.STOKNO=TBLSTOKLAR.IND AND ISNULL(BX.ANABIRIM,0)=0 ORDER BY IND OFFSET 10 ROWS FETCH NEXT 1 ROWS ONLY ) AS EK11SATISFIYAT

FROM F0101TBLSTOKLAR AS TBLSTOKLAR 
LEFT JOIN F0101TBLBIRIMLEREX AS TBLBIRIMLEREX ON TBLBIRIMLEREX.IND=TBLSTOKLAR.BIRIMEX
LEFT JOIN F0101D0015TBLSTOKHAREKETLERI AS SH ON SH.STOKNO=TBLSTOKLAR.IND

WHERE  TBLSTOKLAR.IND>=100 AND (TBLSTOKLAR.STATUS = 1 OR TBLSTOKLAR.STATUS IS NULL ) AND TBLSTOKLAR.STOKTIPI NOT IN (3,7)

GROUP BY
TBLSTOKLAR.IND,
TBLSTOKLAR.STOKKODU,
TBLSTOKLAR.MALINCINSI,
TBLSTOKLAR.STOKTIPI,
TBLSTOKLAR.KALAN,
TBLSTOKLAR.ALISFIYATI,
TBLSTOKLAR.DALISFIYATI,
TBLSTOKLAR.APB,
TBLSTOKLAR.MALIYET,
TBLSTOKLAR.URETICI,

TBLSTOKLAR.KOD3,

TBLSTOKLAR.KDVGRUBU,
TBLBIRIMLEREX.SATISFIYATI1,
TBLBIRIMLEREX.SATISFIYATI2,
TBLBIRIMLEREX.SATISFIYATI3,
TBLBIRIMLEREX.BIRIMADI,
TBLBIRIMLEREX.ACIKLAMA,
TBLBIRIMLEREX.BARCODE,
TBLBIRIMLEREX.BARCODESTD,
TBLBIRIMLEREX.CARPAN,
TBLBIRIMLEREX.KDV

order by TBLSTOKLAR.STOKKODU