AccessTr.neT

Tam Versiyon: Personel Giriş Çıkış Saati Takip Programı
Ş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
Merhaba değerli forum üyeleri;
Çalışmakta olduğum kamu kuruluşunda personel giriş çıkış saatlerini takip etmek amacıyla oluşturmaya çalıştığım programda yardımlarınıza ihtiyacım var..

Yapmak istediğimiz şey;
1-program açılış  formu anaform adlı formdur.
2-anaform üzerinde bulunan giriş-çıkış butonları ile personel sabah geldiğinde GİRİŞ butonuna basacak sifrem1 adlı form açılacak ve buradan TC NO'sunu girecek. Girilen TC personel tablosundaki personellerden  kime aitse o kişi için sistem otomatik olarak GİRİŞ TARİHİ-GİRİŞ SAATİNİ ilgili kişi için ANA adlı tabloya kayıt etsin istiyoruz.
3-anaform üzerinde bulunan giriş-çıkış butonları ile personel çıkış yapmak istediğinde; ÇIKIŞ butonuna basacak sifrem2 adlı form açılacak ve buradan TC NO'sunu girecek. Girilen TC personel tablosundaki personellerden  kime aitse o kişi için sistem otomatik olarak ÇIKIŞ TARİHİNİ-ÇIKIŞ SAATİNİ ilgili kişi için ANA adlı tabloya kayıt etsin istiyoruz.

Daha sonra raporlama işlemi yaoacağız..O kısımları ben hallederim.Lakin TC yazımı sonrası eşleştirme ve sistem tarihi ve saatini ilgili kişi için veritabanına yazdırma işini halledemedimImg-cray(

Örnek çalışma ekte olup;öneri ve yardımlarınızı bekliyor saygılar sunuyorum..
(18/02/2016, 02:18)mehami yazdı: [ -> ]Lakin TC yazımı sonrası eşleştirme ve sistem tarihi ve saatini ilgili kişi için veritabanına yazdırma işini halledemedim(

Örnek çalışma ekte olup;öneri ve yardımlarınızı bekliyor saygılar sunuyorum..

eşleştirme olayı için Dlookup kodu ile tc kimlik numarasının personel tablosunda olup olmadığını kontrol ettirmelisin


If Nz(DLookup("Kimlik", "Personel", "[tc]='" & Me.Metin0 & "'"), 0) <> 0 Then
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO ana ( tc, giris_tarih, gir_saat ) VALUES ('" & [Metin0] & "','" & Date & "', '" & Time() & "')"
DoCmd.SetWarnings True
DoCmd.Close acForm, "sifrem1"
Else
MsgBox ("Bu isimde personel yok.")
End If
End Sub

bu kod sifrem1 isimli formdaki Komut2 isimli komut butonunun tıklandığında olayına yazılacak kod.

Çıkış için benzeri kod ekleyeceksin, ancak insert into yerine update sorgusu olacak.

Ayrıca, birincil anahtar olan veya otomatik sayı olan iki alan ilişkilendirilmez.
Sayın mehami,

Sayın ozan bey’in yazdıklarına ek olarak,harici bir bilgilendirmede bulunmak adına aşağıdaki açıklamaların yapılması uygun görülmüştür.

Eğer amacınız mevcut var olan bir ana form üzerinde kullanıcıların (personelin) giriş yapıp akabinde bu ana form üzerinde mesai işlemlerini yaptıktan sonra mesai sonu çıkışında bulunması ve bundan dolayı da personelin giriş çıkış yaptığı (mesai saatleri içerisindeki mevcut giriş-çıkış durumlarını görmek ise;o zaman,bu şekilde,personelin butonlara basma durumlarına koşullandırmak yerine,site arama sayfasında üye giriş formu benzeri ifadeleri aratmak sureti ile edineceğiniz çeşitli içeriklerdeki konularda yer alan bilgileri ve örnekleri incelemekle birlikte üye girişi yapılması neticesinde giriş yapan üyenin adının ve giriş tarihi ile saatinin ilgili ana form üzerinde ister gizli ister açık şekilde bir metin denetiminde yer almasını ve çıkış (form kapatma veya uygulamadan çıkma) durumlarında da tarih ve saat baz alınarak tüm bu giriş-çıkış kayıtlarının tek bir işlemde yazdırılmasını (ana tabloya kaydedilmesini) sağlamak bana göre daha yerinde olur.

Çünkü;personeli giriş veya çıkış butonlarına yönlendirmek gereksiz gelmekte.kaldı ki,ilgili personelin olası muhtemel butonlara birkaç kez tıklaması veya giriş yerine çıkış veyahut da tam tersi butonlara tıklama durumlarını da hesaba katmak için yazılı olan kodların öncesinde eğer personel daha önceden giriş veya çıkış yapmışsa bunların ilk etapta kontrollerinin sağlanması daha verimli olur kanısındayım.

Bilginize…iyi çalışmalar,saygılar.
Değerli Ozan-Atoz hocalarım;
İlginize çok tşk ederim..Ozan hocamın vermiş olduğu kod ile sorunu çözdüm.Konu taşınabilir.

Not:Programın son halini üzerinde çalışıp raporlama kısımlarını da hallettikten sonra konuya ekleyeceğim.

Saygılar sunuyorum..
5. Satırdaki DoCmd.SetWarnings False kodu hatalı olmuş. True olarak düzeltildi.
Kod:
If Nz(DLookup("Kimlik", "Personel", "[tc]='" & Me.Metin0 & "'"), 0) <> 0 Then
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE  ana SET ( tc, giris_tarih, gir_saat ) VALUES ('" & [Metin0] & "','" & Date & "', '" & Time() & "')"
DoCmd.SetWarnings True
DoCmd.Close acForm, "sifrem1"
Else
MsgBox ("Bu isimde personel yok.")
End If
End Sub
Sayfalar: 1 2