Uygulamadaki F_IsletmeDefteri Formu Açıldığında Bilgiler doğru bir şekilde geliyor ve hesaplamada bir sorun yok. Fakat açılan kutuda yada tarihte değişiklik yaptığımda 2 şekilde sorun oluşuyor.
1- Tarih değiştirmeden sadece hesap turunu değiştirdiğimde hesap bakiye bilgisi Seçtiğim hesap turune göre doğru gelmesine ve alt formların Requery kodları çalışmasına rağmen GiderToplamı ve GelirToplamı kutularında ki değerler tazelenmiyor formun ilk açıldığındaki şekliyle kalıyor.
Haliyle gelir ve gider tutarları metin kutularındaki değerler değişmediğinden hesaplama yanlış oluyor.
2- Aynı sorun Tarih bölümünde de değişiklik yapıldığında baş gösteriyor. Yazdığım kodlar aşağıda.
Option Compare Database
Option Explicit
Private Sub Form_Current()
Me.TF_HesapHareketleriGiderAF.Requery
Me.TF_HesapHareketleriGelirAF.Requery
Me.HesapTuru_CBO.Requery
Me.HesapBakiyesi_TXT.Requery
Me.GelirToplami_TXT.Requery
Me.GiderToplami_TXT.Requery
Me.HesapBakiyesi_TXT = Dsum ("GirenTutar", "T_HesapHareketleri", "[HesapTuru]='" & Me.HesapTuru_CBO & _
"' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")") - Dsum ("CikanTutar", "T_HesapHareketleri", "[HesapTuru]='" & _
Me.HesapTuru_CBO & "' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")")
Me.GiderToplami_TXT = Dsum ("[CikanTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]))
Me.GelirToplami_TXT = Dsum ("[GirenTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]))
'Me.GiderToplami_TXT = Dsum ("[CikanTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]) & " And [HesapTuru]='" & [HesapTuru_CBO] & "'")
'Me.GelirToplami_TXT = Dsum ("[GirenTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]) & " And [HesapTuru]='" & [HesapTuru_CBO] & "'")
End Sub
Private Sub Form_Load()
Me.HesapTuru_CBO = "Kasa TL"
Me.TF_HesapHareketleriGiderAF.Requery
Me.TF_HesapHareketleriGelirAF.Requery
Me.HesapBakiyesi_TXT = Dsum ("GirenTutar", "T_HesapHareketleri", "[HesapTuru]='" & Me.HesapTuru_CBO & _
"' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")") - Dsum ("CikanTutar", "T_HesapHareketleri", "[HesapTuru]='" & _
Me.HesapTuru_CBO & "' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")")
Me.GiderToplami_TXT = Dsum ("[CikanTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]))
Me.GelirToplami_TXT = Dsum ("[GirenTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]))
'Me.GiderToplami_TXT = Dsum ("[CikanTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]) & " And [HesapTuru]='" & [HesapTuru_CBO] & "'")
'Me.GelirToplami_TXT = Dsum ("[GirenTutar]", "T_HesapHareketleri", "[Tarih]= " & CLng([Tarih_TXT]) & " And [HesapTuru]='" & [HesapTuru_CBO] & "'")
End Sub
Private Sub GelirFisi_BTN_Click()
DoCmd.OpenForm "F_GelirFisi"
End Sub
Private Sub GiderFisi_BTN_Click()
DoCmd.OpenForm "F_GiderFisi"
End Sub
Private Sub HesapTuru_CBO_AfterUpdate()
Me.TF_HesapHareketleriGiderAF.Requery
Me.TF_HesapHareketleriGelirAF.Requery
Me.HesapBakiyesi_TXT.Requery
Me.GelirToplami_TXT.Requery
Me.GiderToplami_TXT.Requery
Me.HesapBakiyesi_TXT = Dsum ("GirenTutar", "T_HesapHareketleri", "[HesapTuru]='" & Me.HesapTuru_CBO & _
"' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")") - Dsum ("CikanTutar", "T_HesapHareketleri", "[HesapTuru]='" & _
Me.HesapTuru_CBO & "' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")")
End Sub
Private Sub HesapTuru_CBO_Exit(Cancel As Integer)
Me.TF_HesapHareketleriGiderAF.Requery
Me.TF_HesapHareketleriGelirAF.Requery
Me.HesapBakiyesi_TXT.Requery
Me.GelirToplami_TXT.Requery
Me.GiderToplami_TXT.Requery
Me.HesapBakiyesi_TXT = Dsum ("GirenTutar", "T_HesapHareketleri", "[HesapTuru]='" & Me.HesapTuru_CBO & _
"' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")") - Dsum ("CikanTutar", "T_HesapHareketleri", "[HesapTuru]='" & _
Me.HesapTuru_CBO & "' and (Tarih Between " & CLng(DateSerial(Year(Me.Tarih_TXT), 1, 1)) & _
" And " & CLng(Tarih_TXT) - 1 & ")")
End Sub
Private Sub Kapat_BTN_Click()
DoCmd.Close acForm, "F_IsletmeDefteri"
End Sub
Private Sub Tarih_TXT_AfterUpdate()
Me.HesapTuru_CBO.Requery
Me.HesapBakiyesi_TXT.Requery
Me.GelirToplami_TXT.Requery
Me.GiderToplami_TXT.Requery
Me.TF_HesapHareketleriGiderAF.Requery
Me.TF_HesapHareketleriGelirAF.Requery
End Sub
Private Sub Tarih_TXT_Change()
Me.HesapTuru_CBO.Requery
Me.HesapBakiyesi_TXT.Requery
Me.GelirToplami_TXT.Requery
Me.GiderToplami_TXT.Requery
End Sub
A-Form yuklendiğinde hesap doğru
B- Hesap Türünü değiştirdiğimde Euro hesap Bakiyesi Geliyor Fakat Gider ve gelir toplamları bir çnceki ekrandaki nakit kasa tutarları olarak değişmediğinden Hesaplama yanlış oluyor. Resme göre euro olarak bir gider girişi ve çıkışı olmadığından Kalan ve devir bakiye tutarlarının 125 olarak gözükmesi gerekiyor.
C- Tarihi değiştirdiğimde de bu sefer Hesap Bakiyesi bölümü de B şıkkında açıkladığım sorunların aynılarına ekleniyor.