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

ظهور رسالة عند انتهاء تاريخ الجواز

بدأه خالد يحي الامام في 11 يونيو 2012 · 28 رد · 2,739 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بعد التحية والتقدير لدي حقل باسم Passport_Expiry_Date في جدول وموجود في نموذج فرعى وكذلك اخر موجود في نموذج رئيسي باسم Passport1_Expiry_Date ما اريده هو ظهور رسالة تلقائية تفيد بانتهاء الجواز بمعني اذا كان اليوم تاريخ 11/06/2012 والجواز بنتهي في هذا التاريخ او بعده بي يومين تظهر رسالة تفيد ذلك ولكم الشكر

#2

اخي القاضل : خالد

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

اذا رغبت في اظهار رسالة لإنتهاء تاريخ الجواز في نفس اليوم فإستخدم هذا الكود

Private Sub Form_Current()
If Date = Me.Passport_Expiry_Date Then
MsgBox " اخي الكريم ... تاريخ الجواز انتهى اليوم ", vbCritical, "تاريخ الجواز"
End If
End Sub

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

Private Sub Form_Current()
If DateAdd ("d", -2, [Passport_Expiry_Date]) Then
MsgBox " اخي الكريم ... تاريخ الجواز ينتهي بعد يومين ", vbCritical, "تاريخ الجواز"
End If
End Sub

واذا رغبت ان يتم التذكير بإنتهاء تاريخ الجواز بعد يومين من تاريخ انتهاء الجواز فإستخدم هذا الكود

Private Sub Form_Current()
If DateAdd ("d", 2, [Passport_Expiry_Date]) Then
MsgBox " اخي الكريم ... تاريخ الجواز انتهى منذ يومين ", vbCritical, "تاريخ الجواز"
End If
End Sub

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 11 يونيو 2012 في 12:10

1
#3

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

#4
خالد يحي الامام كتب:

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

Private Sub Form_Current()
If Date = Me.Passport_Expiry_Date Then
MsgBox "  اخي الكريم ... تاريخ الجواز رقم  : " & DLookup("[PassNum]", "Table", "[PassNum]=" & Me![PassNum]) & " " & "الخاص بـ  : " &  DLookup("[strName]", "Table", "[strName]='" & Me![strName] & "'") & "  " & " ينتهي اليوم", vbCritical, "تاريخ الجواز"
End If
End Sub

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 11 يونيو 2012 في 16:15

−1
#5

لكي الشكر استاذتي ولكن لم افهم هل استغني عن الكود السابق للتحقق من تاريخ الانتهاء ام ماذا تقصدين واكرر الشكر

#6
خالد يحي الامام كتب:

لكي الشكر استاذتي ولكن لم افهم هل استغني عن الكود السابق للتحقق من تاريخ الانتهاء ام ماذا تقصدين واكرر الشكر

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

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

لو تلاحظ انني اخذت فقط الكود الأول وطبقت عليه دالة Dlookup

تستطيع انت ان تطبق ذلك على الكود الثاني ( قبل يومين ) والكود الثالث ( بعد يومين ) بهذه الطريقة

تنبيه قبل يومين من تاريخ انتهاء الجواز

Private Sub Form_Current()
If DateAdd ("d", -2, [Passport_Expiry_Date]) Then
MsgBox "  اخي الكريم ... تاريخ الجواز رقم  : " & DLookup("[PassNum]", "Table", "[PassNum]=" & Me![PassNum]) & " " & "الخاص بـ  : " &  DLookup("[strName]", "Table", "[strName]='" & Me![strName] & "'") & "  " & " سينتهي بعد يومين", vbCritical, "تاريخ الجواز"
End If
End Sub

تنبيه بعد يومين من تاريخ انتهاء الجواز

Private Sub Form_Current()
If DateAdd ("d", +2, [Passport_Expiry_Date]) Then
MsgBox "  اخي الكريم ... تاريخ الجواز رقم  : " & DLookup("[PassNum]", "Table", "[PassNum]=" & Me![PassNum]) & " " & "الخاص بـ  : " &  DLookup("[strName]", "Table", "[strName]='" & Me![strName] & "'") & "  " & " انتهى منذ يومين", vbCritical, "تاريخ الجواز"
End If
End Sub

بالتوفيق

#7

لكي الشكر اختي ولكن لم اتمكن للوصول لما اريد فهل يوجد خطأ في الكود كما هو ادناه مع العلم ان رقم الجواز نوع البيانات نص والاسم نوع البيانات طبعا نص

Private Sub Form_Current()
If DateAdd("d", -2, [Passport_ Expiry_Date]) Then
MsgBox "  ÇÎí ÇáßÑíã ... ÊÇÑíÎ ÇáÌæÇÒ ÑÞã  : " & DLookup("[Passport_Number]", "tdetpersonal", "[Passport_Number]='" & Me![Passport_Number]) & "'" & "ÇáÎÇÕ ÈÜ  : " & DLookup("[Name_Arabic]", "tdetpersonal", "[Name Arabic]='" & Me![Name_Arabic] & "'") & "  " & " ÓíäÊåí ÈÚÏ íæãíä", vbCritical, "ÊÇÑíÎ ÇáÌæÇÒ"
End If
End Sub
#8

