ระบบบันทึกเวลาเข้าออกงาน

ปรับปรุง : 2548-12-20 (แก้ link เป็น .zip)
กรณีศึกษา
ระบบบันทึกเวลาเข้าออกงาน

> ข้อควรทราบ <
โปรแกรมนี้เขียนเพราะได้รับการสอบถามจากอาจารย์โรงเรียนแห่งหนึ่ง ว่าจะบันทึกเวลาเข้า-ออกของอาจารย์อย่างไร เพราะมีเครื่องอ่าน barcode และโปรแกรม Microsoft Access สำหรับการเขียนโปรแกรมในเบื้องต้นก็ไม่ยาก ความต้องการคือ รูดบัตร เข้าและออก พร้อมบันทึกเวลาการเข้าหรือ ออกจากงานโดยใช้คอมพิวเตอร์ จากนั้นจะนำข้อมูลไปทำรายงานอื่น ๆ ต่อไป และหากต้องการนำโปรแกรมนี้ไปศึกษา สามารถ Download inout.zip ขนาด 23 KB ได้
แฟ้มที่ผมใช้มีเพียง 2 แฟ้มคือ แฟ้มอาจารย์(Teacher) และแฟ้มบันทึกเวลา(inout) ถ้าจะให้ระบบบันทึกเวลาให้ข้อมูลที่สมบูรณ์ต้องเพิ่มตาราง หรือเขตข้อมูลอีกพอสมควรทีเดียว
    ขั้นตอน
  1. สร้างตาราง teacher{tid:number, tname:text, tsurname:text}
  2. สร้างตาราง inout{keepdate:date, tid:number, in:date,out:date}
  3. สร้างฟอร์ม main
    มี text0(tid), text2(keepdate), text3(in or out), text4(show message)
    ใส่ =date() ใน Control source ของ text2
    กำหนดให้ Timer interval ของฟอร์มเป็น 1000
    กำหนด Code builder ให้กับ On Timer ว่า Text3=time()
    กำหนด Code builder ให้กับ On Exit ของ Text0 และ text2
      Private Sub Form_Timer() Text3 = Time() End Sub Private Sub Text0_Exit(Cancel As Integer) If Len(Text0) > 0 Then If DCount("tid", "inout", "tid = " & Text0 & " and keepdate = #" & Text2 & "#") = 0 Then DoCmd.RunSQL ("INSERT INTO inout ( tid,keepdate,[in]) SELECT " & Text0 & " , #" & Text2 & "# , #" & Text3 & "# ;") Text4 = DLookup("[tname]", "teacher", "tid = " & Text0) Text4 = Text4 & " " & DLookup("[tsurname]", "teacher", "tid = " & Text0) & " เข้างาน " & Text3 Else DoCmd.RunSQL ("UPDATE inout SET inout.out = #" & Text3 & "# WHERE ((inout.tid= " & [Text0] & ") AND (inout.keepdate=#" & Text2 & "#));") Text4 = DLookup("[tname]", "teacher", "tid = " & Text0) Text4 = Text4 & " " & DLookup("[tsurname]", "teacher", "tid = " & Text0) & " ออกงาน " & Text3 End If End If End Sub Private Sub Text2_Enter() Text0 = "" Text0.SetFocus End Sub

      Download : inout.zip ขนาด 23 KB

    ข้อเสนอแนะเพิ่มเติม ::
      ถ้าจะทำโปรแกรมนี้ให้สมบูรณ์ ต้องมีงานอีกมากที่ต้องทำ
      - การตรวจสอบความผิดพลาด หากแถบ barcode ส่งข้อมูลไม่ถูกต้อง
      - ปรับการแสดงผล การสร้าง autoexec และระบบ backup
      - จัดทำระบบรายงาน การทำงานที่เลือกเดือน หรือวันได้
      - บันทึกประวัติการลา และมีฟอร์มกรอกประเภทการลา แบบต่าง ๆ พร้อมรายงาน
      - การศึกษาเครื่องอ่าน barcode อื่นแทนคอมพิวเตอร์ ที่ใช้งานตามโรงงานอุตสาหกรรม
ผู้สนับสนุน + ผู้สนับสนุน
+ รับผู้สนับสนุน

แนะนำเว็บใหม่ : ผลการจัดอันดับ
รักลำปาง : thcity.com : korattown.com : topsiam.com : มหาวิทยาลัยโยนก
ศูนย์สอบ : รวมบทความ : ไอทีในชีวิตประจำวัน : ดาวน์โหลด : yourname@thaiall.com
ติดต่อ ทีมงาน ชาวลำปาง มีฝันเพื่อการศึกษา Tel.08-1992-7223