اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

DWPS
إذهب إلى أفضل إجابة Solved by ابو عارف,

الردود الموصى بها

السلام عليكم 
مرحبا بكم ... هذه اول مشاركة لي فانا جديد في عالم الاكسيس 
ارجو المساعدة في ايجاد طريقة صحيحه لحساب الوقت الاضافي 

حيث ارفقت قاعدة بيانات اشرح فيها بالتفصيل ما اريد عمله وهو  :

* حساب الاضافي اليومي وفقاً لنوع الوقت الاضافي  :

 

 الاضافي اليومي # ويتم احتسابه بعد الساعه : 14:30   NDays_OT

 عطلة يوم الجمعة  WeekEnd_OT

 عطلة الاعياد (في حالة وجود اجازة عيد خلال الشهر) Holiday_OT

---------------------------------------------------------------------------------

1 -  عمل نموذج لادخال تواريخ العطلات الرسمية (ان وجدت) خلال الشهر 
لكي يتم حساب الوقت الاضافي الخاص بالعطلات الرسمية بناء على التواريخ التي تم ادخالها 

ومثال لذلك خلال شهر 8/2019 

اجازة عيد الاضحى تبدأ من تاريخ : 10/8/2019 حتى تاريخ : 14/8/2019

و تاريخ رأس السنه الهجرية هو : 31/8/2019

* اريد ان يتم ادخال هذه التواريخ حتى يتم حساب الوقت الاضافي بناءً عليها 

* مع حساب أيام الجمع خلال اي شهر كوقت اضافي 



2 -  كتابة نوع الوقت الاضافي  في OT_Type 
حيث أن مسمى الوقت الاضافي المستخدم هو :

NDays_OT اضافي عادي يومي 
WeekEnd_OT  ايام الجمع
Holiday_OT  ايام الاعياد خلال الشهر (إن وجد) 



شكرا لكم وجزاكم الله خيرا 

Overtime2019.rar

تم تعديل بواسطه DWPS
رابط هذا التعليق
شارك

اشكرك  د. كاف يار على استجابتك وجهدك المحمود في محاولة ايجاد حل لاستفساري 

ولكن ربما لم اوضح ما اريد عمله على القاعدة بالتفصيل ، لذلك حينما راجعت التعديل الذي تم وجدت ان التعديل لم يشمل موضوع العطلات خلال الشهر وهي على سبيل المثال ايام 10، 11،12،13،14 أغسطس2019 ، وكذلك يوم 31 أغسطس 2019 .
 

وعليه قمت بشرح ذلك بالتفصيل في نموذج ملحق بالقاعدة 

  • * حيث أن الاضافي الذي يتم حسابه مقسم لثلاثة أنواع - على ان يتم حسابه على ال Att Query    وليس النموذج
  • وأنواع الاضافي هي كالاتي

 

  1.    الاضافي اليومي NDays_OT # ويتم احتسابه فقط بعد الساعه : 14:30   
     
  2.    عطلة يوم الجمعة WeekEnd_OT # ويتم احتساب ساعات الاضافي من بداية بصمة الدخول وهي (Clock In) الى خروج الموظف (Clock Out) حيث أن يوم الجمعة يتم حساب كل عدد ساعات الحضور كاضافي .
     
  3.   عطلة الاعياد Holiday_OT # (وهي يوم : 10،11،12،13،14 أغسطس وكذلك ، يوم 31أغسطس) حيث يتم احتساب ساعات الاضافي من بداية بصمة الدخول وهي (Clock In) الى خروج الموظف (Clock Out) حيث أن ايام العطلات الرسمية يتم حساب كل عدد ساعات الحضور فيها كاضافي .

 

  • والفكرة التي اريد تنفيذها هو أن يتم عمل نموذج لادخال وتعريف ايام الاعياد الشهرية  Holiday_OT  كل شهر ، بحيث تيم فصل أيام الاعياد Holiday_OT     عن الايام العادية NDays_OT    وعن ايام الجمع WeekEnd_OT .
     

توضيح الاستفسار 1.jpg

Overtime_Query.rar

تم تعديل بواسطه DWPS
التنسيق
رابط هذا التعليق
شارك

بارك الله فيك وجزاك كل خير اخي العزيز 

اقدر اهتمامك وسعيك في حل المشكله ووقتك وجهدك 

سوف احاول القيام ببعض التعديلات الخاصة بحساب الاجازة التي يتم ادخالها في الجدول الذي قمت بانشائة ربما تنجح المحاوله ويتم حساب ايام الاجازه التي يتم ادخالها كساعات اضافي كامله (حيث لا يتم حساب ساعات الحضور في الاجازه كيوم اضافي فقط يتم طرحها من وقت الخروج فضلاً عن انه عند تغيير تاريخ الاجازه لا يتم الاستجابه للتواريخ الجديدة في الاستعلام)

شكرا جزيلاً لك ... ونفع الله بك 

رابط هذا التعليق
شارك

السلام عليكم

بعد اطلاع على ملف المدل من قبل الاستاذ / @د.كاف يار وجدت حساب يوم الجمعة يوم السابع في اسبوع ولكن في حوسبتنا يوم الجمعة سادس يوم في اسبوع رغم اختيار يوم السبت كاول يوم السبوع قي اعدادا الاقليمية ، فحبيت اشارككم التعديل على حساب يوم الجمعة ك سادس يوم من السبوع و اهمال حساب وقت خروج المؤظف قبل 2:30

Overtime2019.accdb

 

 

  • Like 2
رابط هذا التعليق
شارك

السلام عليكم 
اخي العزيز الاستاذ/ حسين @د.كاف يار بارك الله فيك 

