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

طلب حل مشكلة حساب أجماليات حركة الموظفين


qathi

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

بعد عناء ومحاولات كثيرة أضع طلبي بين أيديكم  ... وأعلم من هذا المنتدى الرائع تعاون الجميع 

لذلك أرجوا المساعدة في الفورم EmployeeMovement_F بالأتي:

- حل مشكلة (#خطاء) في حقول الأجماليات 
- أحتساب حقول الأجماليات أسفل الفورم الرئيسي كالتالي: يطرح من الراتب أجمالي مدة التاخير - واجمالي مدة انصرف المبكر - وأيام الغياب -وأجمالي السحوبات - ويضاف له أجمالي الوقت الأضافي ويتم حساب ماسبق بحقل صافي الراتب
علماً أن ساعات الدوام والراتب متغيرة تختلف من موظف الى أخر، حسب ماتم أدراجة من فورم Employee_F

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

مرفق الملف:

Employee 02.rar

 

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

شكرا لك أخي @محمد ابوعبد الله

على ردك .. وجزاك الله كل خير :yes: أدخلت لي البهجة والسعادة بعد أن رائيت أنهً لم يستطع أحد بالمساعدة ..

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

01.PNG.62b7d129f44ca0bd9acd6b5f201c247f.PNG

وبالنسة لحقول الاجماليات أسفل الفورم الرئيسي فأن حساب مدة التاخير وعدد السجلات  واجمالي السحوبات تظهر بشكل صحيح

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

02.PNG.944c47fb4727cc61fb3ccd598e9ae44e.PNG

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

أكرر شكري لك أخي @محمد ابوعبد الله

أنت وضعت الكود التالي:

=Count(Nz([StatusTybe]))

بالرغم أني جربت كود الذي شاركهُ لا اتذكر من كان بالتحديد لكن هو أحد الأساتذة الأفاضل  أبو خليل أو جعفر 

=Nz(Count([MovDate]);0)

 دون فائدة...

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

الأمر غريب ..

 جزاك الله كل خير ..على الجهد الذي بذلته

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

السلام عليكم ورحمة الله وبركاته

اخي الكريم

اولاً بالنسبة لجمع الوقت فالامر يختلف عن جمع عددين

فيجب تحويل الساعات الى دقائق ثم جمعها ثم تحويلها الى ساعات ودقائق مثال لجمع الوقت لحقل ( مدة العمل )

=CLng(24*60*CDate([TimW]))

تحياتي

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

11 ساعات مضت, محمد ابوعبد الله said:

فيجب تحويل الساعات الى دقائق ثم جمعها ثم تحويلها الى ساعات ودقائق مثال لجمع الوقت لحقل ( مدة العمل )


=CLng(24*60*CDate([TimW]))

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

أرجو النظر للملف بعد التعديل 

 Employee 03.rar

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

أستاذ @jjafferr حرت كثيرا  ماذا أكتب .. لأني لم أفهم كلامك.. فبدائت بالكتابة حتى بدت لي السطور وكانها طويلة جداً .. ووقفت برهتا أراجع ماكتبت أنت

3 ساعات مضت, jjafferr said:

رجاء وضع مثال للإجابة المطلوبة هنا لوسمحت 🙂

 فتوقفت حينها .. ونسفت ماكتبت من  سطور

لكي أقول لك  لو كنت أفقه مثال الأجابة هل كنت طلبت المساعدة أصلاً؟  فهذه أول مره أقوم بأنشاء ملف خاص بشؤون الموظفين 

لا أعرف ماهي الطريقة الأصوب وكيف يتم عملها لأحتساب أجمالي وقت التاخير - والانصراف المبكر - وأيام الغياب - وأجمالي مبلغ السحوبات اليومية ويتم خصمها من الراتب الشهري ويضاف له الوقت الأضافي للدوام هل بالدقائق أم بالساعات؟  لأن الموظف تارتاً يتاخر دقائق وتارتاً بالساعات وكذلك يتغيب باليوم أو أيام .. ملاحظة: بالنسبة لأيام الأستئذان وأيام الأجازة لا يتم خصمها من الراتب

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

أضرب مثال على ذلك أنهُ قد يحدث أن الموظف أشتغل أسبوع أو نصف شهر أو شهر أو عدة شهور أوسنه وأراد الخروج من العمل ويطلب كشف بمستحقاته..  المفترض أنه يتم حساب ذلك دون أي مشكله،

أعدت ترتيب نموذج EmployeeMovement_F لأني لم أنتبه بأنهُ بتلك العشوائية .. أرجو الأطلاع على المرفق التالية حنها ستعرف أكثر عن المطلوب أستاذنا جعفر أضف وعدل ما تراح مناسب فأنت أدرى وأعلم، لك الحرية .. وأذا أردت شرح لمحتويات الملف، أو أن ما كتبته ليس بجديد أرجو أخباري بذلك .. ستراني بأذن الله متواجد لأي توضيح

Employee 04 .rar

 

 

 

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

8 ساعات مضت, محمد عبد الشفيع said:

جميع ملفاتك هنا لا تفتح ويقول وينرار انها ملفات تالفة 

هل تفك ببرنامج اخر ام ماذا

أخي محمد يحدث هذا بسبب أختلاف أصدار وينرار حمل أحدث أصدار من موقع معتز ..

وهذا الملف بدون ضغط

Employee 04 .accdb

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

أستاذ @jjafferr حتى لا أنسى النتائج التي تظهر في حقول الاجماليات غير صحيحة وكذلك أذا كانت عدد الساعات كبيرة .. ماعدى حقل أجمالي مبلغ السحوبات

وبشكل مختصر على ماسبق المطلوب:  بعد أن تقوم بأختيار كود الموظف وأختيار من حقول البحث تظهر نتائج البحث في الفورم الفرعي وحقول الأجماليات التي عليها مستطيل أحمر بالنتيجة الصحيحة .. فهل أتضح الأمر

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

سيدي الفاضل 🙂

 

رجاء مراجعة الرابط التالي ، واللي نحسب فيه الوقت (فهو مهم لك للخطوة التالية) :

 

.

يجب ان يكون عندنك معيار/مصطلح تستخدمه في حساب الدقائق/الساعات/الايام ... ، والاسهل هنا هو مصطلح الدقائق ، لأنه وبسهوله يمكن تحويله الى ساعات وايام ،

لذا ، وجب ان تكون حسابات الفوارق من الوقت ، بالدقائق.

وعليه ، اضفت لك في الاستعلام ، هذا الحقل لجميع عمليات فارق الوقت ، ولكي اجعل الموضوع سهل لك ، فقد استعملت نفس مسمياتك ، ولكن بإضافة m قبل اسم الحقل :

990.Clipboard01.jpg.dea381ef095bd9ac5a3cdc1f4ff3c715.jpg

.

والنتيجة:

990.Clipboard02.jpg.d82a3cc153a94e8403dc055ae5feed9f.jpg

.

وتم تعديل الجمع في النموذج الفرعي ، حتى يجمع هذه الارقام :

990.Clipboard03.jpg.318e66c7d43499e30b395a5a8de7f06b.jpg

.

والنتيجة :

990.Clipboard04.jpg.86b0c17ff68f7d5bbd0890bd04b5dbc1.jpg

.

الآن وقد اصبح لديك مجموع الوقت بالدقائق ، فتستطيع عمل الخطوة التالية 🙂

وان شاء الله اصبح الطريق اسهل من ذي قبل 🙂

 

جعفر

990.Employee 04 .accdb.zip

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

فتحت الملف وعدد الأيام غير موجود كيف طريقة جلب عدد أيام الغياب؟

 أستاذنا الكبير  @jjafferr  

 بعد مضي أيام من البحث والحيرة والعمل وقبل أن أتتبع ماأضفته من أبداعاتك .. وقبل أن أواصل أنهماكي في الملف.. أسمح لي 

 أسائل الله كما أدخلت فيني الآن البهجة والسرور أن يدخلهُ عليك فرحاً وسعادتاً لا ينقطع حتى يدخلك الله جنته الفردوس الأعلى ( أن شاء الله ) .. ولك دعوة في ظهر الغيب

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

شكرا على كلماتك الرقيقة والدعاء 🙂

 

7 دقائق مضت, qathi said:

فتحت الملف وعدد الأيام غير موجود كيف طريقة جلب عدد أيام الغياب؟

 

انا قلت:

38 دقائق مضت, jjafferr said:

الآن وقد اصبح لديك مجموع الوقت بالدقائق ، فتستطيع عمل الخطوة التالية

 

لهذا السبب اعطيك الرابط لتقرأه 🙂

 

جعفر

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

3 دقائق مضت, jjafferr said:

لهذا السبب اعطيك الرابط لتقرأه 🙂

 أستاذنا الكبير  @jjafferr  شكراً لك .. جزاك الله خيرا .. جاري متابعة الرابط .. أن شاء الله .. لا أواجة أي عائق

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

أستاذنا الكبير  @jjafferr  الحمدلله بدائت الأمور تتظح تباعاً لكن الآن أحتاج  كود تجميع عدد السجلات بشرط أن الحقل Status يحتوي نص معين .. اسفل الفورم الفرعي عملت التالي:

=Count([Status]="غائب")

ولم ينفع ..

هل الصيغة نفسها صحيحة

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

وعليكم السلام 🙂

 

990.Clipboard05.jpg.780ad01a0056e6e7dc3449a4146824ad.jpg

.

1. غائب<> StatusTybe  ، الظاهر اني قلبتها 🙂

5. مجموع دقائق التأخر ، من المشاركة السابقة ،

2. تحويل دقائق التأخر الى دقائق:ساعات:يوم

1.
=Sum(IIf([StatusTybe]<>3,1,0))

2.
=Minutes2DHM([SumTimeDelay],DateDiff("h",[Forms]![EmployeeMovement_F]![OutTimE],[Forms]![EmployeeMovement_F]![InTimE]))


اي ننادي الوحدة النمطية
Minutes2DHM
ونرسل لها مجموع الدقائق
SumTimeDelay
والتي نريد تحويلها الى
دقائق:ساعات:يوم

وكذلك نرسل عدد ساعات الدوام كل يوم

وللتوضيح، مناداة الوحدة النمطية، حسب الارقام الحمراء لكل حقل في الصورة
=Minutes2DHM(5,DateDiff("h",4,3))

.

والوحدة النمطية:

Public Function Minutes2DHM(minutes As Long, Working_hrs As Long) As String

    Dim dd As Long, hh As Integer, mm As Integer, Working_Mints As Long
    
    minutes = Abs(minutes)
    Working_hrs = Abs(Working_hrs)
    
    Working_Mints = Working_hrs * 60
    dd = minutes \ Working_Mints
    minutes = minutes - dd * Working_Mints
    hh = minutes \ 60
    mm = minutes Mod 60

    Minutes2DHM = Format(dd, "000") & ":" & Format(hh, "00") & ":" & Format(mm, "00")
    
End Function

 .

وطبعا ممكن تطبيق هذا على بقية الحقول 🙂

 

جعفر

990.Employee 04 .accdb.zip

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

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