arkadaşlar ,personellerin işe giriş-çıkış kaydı yapan program
fakat giriş saati ile çıkış saati arasındaki fark kaç saat çalıştığını göstermesi gerekiyor.
örnek çıkış saati-giriş saat=aradaki fark
10:00 - 18:00 = 8:00 olması gereken
fakat yanlış bir rakam veriyor. yardımınızı bekliyorum.
calısansaat sorgusundaki saat: alanındaki *60'ı sil, AylikCalisilanSaat raporundaki saat metin kutusunun özelliklerindeki biçim'e Uzun Saat yaz.
Ayrıca tablolardaki alanlara giriş maskesi yanlış
Örneğinizin düzenlenmiş hali aşağıdadır.
öncelikle teşekkür ederim.giriş ve çıkış saatleri arasındaki farkı doğru veriyor.fakat saatleri alt alta topladığında ,toplam 24 saatten fazla ise toplam saat şaşıyor.bu durumda nasıl bir toplama yapmak gerekir.bakabilirseniz sevinirim.
örnek : 10:00
12:00
15:00
bu saatlerin toplamı 37:00 olması gerekirken başka bir rakam çıkıyor.
arkadaşlar personel giriş-çıkışlarını kaydeden program.
1-x personel raporlarda ise haftalık kaç saat çalışmış.
2-x personel aylık kaç saat çalışmış şeklinde.
fakat bunu raporlarda nasıl elde edeceğimi bilemiyorum.
saatleri alt alta topladığında 24 saati geçince rapor toplamı yanlış sonuç veriyor.
örnek : 10:00
12:00
08:00
toplam 30:00 saat sonuç vermesi gerekirken başka bir sonuç veriyor.
bu konuda personel bazında haftalık ve aylık kaç saat çalıştığını alabileceğim rapor konusunda yardımlarımlarınızı bekliyorum.
şimdiye kadar hiç bir karşılık beklemeden yardımcı olan arkadaşlara teşekkür ediyorum.access hiç bilmeyen biri olarak burda çok şey öğrendim.
Merhaba
Sorgunuzda
Kod:
saat: DateDiff("h";[giris];[cikis])
şeklinde bir alanla saat olarak
Kod:
dakika: DateDiff("n";[giris];[cikis])
şeklinde bir alanla da dakika olarak süreyi alabilirsiniz. Ama benim önerim Sledgeab'ın dediği gibi bu alanları saat olarak değil tarih + saat olarak almanızdır. Bunun için giriş ve çıkış alanlarına now() şeklinde veri gönderin. Sonra da datediff komutuyla bu alanlar arası süreyi çıkarın. Böylece mesela 01.03.2009 tarihinde işe başlayıp 02.03.2009 tarihinde, yani bir sonraki gün işi bırakan adamın çalışmasını da hesaplarsınız. Sanıldığı gibi her zaman mesai saatleri içinde çalışanlar olmayabilir.
Kolay gelsin.
Bunu nasıl yaparım derseniz:
1- Önce tablonuzdaki tarih maskesini kaldırın. Maskeleri tabloya değil formlara koymanızı öneririm. (Maskeyi kaldırmasanız da olur ama aklıma geldiği için yazdım)
2- Formunuzdaki giriş ve çıkış butonlarının kodlarındaki
Kod:
.Fields("giris") = Time
satırlarını
Kod:
.Fields("giris") = Now()
şekline dönüştürün. Sonra da CalisilanSaat isimli sorgunuza boş bir alana dediğim kodu ekleyin. Bu kadar.. Artık gerisiniz siz halledersiniz.