الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]كيف أسقط أيام الراحات من حساب الأجازات

بدأه Mohamed Nada في 25 يناير 2009 · 13 رد · 3,516 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

إخوانى الكرام

فى قاعدة البيانات هناك جدول أجازات الموظفين وله نموذج .. ويتم فى النموذج إدخال بيانات الأجازات التالية:

رقم الموظف يتم إدخاله تلقائياً لدى الوقوف على سجل الموظف والضغط على زر أمر أجازة جديدة.

تاريخ البدء وهو تاريخ بداية الأجازة بتنسيق (يوم/شهر/سنة)

تاريخ الانتهاء تاريخ نهاية الأجازة بتنسيق (يوم/شهر/سنة)

نوع الأجازة ويختاره المستخدم من كومبو بوكس (عارضة / سنوية .......)

المهم أننى أرغب فى أن يتم احتساب أيام الأجازة الفعلية بين "تاريخ البدء" و "تاريخ الإنتهاء".

بمعنى أن الأجازة تبدأ مثلاً من تاريخ 22/01/2009 إلى 29/01/2009 فلو تم طرح التاريخين سينتج ( 8 ) أيام.

فى حين أن هذه الفترة تحتوى على يوم جمعة ويوم سبت وهما راحة ولا يجب احتسابهم ضمن الأجازة حتى لا يتم خصمهم من رصيد الموظف وذلك حسب سياسة الأجازات المتبعة.

فكيف أتمكن من أجعل البرنامج يحسب الفترة دون أيام الجمع والسبت مهما كان تكرارها فى المدة المذكورة؟

وتذكروا فقط أنه يجب فتح نموذج إدخال الأجازات الجديدة من نموذج الأجازات الرئيسى حتى يستدل على رقم موظف ولا ينتج خطأ فى حقل رقم الموظف

والمعذرة إن كانت هناك بعض الوظائف معطلة بالنماذج لأن النماذج تم أخذها من القاعدة ولا تجد أكوادها.

أرجو العذر على الإطالة ولكنى أحاول أن يكون سؤالى واضحاً.

مع خالص التقدير لتعاون حضراتكم الدائم.

محمد ندا

Vacations_Only.rar

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#2

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

عذرا اخي محمد ...

لن اتعمق في مثالك ولكني عزلت لك فكرة الحل في مثال صغير وبسيط

انت تريد الفرق بين بداية ونهاية الاجازة مع حذف ايام الراحات الاسبوعية (جمعة وسبت)

قمت بتصميم ما يلي :

1 - جدول به حقل لتاريخ البداية واخر لتاريخ النهاية

2 - استعلام مبني على هذا الجدول به حقلي البداية والنهاية زحقل للفرق بينهما وحقل ثالث للفرق بدون اجازات....

كيف تم حسابه؟؟

عن طريق....

3 - دالة اسمها Dur موجودة بالوحدة النمطية

كانت هذه فكرة حساب المدة مع حذف ايام معينة

اتركك مع المثال..

طبتم واهتديتم.

vacation.rar

1

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

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

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#3

أخى الكريم إيهاب عثمان

أولاً: أشكرك شكراً جزيلاً على مرورك الكريم واهتمامك بموضوعى.

ثانياً: الحل الذى تفضلت به يحل المشكلة تماماً وسأحاول استخدامه وسيصلح إن شاء الله.

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

وذلك نظراً لأن القاعدة مملوءة بالبيانات الحية .. .. وهناك كائنات عديدة بالاعدة مرتبطة بالجدول وتحسب منه بياناتها.

وهذا لا يقلل من امتنانى لتفضلك بالحل ومجهودك معى.

نفع الله بك العلم وجزى والديك خيراً

محمد ندا

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#4

عذراً مشرفنا الكريم .. إيهاب

عذراً .. إخوانى الكرام..

