Logo GO3 SQL Bakiye Alma

Gönderen Konu: Logo GO3 SQL Bakiye Alma  (Okunma sayısı 989 defa)

0 Üye ve 4 Ziyaretçi konuyu incelemekte.

Çevrimdışı maxcder

  • Yeni Kullanıcı
  • *
  • Karma: 0
Logo GO3 SQL Bakiye Alma
« : 09.10.2015, 18:25 »
Merhaba Arkadaşlar,

SQL'de bakiye almak istiyorum, fakat sorgumu çalıştırdığımda aşağıda ki gibi bir hata alıyorum. Hatayı nasıl kapatabilirim.

Sorgum;

SelECT
[ID],
[DATE_],
[Cari Kodu],
[Müşteri Ünvanı],
[Adres1],
[Adres2],
[vergi No],
[Vergi Dairesi],
[İşlem Tarihi],
[İşlem No],
[İşlem Türü],
[Borç],
[Alacak],
[BAKIYE]=(SELECT Sum(G.[DEBIT] - G.[CREDIT]) OVER (ORDER BY G.[DATE_], G.[LOGICALREF]) FROM LV_001_01_CLEKSTRE G INNER JOIN LG_001_CLCARD CL ON CL.LOGICALREF=G.CLIENTREF GROUP BY G.[LOGICALREF])


FROM
(
SELECT
[ID]=CLEKSTRE.LOGICALREF,
[DATE_]=CLEKSTRE.DATE_,
[Cari Kodu]=CLCARD.CODE,
[Müşteri Ünvanı]=CLCARD.DEFINITION_,
[Adres1]=CLCARD.ADDR1,
[Adres2]=CLCARD.ADDR2,
[Vergi No]=CLCARD.TAXNR,
[Vergi Dairesi]=CLCARD.TAXOFFICE,
[İşlem Tarihi]=CLEKSTRE.DATE_,
[İşlem No]=CLEKSTRE.TRANNO,
[İşlem Türü]=CASE WHEN CLEKSTRE.TRCODE=31 AND CLEKSTRE.MODULENR=4 THEN 'Satınalma Faturası'
WHEN CLEKSTRE.TRCODE=34 AND CLEKSTRE.MODULENR=4 THEN 'Alınan Hizmet Faturası'
WHEN CLEKSTRE.TRCODE=36 AND CLEKSTRE.MODULENR=4 THEN 'Satınalma İade Faturası'
WHEN CLEKSTRE.TRCODE=43 AND CLEKSTRE.MODULENR=4 THEN 'Satınalma Fiyat Farkı Faturası'
WHEN CLEKSTRE.TRCODE=56 AND CLEKSTRE.MODULENR=4 THEN 'Müstahsil Makbuzu'
WHEN CLEKSTRE.TRCODE=38 AND CLEKSTRE.MODULENR=4 THEN 'Toptan Satış Faturası'
WHEN CLEKSTRE.TRCODE=37 AND CLEKSTRE.MODULENR=4 THEN 'Perakende Satış Faturası'
WHEN CLEKSTRE.TRCODE=32 AND CLEKSTRE.MODULENR=4 THEN 'Perakende Satış İade Faturası'
WHEN CLEKSTRE.TRCODE=33 AND CLEKSTRE.MODULENR=4 THEN 'Toptan Satış İade Faturası'
WHEN CLEKSTRE.TRCODE=39 AND CLEKSTRE.MODULENR=4 THEN 'Verilen Hizmet Faturası'
WHEN CLEKSTRE.TRCODE=44 AND CLEKSTRE.MODULENR=4 THEN 'Satış Fiyat Farkı Faturası'
WHEN CLEKSTRE.TRCODE=1 AND CLEKSTRE.MODULENR=5 THEN 'Nakit Tahsilat'
WHEN CLEKSTRE.TRCODE=2 AND CLEKSTRE.MODULENR=5 THEN 'Nakit Ödeme'
WHEN CLEKSTRE.TRCODE=3 AND CLEKSTRE.MODULENR=5 THEN 'Borç Dekontu'
WHEN CLEKSTRE.TRCODE=4 AND CLEKSTRE.MODULENR=5 THEN 'Alacak Dekontu'
WHEN CLEKSTRE.TRCODE=5 AND CLEKSTRE.MODULENR=5 THEN 'Virman Fişi'
WHEN CLEKSTRE.TRCODE=14 AND CLEKSTRE.MODULENR=5 THEN 'Açılış Fişi'
WHEN CLEKSTRE.TRCODE=41 AND CLEKSTRE.MODULENR=4 THEN 'Verilen Vade Farkı Faturası'
WHEN CLEKSTRE.TRCODE=42 AND CLEKSTRE.MODULENR=4 THEN 'Alınan Vade Farkı Faturası'
WHEN CLEKSTRE.TRCODE=45 AND CLEKSTRE.MODULENR=5 THEN 'Verilen Serbest Meslek Makbuzu'
WHEN CLEKSTRE.TRCODE=46 AND CLEKSTRE.MODULENR=5 THEN 'Alınan Serbest Meslek Makbuzu'
WHEN CLEKSTRE.TRCODE=70 AND CLEKSTRE.MODULENR=5 THEN 'Kredi Kart Fişi'
WHEN CLEKSTRE.TRCODE=71 AND CLEKSTRE.MODULENR=5 THEN 'Kredi Kart İade Fişi'
WHEN CLEKSTRE.TRCODE=72 AND CLEKSTRE.MODULENR=5 THEN 'Firma Kredi Kart Fişi'
WHEN CLEKSTRE.TRCODE=73 AND CLEKSTRE.MODULENR=5 THEN 'Firma Kredi Kart İade Fişi'
WHEN CLEKSTRE.TRCODE=61 AND CLEKSTRE.MODULENR=6 THEN 'Çek Girişi'
WHEN CLEKSTRE.TRCODE=62 AND CLEKSTRE.MODULENR=6 THEN 'Senet Girişi'
WHEN CLEKSTRE.TRCODE=63 AND CLEKSTRE.MODULENR=6 THEN 'Çek Çıkış'
WHEN CLEKSTRE.TRCODE=64 AND CLEKSTRE.MODULENR=6 THEN 'Senet Çıkış'
WHEN CLEKSTRE.TRCODE=3 AND CLEKSTRE.MODULENR=61 THEN 'Müşteriye İade Edilen Çek'
WHEN CLEKSTRE.TRCODE=1 AND CLEKSTRE.MODULENR=10 THEN 'Kasa Nakit Tahsilat'
WHEN CLEKSTRE.TRCODE=2 AND CLEKSTRE.MODULENR=10 THEN 'Kasa Nakit Ödeme'
WHEN CLEKSTRE.TRCODE=20 AND CLEKSTRE.MODULENR=7 THEN 'Gelen Havale'
WHEN CLEKSTRE.TRCODE=21 AND CLEKSTRE.MODULENR=7 THEN 'Gönderilen Havale'
WHEN CLEKSTRE.TRCODE=81 AND CLEKSTRE.MODULENR=3 THEN 'Alınan Sipariş'
WHEN CLEKSTRE.TRCODE=82 AND CLEKSTRE.MODULENR=3 THEN 'Verilen Sipariş' ELSE 'BOŞ' END,
[Borç]=CLEKSTRE.DEBIT,
[Alacak]=CLEKSTRE.CREDIT
--[BAKIYE]=(SELECT Sum(G.[DEBIT] - G.[CREDIT]) OVER (ORDER BY G.[DATE_], G.[LOGICALREF]) FROM LV_001_01_CLEKSTRE G LEFT JOIN LG_001_CLCARD CL ON CL.LOGICALREF=G.CLIENTREF)



FROM
LV_001_01_CLEKSTRE CLEKSTRE
LEFT OUTER JOIN lg_001_CLCARD CLCARD ON CLCARD.LOGICALREF=CLEKSTRE.CLIENTREF)TEMP GROUP BY [ID],[DATE_],[Cari Kodu],[Müşteri Ünvanı],[Adres1],[Adres2],
[Vergi No],[Vergi Dairesi],[İşlem Tarihi],[İşlem No],[İşlem Türü],[Borç],[Alacak]

