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

أريد أن تظهر أيام الجمعة والسبت بين أيام الغياب

بدأه أيمن الزعبي في 2 أبريل 2014 · 15 رد · 913 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

 

أخوتي الكرام

 

 

يوجد بعض الموظفين يتغيبون عن العمل خلال فترة وقدرها 10 أيام مثلا

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

فهل بالإمكان أن تظهر هذه الأيام في الاستعلام في البرنامج المرفق

 

جزيتم الجنة

 

 

وتقبلوا تحياتي،،،،،

 

 

Friday Saturday.rar

post-116455-0-13299800-1396454724_thumb.

#2

جرب الكود ده في الاستعلام

SELECT id, [Emp No], [Employee Name], Date & ' ' & WeekdayName(Weekday([Date])) AS Absent_Date,
 [Date stop Shift Payment], [Cancel Deduct], Division, Department, Section, Unit, DateCod, Deduct,
Note, YesNo
FROM Absent
WHERE Weekday([Date])=7 Or Weekday([Date])=1;
UNION
SELECT id, [Emp No], [Employee Name], Date, [Date stop Shift Payment], [Cancel Deduct],
 Division, Department, Section, Unit, DateCod, Deduct, Note, YesNo
FROM Absent
WHERE Not (Weekday([Date])=7) AND NOT (Weekday([Date])=1)
ORDER BY [Emp No];

تم تعديل هذه المشاركة بواسطة amir2008amir في 2 أبريل 2014 في 23:52

#3

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

 

أخي amir2008amir top.png

 

بارك الله فيك وجعله بميزان حسناتك ...

 

لكن أخي الكود لم يعمل معي بالصورة الصحيحة ... فمثلا موظف رقمه 44900 تغيب عن العمل بتاريخ 6 مارس 2014 وبتاريخ 9 مارس 2014

 

إلا أن أيام الجمعة والسبت (7 و 8 مارس 2014) لم تظهر في الاستعلام.

 

أرجو التعديل بوركت أخي ... :wub:  :wub:

تم تعديل هذه المشاركة بواسطة أيمن الزعبي في 3 أبريل 2014 في 07:24

#4

المثال الذي رفعته سيادتك غير موجود به جدول الموظفين

موجود فقط جدول الغياب Absent

لذلك فرقم الموظف هذا  44900 غير موجود بالجدول للمثال الذي أخذته منك

 

403346313.jpg

 

على العموم هذا ملف أنا فقط قمت بتعديل الاستعلام ولم أحذف موظفين من الجدول

 

 

Friday Saturday.rar

#5

أخي amir2008amir

 

بوركت أخي ... وأعتذر لك

 

أخي لا يوجد جدول للموظفين وإنما أرقام ملفاتهم  Emp no موجودة في الجدول absent

 

أخي يوجد خطأ لا اعلم أين هو ؟

حيث يظهر يوم بالناقص أي أن يوم الجمعة هو الخميس ويوم السبت هو الجمعة

 

مثال:

 

تاريخ 9 مارس 2014 يصادف يوم الأحد بينما في الاستعلام يصادف يوم السبت

 

 

post-116455-0-98148700-1396509045_thumb.

#6

صحيح

في إعدادات الويندوز الأسبوع يبدأ من يوم السبت كاختيار افتراضي

بينما في الدول الأجنبية الأسبوع يبدأ من يوم الأحد

؟!!!

اممممم

طيب نعدل في الاستعلام فبدلاً من

 

Weekday([Date])=7 Or Weekday([Date])=1;

يكون

Weekday([Date])=7 Or Weekday([Date])=6;

 

يعني يوم 6 الجمعه ويوم 7 السبت لكن ناقص شرط أن نعمل يوم الأحد هو يوم 1

 

لذلك :

 في الويندوز نغير بداية الأسبوع يكون يوم الأحد

كده يضبط التقويم

 

والكود الكامل :

SELECT id, [Emp No], [Employee Name], Date & ' ' & WeekdayName(Weekday([Date])) AS Absent_Date,
 [Date stop Shift Payment], [Cancel Deduct], Division, Department, Section, Unit, DateCod, Deduct,