هل يمكننى إستدعاء الوظيفة من الوحدة النمطية للأخ الكريم إيهاب عثمان التى تفضل بها فى حدث داخل النموذج (أقصد حدث قبل اتحديث أو بعد التحديث) لتقوم بتحديث بالنموذج وتكون النتيجة هى القيمة الإفتراضية لحقل مدة الأجازة؟؟

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

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

وهذا التعديل لنصف يوم أو غيره ليس به مشكلة لدى.

وفى الحقيقة نظراً لأننى أعمل بها منذ وقت طويل وعلى فترات متقطعة بأخشى أن تؤثر هذه التغييرات على كائنات تضر بقاعدة البيانات دون أن تتضح لى.

مع وافر التقدير

محمد ندا

تم تعديل هذه المشاركة بواسطة Mohamed Nada في 26 يناير 2009 في 01:45

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#5
Mohamed Nada كتب:
هل يمكننى إستدعاء الوظيفة من الوحدة النمطية للأخ الكريم إيهاب عثمان التى تفضل بها فى حدث داخل النموذج (أقصد حدث قبل اتحديث أو بعد التحديث)

الاستعلام لم يكن الا وسيلة لتوضيح عمل الدالة وتجربتها

وبالطبع يمكنك استدعاء الدالة المسماة Dur داخل اي كائن وتحت اي حدث

Dur(st;nd)

حيث st و nd هما متغيرا الدالة ستقوم باستبدالهما باسم حقل بداية الاجازة وحقل نهاية الاجازة على الترتيب وذلك اينما وجدا في نموذج - او تقرير - او استعلام او حتى في الشارع :lol:

طبتم واهتديتم

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

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

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#6

أخى الكريم.. هداك الله وغفر لوالديك.

سأقوم بمحاولة التطبيق اليوم الإثنين مساءاً وأخبر حضرتك بالنتيجة.

مع خالص تقديرى لمتابعتك.

على فكرة ... تعجبنى جداً جملة "طبتم وأهتديتم" فوقعها على نفسى جميل للغاية ... وفقكم الله

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#7
اقتباس

أخى الكريم .. عفواً لأننى أطيل عليك.

ولكننى حاولت ولم أنجح فى استدعاء الدالة ... أكيد أنا أكتب الصيغة خطأ.

ولكننى حاولت لدرجة أننى غيرت أسماء حقول الجدول فى نسخة من قاعدة البيانات خاصتى وحولتها إلى st , ed حتى أتأكد من أننى لا أخطئ فى الأسماء.

ولكن لم أنجح معها حيث أن الخطأ أكيد لدى أنا.

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

أنا أتمنى أن تكون النتيجة هى القيمة الإفتراضية لحقل Vacation_Duration لأن المستخدم ربما يحتاج تغييرها مثلا من يوم إلى نصف يوم.

عذراً للإطالة.

Simplified_Vacations.rar

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#8

مرحبا اخي الكريم...

لا اعتذار مطلقاً فنحن هنا لخدمتكم بما نستطيع..

1 - ارفقت لك الملف بعد التعديل

2 - وضعت دالتنا تحت حدث "عند التركيز" للمربع Vacation_duration

3 - منعت المستخدم من تغيير النتيجة

4 - الان تعمل الدالة فارجو تجربتها والتاكد من انها تعطيك النتائج السليمة

Mohamed Nada كتب:
لأن المستخدم ربما يحتاج تغييرها مثلا من يوم إلى نصف يوم.

هذه لم افهمها!!

كيف يعيد الفرق بين تاريخين كسراً؟؟؟

Mohamed Nada كتب:
على فكرة ... تعجبنى جداً جملة "طبتم وأهتديتم" فوقعها على نفسى جميل للغاية

إذأً ...

طبتم واهتديتم :D

Simplified_Vacations.rar

تم تعديل هذه المشاركة بواسطة ايهاب عثمان في 26 يناير 2009 في 22:06

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

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

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#9
اقتباس
لأن المستخدم ربما يحتاج تغييرها مثلا من يوم إلى نصف يوم.

