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

اريد ايقاف الحفظ الذاتي Autosave في الفورم

مغلق
بدأه shrsm في 16 مايو 2006 · 6 رد · 1,450 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اريد كود ل ايقاف الحفظ الذاتي Autosave في الفورم

#2

اخي الفاضل

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

من محاسن الحفظ التلقائي انه في حالة انقطاع الكهرباء او عطل في قاعدة البيانات ولم تقم قاعدة البيانات بالحفظ التلقائي فستفقد جميع البيانات المدخله حديثا .

اضف الى هذا ان هذه الميزه متوفره في الاصدار 2003 ولم توضع عبثا ولكن يمكن التحكم في هذه العملية من خلال الكود التالي :

1. انشىء زر امر على النموذج وليكن اسمه مثلا SAVE

2. في حدث عند النقر على الزر ضع هذا الكود

Private Sub SAVE_Click()
If MsgBox(" هل تريد حفظ البيانات المدخلة ", vbYesNo) = vbNo Then
DoCmd.CancelEvent
SendKeys "{ESC}"
Exit Sub
End If
End Sub

وهذا مثال تطبيقي

اختكم

زهره

NO_AUTO_SAVE.rar

#3

شكرا جزيلا لك أختي العزيزة ومعلمتى...زهرة...

سوف أجرب وأرد عليك بعد قليل ...وشكرا لك مرة أخري

#4
zahrah كتب:
اخي الفاضل

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

من محاسن الحفظ التلقائي انه في حالة انقطاع الكهرباء او عطل في قاعدة البيانات ولم تقم قاعدة البيانات بالحفظ التلقائي فستفقد جميع البيانات المدخله حديثا .

اضف الى هذا ان هذه الميزه متوفره في الاصدار 2003 ولم توضع عبثا ولكن يمكن التحكم في هذه العملية من خلال الكود التالي :

1. انشىء زر امر على النموذج وليكن اسمه مثلا SAVE

2. في حدث عند النقر على الزر ضع هذا الكود

فعلا انا معك أن ميزة الحفظ التلقائي هي ميزة ممتازة ....لكن في بعض الحالات لا تكون مجدية ...كما في حالة برنامجى.....

لأن البرنامج هو عبارة عن تسجيل أوامر شغل يومية ...بشرط الا تزيد في اليوم عن 10 اوامر شغل ...وقد قمت بعمل استعلام Query لحساب عدد اوامر الشغل في كل يوم ....بحيث عند تسجيل الأمر الحادي عشر ...لا يقبل تسجيله ....

وأنا عالجت هذا الموضوع بعمل جملة شرطية IF في Button بحيث لو عدد اوامر الشغل أقل من 10 يقبل حفظه ...ولو عدد أوامر الشغل 10 (أنا اريده أن لا يحفظه ويقوم بإظهار رسالة للمستخدم) ...لكن لم أعرف كيف اكتب كود عدم الحفظ ...وقد قمت بتجربة كود Cancel Event لكن لم ينفع ...

فقمت بوضع كود حذف السجل في حالة لو تحقق شرط وجود 10 اوامر ...لكن طبعا مشكلة الحذف أنه بتحجز رقم أمر يعنى لو كان رقم الأمر المسلسل 506 وهو الأمر ال 11 في نفس اليوم فسوف يحجز هذا الرقم ....ويصبح التسلسل ....

505 .....507 ....

فكنت اريد كود لإيقاف الحفظ التلقائي لهذا ...أسف للإطالة

#5

مرة أخري من فضلكم ....الأخت زهرة وجميع أعضاء المنتدى

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

حاولت بشتي الطرق بالنسبة لي ولم افلح ...

#6

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

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

Dim X As Integer

If Me.Dirty Then

X = MsgBox("åá ÊÑíÏ ÍÝÙ ÇáÊÛíÑÇÊ", vbYesNoCancel + vbQuestion + vbMsgBoxRight + vbMsgBoxRtlReading, "هل تريد الحفظ")

If X = vbYes Then

On Error GoTo Err_Command26_Click

DoCmd.Close

End If

If X = vbNo Then

On Error GoTo Err_Command26_Click

Me.Undo

DoCmd.Close

End If

If X = vbCancel Then Exit Sub

Else

On Error GoTo Err_Command26_Click

DoCmd.Close

End If

Exit_Command26_Click:

Exit Sub

Err_Command26_Click:

MsgBox Err.Description

Resume Exit_Command26_Click

و حدث dirty للفورم هو أنه عند القيام بأي تغيير على النوذج يأخذ القيمة true للنموذج و لا يتم الخروج إلا بتنفيذ ذلك الشرط أرجوا أن تكون قد وضحت الفكرة ;)

#7

شكرا لك جزيلا أخي باشا ...وسوف اجرب وارد عليك بإذن الله ...

مع أجمل تحية لك ...

هذا الموضوع مغلق.

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