LOGO SQL DETAYLI FATURA RAPORU

SELECT ROW_NUMBER() OVER( ORDER BY INTLOGICALREF ASC)     AS INTROWID,  * FROM (
SELECT
LINETYPE,
'520' TXTFIRMA,
INVOICE.LOGICALREF INTLOGICALREF,
INVOICE.TRCODE INTFATURATURU,
(CASE
WHEN INVOICE.TRCODE=1   THEN 'Satınalma Faturası'
WHEN INVOICE.TRCODE=2   THEN 'Perakende Satış İade Faturası'
WHEN INVOICE.TRCODE=3   THEN 'Toptan Satış İade Faturası'
WHEN INVOICE.TRCODE=4   THEN 'Alınan Hizmet Faturası'
WHEN INVOICE.TRCODE=5   THEN 'Alınan Proforma Faturası'
WHEN INVOICE.TRCODE=6   THEN 'Satınalma İade Faturası'
WHEN INVOICE.TRCODE=7   THEN 'Perakende Satış Faturası'
WHEN INVOICE.TRCODE=8   THEN 'Toptan Satış Faturası'
WHEN INVOICE.TRCODE=9   THEN 'Verilen Hizmet Faturası'
WHEN INVOICE.TRCODE=10  THEN 'Verilen Proforma Faturası'
WHEN INVOICE.TRCODE=12  THEN 'Alınan Vade Farkı Faturası'
WHEN INVOICE.TRCODE=13  THEN 'Satınalma Fiyat Farkı Faturası'
WHEN INVOICE.TRCODE=14  THEN 'Satış Fiyat Farkı Faturası'
WHEN INVOICE.TRCODE=26  THEN 'Müstahsil Makbuzu'
WHEN INVOICE.TRCODE=1   THEN 'Satınalma Faturası'
WHEN INVOICE.TRCODE=2   THEN 'Perakende Satış İade Faturası'
WHEN INVOICE.TRCODE=3   THEN 'Toptan Satış İade Faturası'
WHEN INVOICE.TRCODE=4   THEN 'Alınan Hizmet Faturası'
WHEN INVOICE.TRCODE=5   THEN 'Alınan Proforma Faturası'
WHEN INVOICE.TRCODE=6   THEN 'Satınalma İade Faturası'
WHEN INVOICE.TRCODE=7   THEN 'Perakende Satış Faturası'
WHEN INVOICE.TRCODE=8   THEN 'Toptan Satış Faturası'
WHEN INVOICE.TRCODE=9   THEN 'Verilen Hizmet Faturası'
WHEN INVOICE.TRCODE=10  THEN 'Verilen Proforma Faturası'
WHEN INVOICE.TRCODE=12  THEN 'Alınan Vade Farkı Faturası'
WHEN INVOICE.TRCODE=13  THEN 'Satınalma Fiyat Farkı Faturası'
WHEN INVOICE.TRCODE=14  THEN 'Satış Fiyat Farkı Faturası'
WHEN INVOICE.TRCODE=26  THEN 'Müstahsil Makbuzu' 
END
) as TXTFATURATIPI,
INVOICE.FICHENO TXTFATURANO,
INVOICE.DATE_  as TRHFATURATARIHI,
INVOICE.DOCODE AS TXTBELGENO,
INVOICE.SPECODE AS TXTOZELKOD,
CLCARD.CODE as LNGMUSTERIKOD,
CLCARD.DEFINITION_ as LNGMUSTERIAD, 
(SELECT P.CODE FROM  LG_520_PAYPLANS P WHERE P.LOGICALREF=INVOICE.PAYDEFREF) TXTODEMELER,
INVOICE.TRADINGGRP TXTTICARIISLEMGRUBU,
(SELECT S.CODE+'-'+S.DEFINITION_ FROM LG_SLSMAN S WHERE S.FIRMNR=520 AND S.LOGICALREF= INVOICE.SALESMANREF) TXTSATISELEMANI,
INVOICE.CYPHCODE TXTYETKIKODU,
(SELECT CAST(D.NR AS VARCHAR)+'-'+ D.NAME FROM L_CAPIDIV D WHERE D.FIRMNR=520 AND D.NR=INVOICE.BRANCH) TXTISYERI,
(SELECT CAST(D.NR AS VARCHAR)+'-'+ D.NAME FROM L_CAPIDEPT D WHERE D.FIRMNR=520 AND D.NR=INVOICE.DEPARTMENT) TXTBOLUM,
(SELECT CAST(D.NR AS VARCHAR)+'-'+ D.NAME FROM L_CAPIFACTORY D WHERE D.FIRMNR=520 AND D.NR=INVOICE.FACTORYNR) TXTFABRIKA,
(SELECT CAST(D.NR AS VARCHAR)+'-'+ D.NAME FROM L_CAPIWHOUSE D WHERE D.FIRMNR=520 AND D.NR=INVOICE.SOURCEINDEX) TXTAMBAR,
(SELECT D.CODE+'-'+ D.NAME FROM LG_520_PROJECT D WHERE D.LOGICALREF=INVOICE.PROJECTREF) TXTPROJEKODU, 
RTRIM(INVOICE.GENEXP1+' '+INVOICE.GENEXP2+' '+INVOICE.GENEXP3+' '+INVOICE.GENEXP4) AS TXTACIKLAMAFIS,
INVOICE.TOTALEXPENSES DBLYPBTOPLAMMASRAF,
INVOICE.TOTALDISCOUNTS DBLYPBTOPLAMINDIRIM,
INVOICE.NETTOTAL-INVOICE.TOTALVAT DBLYPBTOPLAM,
INVOICE.TOTALEXADDTAX DBLYPBTOPLAMEKVERGI,
INVOICE.TOTALVAT DBLYPBTOPLAMKDV,
INVOICE.NETTOTAL DBLYPBTOPLAMNET,
 
ROUND(INVOICE.TOTALEXPENSES/NULLIF(INVOICE.TRRATE,0),2)  DBLIDTOPLAMMASRAF,
ROUND(INVOICE.TOTALDISCOUNTS/NULLIF(INVOICE.TRRATE,0),2)  DBLIDTOPLAMINDIRIM,
ROUND((INVOICE.NETTOTAL-INVOICE.TOTALVAT)/NULLIF(INVOICE.TRRATE,0),2)  DBLIDTOPLAM,
ROUND(INVOICE.TOTALEXADDTAX/NULLIF(INVOICE.TRRATE,0),2)  DBLIDTOPLAMEKVERGI,
ROUND(INVOICE.TOTALVAT/NULLIF(INVOICE.TRRATE,0),2)  DBLIDTOPLAMKDV,
ROUND(INVOICE.NETTOTAL/NULLIF(INVOICE.TRRATE,0),2) DBLIDTOPLAMNET,
 
CASE CLCARD.CCURRENCY WHEN 0 THEN 'TL' WHEN 1 THEN 'USD' WHEN 17 THEN 'GBP' WHEN 20 THEN 'EUR' ELSE '' END TXTCARIDOVIZ,
CASE INVOICE.TRCURR WHEN 0 THEN 'TL' WHEN 1 THEN 'USD' WHEN 17 THEN 'GBP' WHEN 20 THEN 'EUR' ELSE '' END TXTISLEMDOVIZ,
 
CASE LINETYPE WHEN 0 THEN 'MALZEME' WHEN 1 THEN 'PROMOSYON' WHEN 2 THEN 'INDIRIM' WHEN 3 THEN 'MASRAF' WHEN 4 THEN 'HIZMET' ELSE '' END TXTTUR,
CASE WHEN STLINE.LINETYPE=4 THEN SRV.CODE ELSE INV.CODE END AS TXTKOD,
CASE WHEN STLINE.LINETYPE=4 THEN SRV.DEFINITION_ ELSE INV.NAME END TXTACIKLAMA,
COALESCE(
CASE STLINE.UINFO1
WHEN 0 THEN STLINE.AMOUNT
ELSE STLINE.AMOUNT*STLINE.UINFO2/STLINE.UINFO1
END, STLINE.AMOUNT/1000) DBLMIKTAR,
CASE WHEN LINETYPE=4 THEN UNTS.CODE ELSE UNT.CODE END TXTBIRIM, 
ROUND(STLINE.PRICE,2) DBLBIRIMFIYAT, 
CASE STLINE.PRCURR WHEN 0 THEN 'TL' WHEN 1 THEN 'USD' WHEN 17 THEN 'GBP' WHEN 20 THEN 'EUR' ELSE '' END TXTDOVIZTURU,
ROUND(STLINE.DISCPER,2) DBLYUZDE,
ROUND(STLINE.VAT,2) DBLKDV,
ROUND(STLINE.TOTAL,2) DBLTUTAR, 
ROUND(STLINE.VATAMNT,2) DBLKDVTUTARI,
ROUND(STLINE.VATMATRAH,2) DBLNETTUTAR   
FROM LG_520_01_INVOICE AS INVOICE WITH (NOLOCK)
LEFT JOIN LG_520_01_STLINE AS STLINE ON INVOICE.LOGICALREF = STLINE.INVOICEREF
LEFT JOIN LG_520_ITEMS INV ON INV.LOGICALREF=STLINE.STOCKREF
LEFT JOIN LG_520_SRVCARD SRV ON SRV.LOGICALREF=STLINE.STOCKREF
LEFT JOIN LG_520_CLCARD CLCARD ON CLCARD.LOGICALREF=INVOICE.CLIENTREF
LEFT JOIN LG_520_EMUHACC EMUH ON EMUH.LOGICALREF=STLINE.ACCOUNTREF
LEFT JOIN LG_520_UNITSETL UNT ON UNT.UNITSETREF=INV.UNITSETREF AND LINENR=1 
LEFT JOIN LG_520_UNITSETL UNTS ON UNTS.UNITSETREF=SRV.UNITSETREF AND UNTS.LINENR=1 WHERE(INVOICE.TRCODE IN(1/*,4,5,6,12,13,26,2,3,7,8,9,10,14*/))) AS T

