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

ما هو الكود الذي يغلي الحفظ التلقائي لأكسيس ويتعرف على التعديل على السجلات

مغلق
بدأه مصلح الحريصي في 10 مايو 2002 · 13 رد · 2,041 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة الكرام

لدي سؤالان :

الأول:

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

الثاني:

كود يتعرف على أي تعديل في أي سجل بحيث إذا حدث أي تعديل تظهر رسالة تسأل لقد قمت بتعديل البيانات هل تريد حفظ تلك التعديلات ام لاء0

تحياتي لكم جميعاً0

#2

الاول

If MsgBox("  Do you really want to save this record - are au sure ", vbYesNo, _
   " save Confirmation") = vbNo Then
   Cancel = True
   SendKeys "{ESC}"
   Exit Sub
End If

اما عن الثاني

تقوم بتعريف متغير خاص لكل داخل الفورم لكل بيان تريد مقارنته

و تجعله يحتفظ بالقيمة الاصلية عند تنشيط الفورم أو يقرأها من الجدول عن طريق Dlookup

ثم بعد ذلك قبل تنفيذ التغيير أي عند حدث Before update تقوم بتنفيذ الكود الموجود فى الجزء الاول من السؤال و ذلك بعد أن يتحقق شرط عدم تساوي القيمة المدخلة بالقيمة الموجودة فى المتغير

#3

الاستاذ : محمد طاهر

الموضوع ذا أهميه كبيره لي واعتقد للكثير من مستخدمي اكسس الرجا الاسهاب في الشرح واذا ممكن مثال او امثله لكل طريقه مما ذكرت وشكرا لك 0

#4

الأخ محمد

شكراً جزيلاً ولكن قليلاً من التوضيح لو سمحت0

هل بعد وضع الكود تنلغي عملية الحفظ تلقائي أفرض أنني لم أنقر على زر الحفظ هل أكسيس يحفظ السجل ؟ ما أريده هو إلغا سلوك Update الفرضي أي " لا يتم حفظ اي سجل إلا بنقر زر الحفظ " لو قام المستخدم بملىء حقل أو حقلين أحدهما المفتاح الأساسي في النموذج ثم أغلق النموذج هل ستحفظ قيم ذلك الحقلين 0

تحملنا يا اخ محمد فلكي أتعامل مع ذلك الكود لابد أن أعرف وضفته0

أرجو لا تضيق من كثرة أسئلتي التي لا نهاية لها 0

#5

بعد كتابة أي تعديل علي حقل فى سجل

و قبل الانتقال الي الحقل التالي أو اغلاق الفورم

يمكنك التراجع بضغط esc

و هذا هو ما تم عمله بالكود ، فيتم التأكد قبل حفظ البيانات و ذلك فى حدث Before Update فاذا لم يكن الشرط المطلوب متحققا فيتم التراجع كما فى الكود

لم أنس المثال ;)

#6

ألف شكر لك يا أخ محمد

وبهذه المناسبة أود أن أخبرك عن أمر 0

في بداية تعلمي أكسيس شاهدت أحد البرامج تم تصميمه على أكسيس وما لفت نظري بل بهرني نموذج تم إزالة اشرطة التمرير وأزرار التنقل ومحددات السجلات والخطوط المقسمة وتم ضبط خاصية نمط الحدود على مربع حوار وازيل زر التصغير والتكبير وزر الإغلاق وزر ما هذا فأعجبت به جداً وتوجهة للبحث عن مبرمجي أكسيس في معاهد الدبلوم في المنطقة التيأسكنها فوجدة احد مبرمجي أكسيس وطلب مني 500 ريال سعودي وقال بأن عمل ذلك صعب جداً حيث يتم عن طريق البرمجه ، فعلاً صدقت الرجل ودفعت له ال 500 وحتى يبرر موقفه أمامي ويثبتلي بأن العمل الذي قام به يستحق الأجر توجه إلى الوحدة النمطيه وغير تلك الخصائص كلها بواسطة الكود عندها شعرت بأنني أمام طريق صعب في برمجة أكسيس فشكرت الرجل على ما علمني0

ولذلك تجدني عندما يسئلني أي شخص عن شيء في أكسيس أجيبه مباشرة إن كنت أستطيع وأسأل كثيراً ولا اشبع في الأسئلة عندما أجد أحديفيدني في البرمجة 0

هذه طرفة خفيفة مما واجهته في تعلمي برمجة أكسيس أجل ماذا كان سيحدث لي لو تعلم أوركل أو السي أو 0000 ربك يستر

أكرر شكري لك من أعماق قلبي

#7

يااااااااااه 500 ريال :eek: :eek:

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

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

و بذلك تكون انت الرابح حيث لا ينفع مال و لا بنون و حيث لا ينفع الندم

(f) (f) (f)

#8

أخي مصلج الامثلة الثلاثة فى الارشيف

http://www.arabteam2000.com/vb/showthread....&threadid=11695

http://www.arabteam2000.com/vb/showthread....&threadid=11696

counter2001.cgi?558002

#9

الأخ/ محمد طاهر

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

قمت بإنشاء مثال في الوصلة التالية :

http://www.geocities.com/ibnmuscat/Save.zip

تتلخص طريقة عمله في الأتي:

في حدث "قبل التحديث" للنموذج قمت بوضع الكود :الأول الذي تفضلت به علينا.

انشاءات زرين على النموذج ، الأول باسم (حفظ السجل) يحتوي على كود Me.Refresh والثاني باسم (خروج) يحتوي على كود DoCmd.Close وكلا الكودين موضوعين في حدث عند النقر.

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

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

والله الموفق.

ibnmusqat.gif
#10

لايقاف الرسائل ضع قبل أمر التحديث

DoCmd.SetWarnings false

و بعده فعل الرسائل ان أردت ب

DoCmd.SetWarnings True

counter2001.cgi?558002

ملاحظة : تم تصحيح الكود بعد أن كان معكوسا

#11

الأخ كريم / محمد طاهر

شكرا جزيلا ووفقك الله في كل خير.

ibnmusqat.gif
#12

الأخ الكريم/ محمد طاهر

أرجو المعذرة مرة أخرى على إزعاجك ولكنها الحاجة إلى التعلم.

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

فهل يوجد حل أخر ، معليش تحملني شويه .

ibnmusqat.gif
#14

الأخ الكريم/ محمد طاهر

أنت لم تعكس شيئاً من قبل ، والطريقة التي أريدها لم تعمل.

جربها من فضلك في مثالي السابق .

والله الموفق.

ibnmusqat.gif

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

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

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

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

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

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