للرفع

#9
خالد يحي الامام كتب:

للرفع

نعم يوجد لديك خطأ في التعبير لأنك استخدمت تعبير رقمي بدلا من تعبير نصي لحقل رقم الجواز

انظر التصحيح للكود

Private Sub Form_Current()
If DateAdd("d", -2, [Passport_ Expiry_Date]) Then
MsgBox "  اخي الكريم ... تاريخ الجواز رقم  : " & DLookup("[Passport_Number]", "tdetpersonal", "[Passport_Number]='" & Me![Passport_Number] & "'") & " " & "الخاص بـ  : " & DLookup("[Name_Arabic]", "tdetpersonal", "[Name Arabic]='" & Me![Name_Arabic] & "'") & "  " & " انتهى منذ يومين", vbCritical, "تاريخ الجواز"
End If
End Sub

هذا التعبير خطأ اذا كان رقم الجواز نص

نكتب هذا التعبير اذا كان حقل الجواز رقمي

"[Passport_Number]=" & Me![Passport_Number] )

الصحيح اذا كان رقم الجواز نصي

"[Passport_Number]='" & Me![Passport_Number] & "'")

لاحظ الفرق بين التعبيرين في آخر علامات التنصيص

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 16 يونيو 2012 في 12:29

#10

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

DataPassport.rar

#11

للرفع

#12

للرفع

#13

السلام عليكم

اقتباس
مشكلة اخري وهي يظهر اسم واحد فقط

لانه حقل رقم جواز في النموذج فارغ(لايوجد رقم الجواز)

اقتباس
وهو جوازه لم ينتهي بعد

غير سطر الااول للكود في الحالي (Current)الى:

If Date = DateAdd("d", -2, [Passport_ Expiry_Date]) Then

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

#14

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

#16

لكي الشكر استاذتي فكرة جميلة جدا ولكن لدي الشاشة الرئيسية وخصائص النموذج Pop up =Yes و Modal = Yes وكذلك خصائص النموذج الخاص ببيانات الموظف وخصائص النموذج الجديد لاظهار الذين انتهت جوازاتهم ففي هذه الحالة توجد مشكلة في ظهور النموذج الخاص باظهار الذين جوازاتهم انتهت قبل يومين فكيف يتم اظهار النماذج بالترتيب الشاشة الرئيسية وبعد ذلك عند الضغط على زر لفتح نموذج بيانات الموظف ويظهر بعد ذلك النموذج الجديد كما هو معد سابقا واكرر الشكر

#17
خالد يحي الامام كتب:

لكي الشكر استاذتي فكرة جميلة جدا ولكن لدي الشاشة الرئيسية وخصائص النموذج Pop up =Yes و Modal = Yes وكذلك خصائص النموذج الخاص ببيانات الموظف وخصائص النموذج الجديد لاظهار الذين انتهت جوازاتهم ففي هذه الحالة توجد مشكلة في ظهور النموذج الخاص باظهار الذين جوازاتهم انتهت قبل يومين فكيف يتم اظهار النماذج بالترتيب الشاشة الرئيسية وبعد ذلك عند الضغط على زر لفتح نموذج بيانات الموظف ويظهر بعد ذلك النموذج الجديد كما هو معد سابقا واكرر الشكر

بارك الله بك اخي الكريم : خالد

طبق كل الخصائص المجوده في النموذج الرئيسي على كل النماذج

post-15367-084620900 1339913943_thumb.gi

post-15367-020843400 1339914117_thumb.gi

post-15367-083059100 1339914138_thumb.gi

za-DataPassport-LAST.rar

بالتوفيق

المرفقات
ALL.gifALL1.gifALL2.gif
#18

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

za-DataPassport-Err.rar

#19

للرفع

#20

اخي الفاضل : خالد

لا اعلم ماذا تريد بالضبط لأنك لم تشرح لنا ما هو المطلوب حتى نقوم بتنفيذه لك

ولكن اعتقد انك تريد هذا الحل

za-DataPassport-Err-UP.rar

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 21 يونيو 2012 في 13:03

1
#21

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

#23

السلام عليكم

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

تفضل اخي اليك المطلوب

H_R-DataPassport-Err-LAST.zip

#24

لكم الشكر جميعا استاذتي والاستاذ الكريم ابو شفيق فكرة جدية جدا ولدى مشاركة اخري تخص اظهار جميع الذين يستحقون اجازة سنوية خلال شهر من تاريخ اليوم بمعني اذا كان اليوم 18/06/2012 يظهر جميع الاسماء الذين يستحقون اجازة خلال الفترة من تاريخ اليوم إلى 19/07/2012 يعني كل يوم يظهر الاسماء الذين يستحقون اجازة خلال شهر من تاريخ اليوم الذي يتم فتح فيه البرنامج ارجو ان اكون وضحت المطلوب الملف مرفق

DataLeave.rar

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