AccessTr.neT

Tam Versiyon: Metin Kutusu
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2 3 4 5 6
Sayın Hocalarım
yüklemiş olduğum acces de 
katmalik borçlandırma -ödeme form açıldığında
odeme yap etiket  kutusun karşısındaki kutucuğa 1000 tl yazım ödenen tarihide tıkladığımda taksitleri ödüyor.o ödediği esnada not kutucuğunun altındaki metin kutusuna alt satırdaki yazmış olduğum işlemi bir türlü beceremedim;
sizlerden ricam ödediği esnada o satırdaki not kutucuğunun altındaki metin kutusuna şu tarihinde  1000 tl ödeme yapıldı taksit miktarı 500 tl  ödendi,altındaki satıra geçip  1000 tl ödeme yapıldı taksit miktarı 500 tl  nin 250 tl sini ödendi veya kalanpara dan ödeme yapıldıysa aynı şekilde yazması mümkün müdür. 
saygılarımla
Metin bey öncelikle şunu belirteyim sorularınıza eklediğiniz çalışmalarınızda mümkünse sadece son kullanıcıyı ilgilendiren -eğer sorunuz doğrudan onlarla ilgili değilse-;
access penceresini saklama/
şifreleme/
formun kalıcı olması/
tasarım modunda açılmanın engellenmesi/
masaüstüne kısayol ekleme gibi özellikleri devre dışı bırakarak, kodlarını pasifleştirerek ekleyebilirseniz soruyu çözmeye çalışan kişiler için çok daha ve verimli olur. bu özellikler/kodlar boşa zaman israfı oluyor, bazen dalgınlığımıza geliyor yazdığımız bütün kod Access tamamen kapandığı için boşa gidiyor ve bıkkınlık yaratabiliyor ki daha az önce başıma geldi bütün emeğim boşa gitti
@berduş'un cevabına ek olarak, "katmalik borçlandırma -ödeme form açıldığında" şeklinde belirtmişsiniz. Ancak uygulamanızda böyle bir form yok. Formları tek tek açıp incelemek zaman kaybı oluyor ve bazen farklı forma kod yazılıyor. Lütfen formların isimlerini de belirtiniz.
"FazlaDagit()" fonksiyonu değiştirildi , en alttaki kod işinize yarayabilir
Dim SqlFazla, SqlBorc, txtKimlik, SqlGuncelle, txtNot As String '<-- "txtNot" eklendi
txtNot = CStr(Date) & " tarihinde verilen " & txtVerilen & " TL""den " & dblx & " TL ödendi " ' '<-- Bu satır  eklendi
                          " OdenenTar=cdate(" & CLng(Date) & "), " & _  '<-- Bu satır değişti
                          " Not='" & txtNot & _  '<-- Bu satır  eklendi

Sub FazlaDagit(Optional Kimlik As String = "") 

Dim Fazla As New ADODB.Recordset
Dim BORC As New ADODB.Recordset
Dim SqlFazla, SqlBorc, txtKimlik, SqlGuncelle, txtNot As String '<-- "txtNot" eklendi
Dim dblBakiye, dblBorc 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
    '
              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

txtNot = CStr(Date) & " tarihinde verilen " & txtVerilen & " TL""den " & dblx & " TL ödendi "
                    SqlGuncelle = " update TBLUYEODEMETABLOSU set " & _
                          " OdemeMik=OdemeMik + ccur('" & dblx & "'), " & _
                          " OdenenTar=cdate(" & CLng(Date) & "), " & _
                          " Not='" & txtNot & _
                          "' where sira=" & BORC.Fields("sira")
                    CurrentDb.Execute SqlGuncelle
                   
                    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
(12/09/2019, 11:41)berduş yazdı: [ -> ]Metin bey öncelikle şunu belirteyim sorularınıza eklediğiniz çalışmalarınızda mümkünse sadece son kullanıcıyı ilgilendiren -eğer sorunuz doğrudan onlarla ilgili değilse-;
access penceresini saklama/
şifreleme/
formun kalıcı olması/
tasarım modunda açılmanın engellenmesi/
masaüstüne kısayol ekleme gibi özellikleri devre dışı bırakarak, kodlarını pasifleştirerek ekleyebilirseniz soruyu çözmeye çalışan kişiler için çok daha ve verimli olur.  bu özellikler/kodlar boşa zaman israfı oluyor, bazen dalgınlığımıza geliyor yazdığımız bütün kod Access tamamen kapandığı için boşa gidiyor ve bıkkınlık yaratabiliyor ki daha az önce başıma geldi bütün emeğim boşa gitti
Sayın berduş hocam 
başta geç cevap verdiğim için özür dilerim
dediklerinize inşallah bundan sonra dikkat edecem
kusuruma bakmayın
saygılarımla
@metınaycıcek bey hem sizden hem de @ozanakkaya hocamdan çok özür dilerim, yanlışlıkla mesajınızı sildim
Sayfalar: 1 2 3 4 5 6