Skip to main content

AccessTr.neT


Girilen Tarih Kayıtları Arasında Önceden Belirlenen Kritere Göre Listeleme

Girilen Tarih Kayıtları Arasında Önceden Belirlenen Kritere Göre Listeleme

Çözüldü #1
Merhabalar...

Tarım İl Müdürlüğünde kullanılacak, basit bir program yapmaya çalışıyorum.

Kişilerin ödedikleri senet bilgileri var. ÜÇ SENE ÜST ÜSTE ödemedikleri taktirde cezalı duruma düşüyorlar. Örnek Formda Yunus Turan 2100-2001-2002 yıllarında düzenli ödemiş ancak sonra 2016 yılında ödemiş. Üç yılı geçtiği için cezalı duruma düşmüş. İki sene üst üste ödemediği taktirde, cezalı bir durumu yok. Ancak üç sene üst üste ödemediğinde cezalı oluyor. Bunları listelemesi mümkün olabilir mi?

İki tarih kaydı arasında çıkarma yapacak, üç yılı geçenleri listeleyecek. Sanırım böyle birşey...

Teşekkür ederim.
.rar accestr.rar (Dosya Boyutu: 71,68 KB | İndirme Sayısı: 6)
Son Düzenleme: 19/03/2021, 16:37, Düzenleyen: yturan.
Cevapla
#2
Peki kişi diyelim 4 yıl ödemedi sonra 1 tanesini ödedi sonra 3 yıl yine ödeme yapmadı bu durumda
2 cezalı ödeme 4 yıl,3 yıl Şeklinde mi olacak yoksa sadece cezalı mı yazacak
Cevapla
#3
aşağıdaki fonksiyonu modüle ekleyip sorguda kullanmayı dener misiniz?
fonsiyon
Function CezaliBul(KisiID As Long) As String
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("select [Senet Tarihi],[Ödedi] from [SENETTABLOSU] where [siranum]=" & KisiID & " ORDER BY [Senet Tarihi];")
If rst.RecordCount < 1 Then GoTo Cikis

GunSay = 0
CezaSay = 0
GunKyt = ""

  Do Until rst.EOF
        If rst(1) = True Then
            If GunSay > 2 Then
                CezaSay = CezaSay + 1
                GunKyt = GunKyt & " , " & GunSay & " yıl gecikti"
            End If
            GunSay = 0
        Else
            GunSay = GunSay + 1
        End If
    rst.MoveNext
  Loop

Cikis:
rst.Close
Set rst = Nothing

If GunSay > 2 Then
CezaSay = CezaSay + 1
GunKyt = GunKyt & " : " & GunSay & " yıl gecikti"
End If

If CezaSay > 0 Then CezaliBul = CezaSay & " defa ceza aldı;" & Mid(GunKyt, 3) Else CezaliBul = ""

End Function
sorgu kodu
SELECT ANATABLO.siranum, ANATABLO.ADI_SOYADI, ANATABLO.tckimlikno, ANATABLO.[SENET TUTARI], CezaliBul([siranum]) AS CezaDurumu
FROM ANATABLO;
Cevapla
#4
sayın @yturan lütfen olumlu yada olumsuz geri bildirimde bulunun
Cevapla
#5
Merhabalar... Özür dilerim. Aslında istediğim bu değildi. Farklı bir yol deniyorum. Ben oluşturduğum yapıyı değiştirmeye çalışıyorum. Onun üzerinde çalışıyorum. O yüzden. Tekrar özür dilerim.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task