tarihe göre kar zarar hesabı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
cvheneburi
Üye
Mesajlar: 95
Kayıt: 07 Eki 2010 03:55

tarihe göre kar zarar hesabı

Mesaj gönderen cvheneburi »

arkadaşlar aşağıdaki sql kodu ile stok kayıtlarındaki kar zarar sonucunu alıyorum

Kod: Tümünü seç

SELECT sum(stok.alisurun) as toplam_alisurun, sum(stok.alis) as toplam_alistutar,
sum(stok.satisurun) as toplam_satisurun, sum(stok.satis) as toplam_satistutar,
sum(stok.satis)-sum(stok.alis) as kar_zarar FROM
(
select detaystok.BARCOD,
case when detaystok.STOKTURU='Stok Çıkışı' then detaystok.TUTAR3 else 0 end alis,
case when detaystok.STOKTURU='Stok Çıkışı' then detaystok.MIKTAR else 0 end alisurun,
case when detaystok.STOKTURU='Stok Girişi' then detaystok.TUTAR3 else 0 end satis,
case when detaystok.STOKTURU='Stok Girişi' then detaystok.MIKTAR else 0 end satisurun
from detaystok ) stok
yalnız şöyle bir sıkıntım var ben kullanıcının seçtiği tarih aralığına göre yapmak istiyorum veritabanımda tarih alanım stok tablosunda detay stok tablosunda tarih alanım yok ilk select e tarih alanın eklemek istediğim zaman [Err] 1054 - Unknown column 'stok.BELGETARIH' in 'field list'
bu hatayı veriyor
AfterPost
Üye
Mesajlar: 144
Kayıt: 12 Tem 2014 10:22

Re: tarihe göre kar zarar hesabı

Mesaj gönderen AfterPost »

Stok tablosunda tarih alanı olmaz , stok hareket tablosunda tarih alanı olur .. bence tabloları kurgularken hata yapmışınız..
Kullanıcı avatarı
mustafasoy
Üye
Mesajlar: 154
Kayıt: 02 Ağu 2013 05:00
Konum: istanbul
İletişim:

Re: tarihe göre kar zarar hesabı

Mesaj gönderen mustafasoy »

stok hareketlerini tutacağınız bir stok_m tablosu oluşturarak içerisinde
fisno,carikodu,tarih alanları açabilirsiniz
bu tablonun detay bilgilerinin tutulacağı stok_d tablosunda ise fisno ,stok,miktar alanları açarak fisno alanlarını eşitleyerek istediğinizi gerçekleştirebilirsiniz.
http://www.mustafasoy.com.tr
Nasıl ki Soru sorarak öğrendiyseniz , öğrendiklerinizi cevap vererek öğretiniz.
cvheneburi
Üye
Mesajlar: 95
Kayıt: 07 Eki 2010 03:55

Re: tarihe göre kar zarar hesabı

Mesaj gönderen cvheneburi »

mustafasoy hocam tablom zaten o şekilde stok tablomda fişno stokno tarih firma bilgileri var detay stok tablomda ise fisno stokno ile ilişkili urunler kayıtlı ama yukarıdaki sorguya ben stok tablosundaki tarih alanını ekle diğim zaman hata veriyor
Kullanıcı avatarı
esistem
Üye
Mesajlar: 464
Kayıt: 02 Eki 2007 11:22
İletişim:

Re: tarihe göre kar zarar hesabı

Mesaj gönderen esistem »

Query e daha önceden stok.BELGETARIH alanını ekleyerek bir sorgu yapmışsınız, sonra query de field leri eklemişsiniz, sonra query içeriğine yukarıdaki sorguyu alıp open yapmak istediğiniz zaman da, query de zaten stok.BELGETARIH field i daha önceden ekli olduğu ve yeni sorgunuzda stok.BELGETARIH field i olmadığı için bu hatayı alıyor olabilirmisiniz?
cvheneburi
Üye
Mesajlar: 95
Kayıt: 07 Eki 2010 03:55

Re: tarihe göre kar zarar hesabı

Mesaj gönderen cvheneburi »

hocam ilginize teşekkürler ben sorguyu şu şekilde yeniden yazdım

Kod: Tümünü seç

select stok.BELGETARIH,  sum(stok.ttmiktar) as tmiktar,sum(stok.tttutar) as ttutar FROM
(
select detaystok.BARCOD,detaystok.MIKTAR,detaystok.TUTAR3,stok.STOKTURU,stok.BELGETARIH,
case when (stok.STOKTURU='Stok Çıkışı') or (stok.STOKTURU='Kasiyer Satış') and stok.BELGETARIH BETWEEN '2016-01-01' and '2016-03-08' then 
detaystok.MIKTAR else 0 end ttmiktar,
case when (stok.STOKTURU='Stok Çıkışı') or (stok.STOKTURU='Kasiyer Satış') and stok.BELGETARIH BETWEEN '2016-01-01' and '2016-03-08' then 
detaystok.TUTAR3 else 0 end tttutar from detaystok,stok
GROUP BY stok.BELGETARIH
) stok 
GROUP BY stok.BELGETARIH
sorgu çalıştı fakat toplamları yanlış alıyor gruplandırdığım tüm tarihlere toplam olarak aynı sonucu çıkarıyor
Cevapla