ÖD)
istediğiniz gibi olmuşsa sorun yok ama şöyle bir sıkıntı çıkabilir
verilen para alanı boş ise "kalandan" aldığını yazabilir
ama başta diyelim ki verilen para=10 tl ama üyenin içerdeki parası kalanpara=10.000Tl olsa bile
maalesef "şu tarihte yatırılan 10 Tl'de 500 TL ödenmiştir" yazacak
(13/09/2019, 01:31)berduş yazdı: ÖD)
istediğiniz gibi olmuşsa sorun yok ama şöyle bir sıkıntı çıkabilir
verilen para alanı boş ise "kalandan" aldığını yazabilir
ama başta diyelim ki verilen para=10 tl ama üyenin içerdeki parası kalanpara=10.000Tl olsa bile
maalesef "şu tarihte yatırılan 10 Tl'de 500 TL ödenmiştir" yazacak
Sayın Hocam
bizlere zaman ayırmanız bile bizim için büyük bir nimet
inşallah bu yaptıklarınızın karşılığını ahirette alırsınız
kalanpara olduğu zaman taksit değeri 400 tl diyelim
kalanparada 200 tl onu önce düşüyor sonra bu şekilde
not kısmına yazıyor.
13.09.2019 kalan 0 TL'den 200 lira ödendi
hangi kayıtta rastladınız o soruna?
(13/09/2019, 01:45)berduş yazdı: hangi kayıtta rastladınız o soruna?
Sayın Hocam
ben sıırdan
tbluyegenelbıl 'de kalanpara birkaç tanesine değer verdim
tbluyeodemetablosu 'ndaki kayıtları sildim
frm_uyegenel 'de tekrardan taksitlendirme yapıp öyle kontrol ettim
FazlaDagit()" fonksiyonunu aşağıdaki kodla değiştirip dener misiniz?
Sub FazlaDagit(Optional Kimlik As String = "")
Dim Fazla As New ADODB.Recordset
Dim Borc As New ADODB.Recordset
Dim SqlFazla, SqlBorc, txtKimlik, SqlGuncelle As String
Dim dblBakiye, dblBorc, dblVerilen As Double
txtKimlik = IIf(Kimlik = "", "", " AND ((TBLUYEGENELBIL.KIMID)=" & Kimlik & ")")
SqlFazla = " SELECT TBLUYEGENELBIL.KIMID, TBLUYEGENELBIL.KalanPara" & _
" FROM TBLUYEGENELBIL " & _
" WHERE (((TBLUYEGENELBIL.KalanPara)>0)" & txtKimlik & ")"
Fazla.Open SqlFazla, CurrentProject.Connection, adOpenKeyset, adLockOptimistic 'burada açtığın bağlantı
If Fazla.RecordCount <= 0 Then GoTo 10 ' goto 10 ile kapanmadan
Fazla.MoveLast
Fazla.MoveFirst
Do Until Fazla.EOF
dblBakiye = 0
dblBakiye = Fazla.Fields("KalanPara")
SqlBorc = " SELECT TBLUYEODEMETABLOSU.KIMID, TBLUYEODEMETABLOSU.sira, TBLUYEODEMETABLOSU.TaksitMik, TBLUYEODEMETABLOSU.OdemeMik " & _
" FROM TBLUYEODEMETABLOSU " & _
" WHERE (((TBLUYEODEMETABLOSU.OdemeMik) < TBLUYEODEMETABLOSU.TaksitMik) And ((TBLUYEODEMETABLOSU.KIMID) =" & Fazla.Fields("KIMID") & ")) " & _
" ORDER BY TBLUYEODEMETABLOSU.SonOdemeTar"
Borc.Open SqlBorc, CurrentProject.Connection, adOpenKeyset, adLockOptimistic 'burada açtığın bağlantı
If Borc.RecordCount <= 0 Then GoTo 20 ' goto 10 ile kapanmadan
Borc.MoveLast
Borc.MoveFirst
dblVerilen = Nz(Forms!frm_anamenu!frm_UYEGENEL.Form!FRM_UYEODEMETABLOSU.Form!txtVerilen, 0)
'
Do Until Borc.EOF
If dblBakiye <= 0 Then GoTo 20
dblBorc = 0
dblBorc = Borc.Fields("TaksitMik") - Borc.Fields("OdemeMik") 'ödenmesi gereken
dblx = IIf(dblBakiye >= dblBorc, dblBorc, dblBakiye)
dblBakiye = dblBakiye - dblx
txtKaynak = IIf(dblVerilen < dblx, " kalan " & dblBakiye + dblx, " tarihinde yatan " & dblVerilen)
txtNot = Date & txtKaynak & " TL''den " & dblx & " lira ödendi "
SqlGuncelle = " update TBLUYEODEMETABLOSU set " & _
" OdemeMik=OdemeMik + ccur('" & dblx & "'), " & _
" OdenenTar=cdate(" & CLng(Date) & ")," & _
" Not='" & Nz(txtNot, "") & _
"' where sira=" & Borc.Fields("sira")
CurrentDb.Execute SqlGuncelle
dblVerilen = dblVerilen - dblx
SqlGuncelle = " update TBLUYEGENELBIL set " & _
" KalanPara=KalanPara - ccur('" & dblx & "') " & _
" where KIMID=" & Fazla.Fields("KIMID")
CurrentDb.Execute SqlGuncelle
Borc.MoveNext
Loop
20 '
Borc.Close
Set Borc = Nothing
Fazla.MoveNext
Loop
10
Fazla.Close
Set Fazla = Nothing
End Sub