Skip to main content

AccessTr.neT


Tablodaki verileri özel olarak raporlama

Tablodaki verileri özel olarak raporlama

Çözüldü #10
Geçici tablo oluşturmadan, rapor detayındaki NextRecord
ve Formattaki Cancel özelliğini kullanarak da yaptım aynı raporu.
Rapor : TAKİP ÇİZELGESİ - YÖNTEM2

Kod:
Option Compare Database
Dim Onceki_Personel, Onceki_Zaman, Onceki_GC

Private Sub Ayrıntı_Format(Cancel As Integer, FormatCount As Integer)
On Error GoTo Hata_Olusursa

    'Personel değiştiğinde bir önceki bilgiler sıfırlanıyor.
    If Onceki_Personel <> Me.Personel Then
        Onceki_Personel = Me.Personel
        Onceki_GC = Null
    End If

    'Giriş İşlemi
    If Me.GC = 0 Then
        'Bir önceki işlem yoksa veya çıkış ise
        If IsNull(Onceki_GC) Or Onceki_GC = 1 Then
            Me.GirisZamani = Me.Zaman
            Me.CikisZamani = Null
            'Yeni kayıt okumadan önce mevcut bilgi önceki olarak saklanıyor
            Onceki_GC = Me.GC
            Onceki_Zaman = Me.Zaman
            'Mevcut kayıt yazdırılmadan Yeni kayda gidiliyor
            Me.NextRecord = True
            Cancel = True
            Exit Sub
        'Bir önceki işlem de Giriş ise
        ElseIf Onceki_GC = 0 Then
            'Bir önceki giriş kaydı ise o kayıt direkt yazdırılıyor, yeni kayda gidilmiyor
            Me.GirisZamani = Onceki_Zaman
            Me.CikisZamani = Null
            Onceki_GC = Null
            Me.NextRecord = False
        End If
    Else
    'Çıkış İşlemi
        'Bir önceki işlem Giriş ise aynı kayda çıkış zamanı ekleniyor ve kayıt yazdırılıyor
        If Onceki_GC = 0 Then
            Me.CikisZamani = Me.Zaman
            Me.NextRecord = True
        'Bir önceki işlem yoksa veya çıkış ise yeni ve girişi boş olan çıkış kaydı yazılıyor
        ElseIf IsNull(Onceki_GC) Or Onceki_GC = 1 Then
            Me.GirisZamani = Null
            Me.CikisZamani = Me.Zaman
            Me.NextRecord = True
        End If
        'Yeni kayıt okumadan önce mevcut bilgi önceki olarak saklanıyor
        Onceki_GC = Me.GC
        Onceki_Zaman = Me.Zaman
    End If
    
Normal_Cikis:
    Exit Sub

Hata_Olusursa:
    MsgBox Err.Description
    Resume Normal_Cikis
End Sub

.rar Personel_Giris_Cikis_Seruz2.rar (Dosya Boyutu: 32,42 KB | İndirme Sayısı: 18)
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Cvp: Tablodaki verileri özel olarak raporlama - Yazar: Seruz - 22/04/2009, 16:53
Task