البحث في الموقع
Showing results for tags 'تأخر'.
تم العثور علي 1 نتيجه
-
السلام عليكم ورحمة الله وبركاته هذا الموضوع مما تكثر الحاجة اليه الاصل عند تسجيل الحضور هو ادخال الوقت والتاريخ الكامل General Date ثم التعامل معه من خلال الاستعلامات والوحدات النمطية وهذا التاريخ هو المعمول به في اجهزة الحضور عامة كقارىء البصمات وغيرها ، والملاحظ ان بعض الاخوة المبرمجين يقومون بجلب بيانات الحضور من الجدول المصدر والتعامل معها اثناء الجلب وتفكيك البيانات في جدول جديد خاص . وفي الصورة ادناه نموذج من الجدول المعدل وهو الذي سوف اعتمده في شرحي ومثالي المرفق علما اني افضل العمل مباشرة على مصدر البيانات الاصل ثم نستخدم الاستعلام لضم هذا الجدول مع جدول الاسماء وعمل تجميع دقائق الـتأخر خلال شهر ونستعين بوحدة نمطية صنعناها لحساب التأخر بالايام وحساب المتبقي من الدقائق ثم ترحيلها الى الشهر التالي كرصيد سابق وحساب الايام بناء على ساعات التأخر (يكون حسب النظام المتبع ) فيختلف من مؤسسة الى اخرى فمنها من يحسب اليوم بــ 5 ساعات تأخر أو 7 ساعات ... وهكذا وفي مثالي هذا جعلت اليوم ساعتي تأخر (120 دقيقة ) ويظهر جليا في الوحدة النمطية المستخدمة Public Function trhelSn(mnthID, uid As Integer) ' uid يمثل رقم الموظف في الاستعلام On Error Resume Next Dim i, ii, a1, a2, a3, a4 As Integer ii = mnthID ' يمثل رقم الشهر في الاستعلام a2 = 0 For i = 1 To ii a2 = a4 ' ترجع بالرصيد السابق للشهر التالي a1 = Nz(DLookup("secnd", "qryscnd", "monthx=" & i & "And nID =" & uid), 0) ' ترجع بحقل الدقائق الذي تم جمعه في الاستعلام a3 = (Nz(a1) + Nz(a2)) \ 120 ' ترجع بعدد الايام بناء على عدد الدقائق المعتمد وهي هنا 120 دقيقة a4 = (Nz(a1) + Nz(a2)) Mod 120 ' ترجع بالمتبقي من الدقائق في الشهر الحالي Next End Function ' مصطلح الشهر الحالي والشهر التالي باعتبار الابتداء من اول شهر فأول شهر في الاستعلام يعتبر الحالي ثم التالي .. التالي ... وهكذا وهذه هي النتيجة النهائية : وهنا تكملة للموضوع احتساب التأخر بالدقائق وترحيل .rar