--SELECT * FROM LV_001_01_CLEKSTRE

--SELECT Sum([DEBIT] - [CREDIT]) OVER (ORDER BY [DATE_], [LOGICALREF]) AS [BAKIYE] FROM LV_001_01_CLEKSTRE
--(SELECT Sum([DEBIT]) - SUM([CREDIT]) OVER (ORDER BY [DATE_], [LOGICALREF]) AS [BAKIYE] FROM LV_001_01_CLEKSTRE WHERE CLIENTREF=CLCARD.LOGICALREF)



Aldığım Hata:

Msg 8120, Level 16, State 1, Line 15
Column 'LV_001_01_CLEKSTRE.DATE_' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
« Son Düzenleme: 09.10.2015, 18:28 Gönderen: maxcder »

Çevrimdışı maxcder

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Logo GO3 SQL Bakiye Alma
« Yanıtla #1 : 10.10.2015, 13:31 »
Merhaba, kullanmıştım zaten.


Çevrimdışı Monsieur®

  • LogoDestek Yönetim
  • Logo Uzmanı
  • *****
  • Karma: 38
Ynt: Logo GO3 SQL Bakiye Alma
« Yanıtla #2 : 10.10.2015, 13:49 »
Konu yanlış yere açıldığından kilitlenmiştir.
lütfen konuyu ilgili yere açınız.