LOGO ÜRÜN BARKOD VE SATIŞ FİYATI LİSTESİ SQL

select
ISNULL(B.BARCODE,'') ProductCode,
ISNULL(I.NAME,'') ProductName,
ISNULL((SELECT TOP 1 ROUND(PRICE,2) FROM LG_320_PRCLIST P WITH(NOLOCK) WHERE CARDREF = I.LOGICALREF AND ACTIVE = 0 AND PTYPE = 2 AND CLIENTCODE = '' order by P.LOGICALREF DESC ),0) Price
FROM dbo.LG_320_ITEMS I WITH(NOLOCK) LEFT JOIN LG_320_UNITBARCODE B ON B.ITEMREF=I.LOGICALREF WHERE I.CODE<>'ÿ'AND ISNULL(B.BARCODE,'') <> ''

LOGO SQL MALZEME EKSTRE


/*TEST = 
select * from  dbo.SELECT_MALZEMEEXTRE_201('01/01/2017',getdate(),'01-YK-0001')*/
/****** Object:  UserDefinedFunction [dbo].[SELECT_MALZEMEEXTRE_201]    Script Date: 18.8.2020 09:09:02 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO


CREATE FUNCTION [dbo].[SELECT_MALZEMEEXTRE_201]
(
    @BAT DATETIME,
	@BIT DATETIME,
	@MALZEMEKODU VARCHAR(50)
)
RETURNS TABLE
AS
RETURN 
SELECT
X.AMBAR,
x.[Stfıche_Referans] ,
x.[Stlıne_Referans] ,
x.[Fiş No],
x.[Fiş Türü],
x.[Belge No],
x.[Stfıche Tarıh],
x.[Stlıne Tarıh],
x.[Ftıme],
x.[Stok Kodu],
x.[Stok Adı],
x.[Bırım],
x.[Giriş Çıkış],
x.[Miktar],
  X.STFICHELNNO,
x.Kalan,
x.[Tutar]
FROM (
SELECT
(SELECT NAME FROM L_CAPIWHOUSE CAPIWHOUSE WHERE CAPIWHOUSE.NR = STLINE.SOURCEINDEX AND CAPIWHOUSE.FIRMNR = 201 ) AMBAR,

STFICHE.LOGICALREF [STFICHE_REFERANS],
STLINE.LOGICALREF [STLINE_REFERANS],
[Fiş No]=STFICHE.FICHENO,

[Fiş Türü]=CASE STFICHE.TRCODE 

WHEN  1 then 'Satınalma İrsaliyesi'

WHEN  2 then 'Perakende Satış İade İrsaliyesi'

WHEN  3 then 'Toptan Satış İade İrsaliyesi'

WHEN  4 then 'Konsinye Çıkış İade İrsaliyesi'

WHEN  5 then 'Konsinye Giriş İrsaliyesi'

WHEN  6 then 'Satınalma İade İrsaliyesi'

WHEN  7 then 'Perakende Satış İrsaliyesi'

WHEN  8 then 'Toptan Satış İrsaliyesi'

WHEN  9 then 'Konsinye Çıkış İrsaliyesi'

WHEN  10 then 'Konsinye Giriş İade İrsaliyesi'

WHEN  11 then 'Fire Fişi'

WHEN  12 then 'Sarf Fişi'

WHEN  13 then 'Üretimden Giriş Fişi'

WHEN  14 then 'Devir Fişi'

WHEN  25 then 'Ambar Fişi'

WHEN  26 then 'Muhtahsil İrsaliyesi'

WHEN  50 then 'Sayım Fazlası Fişi'

WHEN  51 then 'Sayım Eksiği Fişi' ELSE '' END,

[Belge No]=STFICHE.DOCODE,
 
[Stfıche Tarıh]=STFICHE.DATE_,

[Stlıne Tarıh]=STLINE.DATE_,

[Ftıme]=STLINE.FTIME,

[Stok Kodu]=ITEMS.CODE,

[Stok Adı]=ITEMS.NAME,

[Bırım]=BIRIM.CODE,

[Giriş Çıkış]= CASE WHEN STLINE.IOCODE IN(1,2) THEN 'Giriş' when STLINE.IOCODE IN(3,4) THEN 'Çıkış' else '' end,

[Miktar]=CAST((CASE WHEN STLINE.IOCODE IN(1,2) THEN 1 ELSE -1 end) * STLINE.AMOUNT*(CASE WHEN ISNULL(UINFO2,0)=0 THEN 1 ELSE UINFO2 END)/(CASE WHEN ISNULL(UINFO1,0)=0 THEN 1 ELSE UINFO1 END)  AS float),
STLINE.STFICHELNNO,

0.00 KALAN,

[Tutar]=(CASE WHEN STLINE.IOCODE IN(1,2) THEN 1 ELSE -1 end) * STLINE.VATMATRAH

FROM LG_201_01_STFICHE STFICHE WITH (NOLOCK)

LEFT OUTER JOIN LG_201_01_STLINE STLINE WITH (NOLOCK) ON STFICHE.LOGICALREF=STLINE.STFICHEREF

LEFT OUTER JOIN LG_201_ITEMS ITEMS      WITH (NOLOCK) ON STLINE.STOCKREF =ITEMS.LOGICALREF

LEFT OUTER JOIN LG_201_UNITSETL BIRIM   WITH (NOLOCK) ON BIRIM.UNITSETREF= ITEMS.UNITSETREF AND BIRIM.MAINUNIT=1
WHERE
STFICHE.CANCELLED=0 AND STLINE.CANCELLED=0
AND STLINE.LINETYPE=0
AND STLINE.IOCODE IN (1,2,3,4)
AND ITEMS.CODE=@MALZEMEKODU
AND STLINE.LPRODSTAT=0
AND (STLINE.DATE_>=@BAT AND STLINE.DATE_<=@BIT )
)
 AS  X 
GO



LOGO SQL MASRAF MERKEZİ MUHASEBE FİŞ TOPLAM KONTROL

SELECT
        E.TRCODE "FIŞ TÜRÜ",
        E.FICHENO "FIŞ NO",
        L.DATE_ "FIŞ TARIHI",
        L.ACCOUNTCODE "MUH_KODU",
        CASE
                WHEN L.SIGN =0 THEN "BORÇ" ELSE "ALACAK"
        END        AS [BORÇ/ALACAK TÜRÜ] ,
        L.DEBIT "HAREKET_BORÇ",
        MASRAF_MERKEZI_TOPLAM.BORÇ "MASRAF MERK_BORÇ",
        L.CREDIT "HAREKET_ALACAK",
        MASRAF_MERKEZI_TOPLAM.ALACAK "MASRAF MERK_ALACAK"
FROM
        LG_101_01_EMFICHE E INNER JOIN
                      LG_101_01_EMFLINE  L ON E.LOGICALREF = L.ACCFICHEREF
LEFT OUTER JOIN
(
SELECT
        M.PREVLINEREF,
        M.TRCODE,
        M.TSIGN,
        SUM((2 - M.TSIGN - 1) * M.TRNET) AS BORÇ,
        SUM((M.TSIGN - 1 + 1) * M.TRNET) AS ALACAK
FROM
        LG_101_01_ACCDISTDETLN  M INNER JOIN
                         LG_101_01_EMFLINE  L ON M.PREVLINEREF = L.LOGICALREF
GROUP BY
        M.PREVLINEREF, M.TRCODE, M.TSIGN
)MASRAF_MERKEZI_TOPLAM ON L.LOGICALREF = MASRAF_MERKEZI_TOPLAM.PREVLINEREF

WHERE
        ((MASRAF_MERKEZI_TOPLAM.BORÇ <> L.DEBIT) OR (MASRAF_MERKEZI_TOPLAM.ALACAK <> L.CREDIT))

LOGO LOD- SATIŞ FATURA SATIRINA İKİNCİ MİKTAR GETİRME

Events:

Modules

Table:

Events:

Sub FormShow()
Call GetData()
End Sub

Sub BeforeSave(proceed as Integer)
Call SetLineArray()
End Sub

Sub AfterSave()
AppTables[14].GetIntFieldR(RecHandle,”LOGICALREF”,gSETLOGREF)
Call SetData(gSETLOGREF)
End Sub

Modules:

Dim LineDataArr1(200) as string

Sub GetData()
AppTables[14].GetIntFieldR(RecHandle,”LOGICALREF”,iMasrefRef)

 MaxGridLine=MGridLines("InvoiceGrid")
 for i=0 to MaxGridLine-1
   GetGridRowHandle("InvoiceGrid",i,recH)
   AppTables[9].GetIntFieldR(recH,"LOGICALREF",intLineRef)

   CustTables[62].Search(2,2,intLineRef)
   if not (DBErr <>0) then

       CustTables[62].GetFltField("MIKTAR2",fMIKTAR2)

       SetCellFloat("InvoiceGrid",i,10072,fMIKTAR2)          

   end if
 next i

End Sub

Sub SetData(intLogref as Long)
i=0
CreateQuery(Qry)
tblName = Application.GetTableName(9, Application.CompanyId, Application.FiscPerdId)
Qry.AddTable(“A”, tblName)
Qry.AddSelField(“A”, “LOGICALREF,”)
Qry.AddSelField(“A”, “INVOICELNNO”)
Str(intLogref, LogRefTxt)
MyWhereCond = “INVOICEREF = ” + LogRefTxt

Qry.AddWhereCond(MyWhereCond,1)
Qry.Execute()
if Qry.Ready = 1 then
   res = Qry.First()
   Do while res = 1
      Qry.GetFieldValue(1, 1, MyLineRef)
      Qry.GetFieldValue(2, 1, MyLineNo)
      if MyLineRef<>0 then
            CustTables[62].Search(2,2,MyLineRef)
            if (DBErr <>0) then
                CustTables[62].NewRecord()
                CustTables[62].SetIntField("PARLOGREF",MyLineRef)
                CustTables[62].SetIntField("INVFICHEREF",intLogref)
                CustTables[62].SetFltField("MIKTAR2",LineDataArr1[MyLineNo - 1])                
            else
                CustTables[62].SetFltField("MIKTAR2",LineDataArr1[MyLineNo - 1])             
            end if
            CustTables[62].UpdateRecord()
      end if
      res =  Qry.Next()
   Loop
end if

End Sub

Sub SetLineArray()
MaxGridLine=MGridLines(“InvoiceGrid”)
i=0
for i=0 to MaxGridLine-1
GetCellFloat(“InvoiceGrid”,i,10072,LineDataArr1[i])
next i
End Sub