Note, YesNo
FROM Absent
WHERE Weekday([Date])=7 Or Weekday([Date])=6;
UNION SELECT id, [Emp No], [Employee Name], Date, [Date stop Shift Payment], [Cancel Deduct],
 Division, Department, Section, Unit, DateCod, Deduct, Note, YesNo
FROM Absent
WHERE Not (Weekday([Date])=7) AND NOT (Weekday([Date])=6)
ORDER BY [Emp No];

وممكن أفكر لك في كود يجعل أكسس يغير بداية الأسبوع من تلقاء نفسه

بس إيدك معايا

تم تعديل هذه المشاركة بواسطة amir2008amir في 3 أبريل 2014 في 11:42

#7

تمام أخي ,,, تم ضبط الأيام ...

 

ولكن أخي لم يعمل الكود في الاستعلام بالشكل المطلوب

 

لأنه لم يقم باستخراج أيام الجمعة والسبت الواقعة بين أيام الغياب كما أشرت سابقاً

 

مثال الصورة .. يوجد أيام جمعة وسبت واقعة بين اليومين ولكنها لم تظهر تلقائياً.

 

أعتذر ان أسأت الشرح في بداية الموضوع :blush:

post-116455-0-42894400-1396515566_thumb.

#8

المشكلة أن الموظف رقم 44900 مش موجود عندي في الجدول

لذلك مش عارف أتابع السبب

ياريت تتأكد أن في الجدول الرئيسي عندك هناك يومي

7 ، 8   3 - 2014 م  للموظف محل المشكلة المذكور أعلاه

#9

أخي لقد أرفقت لك الجدول ...

 

لقد قمت بإدخال تواريخ جديدة في الجدول لموظفين جدد تسهيلا لملاحظة الأخطاء ...

 

 

أرجو أن تعذرني .. لقد أخذت من وقتك الكثير ...

 

 

Friday Saturday.rar

#10

حدث سوء فهم من جانبي لكن لي العذر

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

لذلك يقوم الاستعلام بالبحث عنها فيجدها

أما تواريخ أيام الجمعة والسبت التي لم تسجل في الجدول كأيام غياب فلا يجدها الاستعلام

 

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

 

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

حتى يتسنى للاستعلام بعد ذلك استخراجهم

 

الأمر يحتاج منى إلى وقت ولربما  أحد الزملاء يوجد حلا

#11

لا بأس أخي ... وأتقدم بجزيل الشكر لك  :wub:

 

 

لعل أحد الأخوة الكرام يفيدنا بحل لهذا الموضوع :rolleyes:

#12

up

#13

أنا فقط عندي استفسار :

 

الجدول مسجل فيه أيام جمعة وسبت لتواريخ معينة  وفي نفس الوقت غير مسجل فيه أيام جمعة وسبت لتواريخ أخرى

فكيف ذلك ؟

 

الغرض من السؤال هو البحث عن طريقة لإدخال أيام الأجازات تلقائيا  أولا بأول بمجرد تسجيل أول يوم حضور بعدها

#14

أخي العزيز .. بارك الله فيك :wub:

 

لماذا التدقيق على وجود أيام جمعة وسبت موجودة في الجدول

 

المطلوب هو فقط اظهار أيام الجمعة والسبت إذا كانت واقعة بين أيام الغياب لكل موظف حسب Emp no بأي طريقة كانت

 

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

 

عذبتك معاي

تم تعديل هذه المشاركة بواسطة أيمن الزعبي في 5 أبريل 2014 في 12:55

#15

أرجو أن يكون ما تقصده في التعديل التالي

 

Friday Saturday.zip

#16

بوركت أخي القحم ...

 

أخي المطلوب بأنه في حالة غياب الموظف قبل وبعد أيام الجمعة والسبت بيوم واحد أن تظهر أيام الجمعة والسبت تلقائياً

 

مثال

موظف رقمه 44900 Emp no

 

تغيب بتاريخ 3/4/2014 (يوم الخميس)

وتغيب أيضاً بتاريخ 6/4/2014 (يوم الأحد)

 

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

 

أرجو المساعدة

 

ألف شكر للجميع

Friday Saturday.rar

تم تعديل هذه المشاركة بواسطة أيمن الزعبي في 6 أبريل 2014 في 06:42

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…