أخى الكريم ...

أشكرك شكراً جزيلاً على الحل وقد أوفى بالمطلوب تماماً .. وقد جربتها وتعمل بشكل ممتاز .. وسوف أقوم باللازم لعلاج موضوع الكسر.

توضيح

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

ولكن لدينا فى الشركة يسمح للموظف بأخذ نصف يوم أجازة (مثلاً تكون لديه ظروف ونسمح له بالخروج من نصف يوم العمل ونحسب له نصف يوم أجازة)

ولذا عند احتسابها لابد أن نعدل النتيجة إلى نصف يوم (وهذه حلها عندى والحمد لله).

أيضاً فى حالة أجازة اليوم الواحد تكون بداية ونهاية الأجازة هى نفس اليوم (أى بداية الأجازة فى 26/01/2009 ونهايتها فى 26/01/2009) وإذا طرحنا التاريخ الأول من الثانى بنتج صفر.

ولذلك دائماً لدى احتساب الأجازة نضيف يوماً لنتيجة الطرح (تاريخ النهاية - تاريخ البداية + 1) .. والنتيجة سليمة مائة فى المائة.

جزال الله كل خير ..

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

جزيتم وكفيتم ... حتة غيرة كدة من ذوقك العالى :)

تم تعديل هذه المشاركة بواسطة Mohamed Nada في 27 يناير 2009 في 01:07

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#10

أخى الكريم .. إيهاب عثمان

أردت أن أشرك حضرتك معى فى النتيجة بعد التطبيق كالتالى:

1. تم تعديل مكان الدالة من حقل مدة الأجازة حدث عند التركيز إلى حقل نهاية الأجازة فى حدث بعد التحديث.

2. تم عمل إثنين Text box (مخفيين بالنموذج) وظيفتهما تحديد الحد الأدنى والحد الأعلى للمدة التى يمكن قبولها فى قاعدة البيانات.

3. تم إضافة زر أمر يضيف إلى مدة الأجازة نصف يوم لمرة واحدة فقط .. وفى حالة الضغط مرة أخرى لزيادة المدة .. تظهر رسالة للمستخدم بعدم إمكانية ذلك ويقوم الكود بإلغاء التغيير الأخير.

4. تم إضافة زر أمر يقلل من مدة الأجازة نصف يوم لمرة واحدة فقط .. وفى حالة الضغط مرة أخرى لتقليل المدة .. تظهر رسالة للمستخدم بعدم إمكانية ذلك ويقوم الكود بإلغاء التغيير الأخير.

وبذلك بالإضافة لباقى النموذج لدى ...أصبح النموذج على خير ما يرام ...

دمت سالماً أخى الكريم

مع تقديرى

محمد ندا

Simplified_Vacations.rar

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#11

بســم الله الـرحمــن الرحيــم

اخي الكريم محمد ندا...

بوركت يمينك وشرفتني مشاركتك

-----

خارج الاكسيس والبرمجة..

كنظام اداري لماذا لا تطبقون عدد ساعات محدد للاذون شهرياً ؟؟؟ على ان يظل نظام الاجازات قائماً بذاته مجرد اقتراح!

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

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

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#12

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

اقتباس
خارج الاكسيس والبرمجة..

كنظام اداري لماذا لا تطبقون عدد ساعات محدد للاذون شهرياً ؟؟؟ على ان يظل نظام الاجازات قائماً بذاته مجرد اقتراح!

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

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

مع كل الاحترام والتقدير.

تم تعديل هذه المشاركة بواسطة Mohamed Nada في 27 يناير 2009 في 20:02

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#13

مشرفينا الكرام

نرجو تعليم الموضوع "تمت الإجابة" حتى يستفيد منه الأخوة

مع التحية

محمد ندا

... بقمة السعادة .. أعود بإذن الله لصحبتكم الرائعة قريباً ...

#14

مشكورررررررر ويعطيك الف عافية

مواضيع مشابهة