بعد التحية والتقدير لدي حقل باسم Passport_Expiry_Date في جدول وموجود في نموذج فرعى وكذلك اخر موجود في نموذج رئيسي باسم Passport1_Expiry_Date ما اريده هو ظهور رسالة تلقائية تفيد بانتهاء الجواز بمعني اذا كان اليوم تاريخ 11/06/2012 والجواز بنتهي في هذا التاريخ او بعده بي يومين تظهر رسالة تفيد ذلك ولكم الشكر
ظهور رسالة عند انتهاء تاريخ الجواز
اخي القاضل : خالد
السلام عليكم ورحمة الله وبركاته
اذا رغبت في اظهار رسالة لإنتهاء تاريخ الجواز في نفس اليوم فإستخدم هذا الكود
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
جميل جدا يا استاذتي جربته ولقد صار ولكن هل يمكن ان يظهر اسم الشخص او رقم بطاقته او رقمه الوظيفي باعتبار الاسماء كثيرة في القاعدة ولكي الشكر والتقدير
خالد يحي الامام كتب:جميل جدا يا استاذتي جربته ولقد صار ولكن هل يمكن ان يظهر اسم الشخص او رقم بطاقته او رقمه الوظيفي باعتبار الاسماء كثيرة في القاعدة ولكي الشكر والتقدير
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
لكي الشكر استاذتي ولكن لم افهم هل استغني عن الكود السابق للتحقق من تاريخ الانتهاء ام ماذا تقصدين واكرر الشكر
خالد يحي الامام كتب:لكي الشكر استاذتي ولكن لم افهم هل استغني عن الكود السابق للتحقق من تاريخ الانتهاء ام ماذا تقصدين واكرر الشكر
لا يا أخي الكريم
الكود هو نفسه لم يتغير ولكن اضفنا له فقط اسم صاحب الجواز ورقم الجواز في الرساله
لو تلاحظ انني اخذت فقط الكود الأول وطبقت عليه دالة 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بالتوفيق
لكي الشكر اختي ولكن لم اتمكن للوصول لما اريد فهل يوجد خطأ في الكود كما هو ادناه مع العلم ان رقم الجواز نوع البيانات نص والاسم نوع البيانات طبعا نص
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للرفع
خالد يحي الامام كتب:للرفع
نعم يوجد لديك خطأ في التعبير لأنك استخدمت تعبير رقمي بدلا من تعبير نصي لحقل رقم الجواز
انظر التصحيح للكود
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
لكي الشكر استاذتي عدلت في الكود ولكن واجهتني مشكلة اخري وهي يظهر اسم واحد فقط وهو جوازه لم ينتهي بعد مرفق الملف ارجو النظر فيه
للرفع
للرفع
السلام عليكم
اقتباسمشكلة اخري وهي يظهر اسم واحد فقط
لانه حقل رقم جواز في النموذج فارغ(لايوجد رقم الجواز)
اقتباسوهو جوازه لم ينتهي بعد
غير سطر الااول للكود في الحالي (Current)الى:
If Date = DateAdd("d", -2, [Passport_ Expiry_Date]) Thenبالتوفيق،،،،
لك الشكر والتقدير اخي لقد تم والحمدلله ولكن لدي استفسار خطر بذهني اخيرا ماذا لو كان هنالك اكثر من موظف ينتهي تاريخ الجواز في نفس التاريخ الا يمكن اظهارهم في رسالة واحدة ولك الشكر
لكي الشكر استاذتي فكرة جميلة جدا ولكن لدي الشاشة الرئيسية وخصائص النموذج Pop up =Yes و Modal = Yes وكذلك خصائص النموذج الخاص ببيانات الموظف وخصائص النموذج الجديد لاظهار الذين انتهت جوازاتهم ففي هذه الحالة توجد مشكلة في ظهور النموذج الخاص باظهار الذين جوازاتهم انتهت قبل يومين فكيف يتم اظهار النماذج بالترتيب الشاشة الرئيسية وبعد ذلك عند الضغط على زر لفتح نموذج بيانات الموظف ويظهر بعد ذلك النموذج الجديد كما هو معد سابقا واكرر الشكر
خالد يحي الامام كتب:لكي الشكر استاذتي فكرة جميلة جدا ولكن لدي الشاشة الرئيسية وخصائص النموذج Pop up =Yes و Modal = Yes وكذلك خصائص النموذج الخاص ببيانات الموظف وخصائص النموذج الجديد لاظهار الذين انتهت جوازاتهم ففي هذه الحالة توجد مشكلة في ظهور النموذج الخاص باظهار الذين جوازاتهم انتهت قبل يومين فكيف يتم اظهار النماذج بالترتيب الشاشة الرئيسية وبعد ذلك عند الضغط على زر لفتح نموذج بيانات الموظف ويظهر بعد ذلك النموذج الجديد كما هو معد سابقا واكرر الشكر
بارك الله بك اخي الكريم : خالد
طبق كل الخصائص المجوده في النموذج الرئيسي على كل النماذج
بالتوفيق
لكي الشكر والتقدير استاذتي فكرة جيدة ان يتم فتح النماذج من النموذج تفاصيل الموظف ولكن لدي نموذج رئيسي Main كما هو في الملف المرفق ومنه يتم فتح نموذج بيانات الموظفين ليظهر تلقائيا كما كان سابقا نموذج الموظفين الذين انتهت تواريخ جوازاتهم واكرر الشكر الملف مرفق
للرفع
اخي الفاضل : خالد
لا اعلم ماذا تريد بالضبط لأنك لم تشرح لنا ما هو المطلوب حتى نقوم بتنفيذه لك
ولكن اعتقد انك تريد هذا الحل
بالتوفيق
تم تعديل هذه المشاركة بواسطة zahrah في 21 يونيو 2012 في 13:03
استاذتي العزيزة قد اكون فعلا لم اقد ان اوصل المطلوب ولكن كما هو ذكرت سابقا عند فتح الملف بيتم اظهار النموذج Main وعند الضغط على الزر ادخال تفاصيل الموظف يتم فتح النموذج fdetpersonal ليفتح تلقائا نموذج frmPassportExpiryDate ليظهر الموظفين الذين انتهت تواريخ جوازات سفرهم قبل يومين يعني تظهر تدريجيا كما ذكرت في المقدمة يكون النموذج frmPassportExpiryDate ثم يليه النموذج fdetpersonal ثم من خلفه النموذج الرئيسي Main ولكي الشكر
السلام عليكم
اقتباسولكن لدي استفسار خطر بذهني اخيرا ماذا لو كان هنالك اكثر من موظف ينتهي تاريخ الجواز في نفس التاريخ الا يمكن اظهارهم في رسالة واحدة ولك الشكر
تفضل اخي اليك المطلوب
لكم الشكر جميعا استاذتي والاستاذ الكريم ابو شفيق فكرة جدية جدا ولدى مشاركة اخري تخص اظهار جميع الذين يستحقون اجازة سنوية خلال شهر من تاريخ اليوم بمعني اذا كان اليوم 18/06/2012 يظهر جميع الاسماء الذين يستحقون اجازة خلال الفترة من تاريخ اليوم إلى 19/07/2012 يعني كل يوم يظهر الاسماء الذين يستحقون اجازة خلال شهر من تاريخ اليوم الذي يتم فتح فيه البرنامج ارجو ان اكون وضحت المطلوب الملف مرفق