اطلعت على التعديل المرفق ولكن حينما اقوم بتغير تاريخ الاجازة لا يتم الاستجابه في الاستعلام للتاريخ الجديد 
كذلك في حالة خروج الموظف قبل الساعه 2:30 (14:30) يتم اهمال حسابه 

رابط هذا التعليق
شارك

اخي العزيز الاستاذ @ابو عارف  شكراً جزيلاً لمشاركتك 

بالفعل انا كنت اريد ان يتم اهمال حساب خروج الموظف اذا خرج قبل الساعه 2:30 

ولكن لا يتم تصنيف الاضافي وفقاً لنوع الاضافي ... يتم تجميع الاضافي في خانه (Total out Time) والمطلوب هو فصل كل نوع من الاضافي وفقاً لنوعه 

حيث قام الاستاذ حسين  بفصل أيام الاعياد Holiday_OT     عن الايام العادية 
NDays_OT    وعن ايام الجمع WeekEnd_OT  


 

Overtime2019 (1).rar

رابط هذا التعليق
شارك

مشاركة مع اساتذتى العظماء واحبتى

ممكن الاجابة على بعض الاسئلة 

1-موعد الحضور الرسمى
2-موعد الانصراف الرسمى
3-الموعد الذى يحتسب عنده الحضور متأخرا  يعنى مثلا عندى بالعمل الحضور الرسمى من 07:00 ص  الى 08:00  ص ولكن يحتسب التأخير بدا من الساعه 08:20

4-موعد بدأ الاضافى الذى يتم الاحتساب من بدايته
5-هل هناك موعد اقصى لانهاء احتساب الاضافى عنده 

رابط هذا التعليق
شارك

اخي العزيز الاستاذ حسين  ، اخي العزيز الاستاذ ابو عارف

اقدر مجهودكم وشكراً جزيلا لكم ... نفع الله بكم  

هذا التعديل المطلوب قمت بعمله من خلال دمج اسهامتكم 

قمت برفعها ليستفيد منها الاعضاء 

شكرا ... وجزاكم الله خيرا 

Overtime_Final_2019.rar

رابط هذا التعليق
شارك

أخي @DWPS التعديل حسب تصنيفات على حدا كان سهلا للغاية 

ولكن بعد اطلاع على ملفك الاخير وجدت اكواد كثيرة ما لا داعي له باضافة بعض أخطاء كما في الصورة:

image.png.df3261f7a396646673f8a462892d687d.png

و اليك الملف المعدل

Overtime_Final_2019.rar

  • Like 1
رابط هذا التعليق
شارك

أخي العزيز الاستاذ / ابو عارف شكراً لاهتمامك بالموضوع بارك الله فيك

تم تحميل تعديلكم ولى استفسار هل نستطيع إلغاء النقاط الظاهرة في Total Out Time ((وضعت لك دائرة صفراء حولهم)) في حالة عدم وجود اضافي 

 بالاضافة لما سبق مازل يوجد اختلاف بين الاضافي اليومي NDays_OT      وبين Total Out Time      والحساب الصحيح لساعات الاضافي اليومي (بعد الساعه 14:30)  هو المحسوب في ال Total Out Time لا اعرف السبب 

1111.png

رابط هذا التعليق
شارك

2 ساعات مضت, DWPS said:

بالاضافة لما سبق مازل يوجد اختلاف بين الاضافي اليومي NDays_OT      وبين Total Out Time 

عذرا للخطاء غير مقصودة حيث عملت تعديل في حقل جديد في استعلام ثم لصقته Total Out في بدلا من NDays_OT

Overtime_Final_2019.rar

  • Like 1
رابط هذا التعليق
شارك

اخي ابو عارف ... لدى استفسار اخير بخصوص امكانية حساب الاضافي اليومي  NDays_OT   أو  Total Out Time  لمن يزيد عن ساعه واحدة (01:00) وتجاهل اقل من ساعه ... هل يمكن عمل ذلك على نفس الكود

رابط هذا التعليق
شارك

 اقصد تجاهل حساب الدقائق التي أقل من 30 دقيقة .... يعني في حالة خروج الموظف قبل الساعه   15:00     لا يحسب ال    NDays_OT   في هذا اليوم فقط  .



 

تم تعديل بواسطه DWPS
تصحيح
رابط هذا التعليق
شارك

جزاك الله خيراً اخي العزيز الاستاذ ابو عارف ... هل يمكن شرح الجزء الخاص بالكود لزيادة عدد الدقائق التي يتم تجاهلها 

لاني بالخطأ في ردي السابق كتبت :
 اقصد تجاهل حساب الدقائق التي أقل من 30 دقيقة .... يعني في حالة خروج الموظف قبل الساعه   15:00    لا يحسب ال    NDays_OT   في هذا اليوم فقط  .

ولكني اقصد : اقصد تجاهل حساب الدقائق التي أقل من 60 دقيقة .... يعني في حالة خروج الموظف قبل الساعه   15:30    لا يحسب ال    NDays_OT   في هذا اليوم فقط  .

NDays_OT: IIf(Weekday([Date])=6 Or [Date]=DLookUp("[HL_D]","H_Days","[HL_D]=#" & Format([Date],"mm\,dd\,yyyy") & "#") Or IsNull([Clock Out]) Or [Clock Out]<[Off Duty]+(1/48) Or IsNull([Clock In]),"",DateDiff("n",[off duty],[Clock Out])\60 & ":" & DateDiff("n",[off duty],[Clock Out]) Mod 60)

تم تعديل بواسطه DWPS
اضافة
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information