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

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

مغلقمُجاب
بدأه الاناكوندا في 18 فبراير 2012 · 13 رد · 1,992 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اخواني الكرام عندي مشكلة في الاكسس وبصراحة تعبت وانا ابحث جواب في النت .

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

لاحظ " السجل يعني مجموعة الحقول " سوا اسم الطالب او العمر او غيرها التابعه للسجل الواحد .

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

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

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

هذه مشكلتي هل يوجد لها حل؟

يعني بختصار

النموذج المرفق نريد عند ادخال الرقم السري للتعديل " لايعدل إلا السجل الحالي " الواقف عليه الشخص الأن لو ضغط على زر التالي وانتقل إلا سجل آخر " ترجع الحماية للتعديل من جديد " .

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

إلا بحالة انتقل الشخص وضغط على زر التالي ثم عاد إليه بحيث الحماية " نريدها عند اي سجل " دخل إليه او عاد إليه .

اتمنى وصلت الفكرة ..

النمووووووووذج بالمرفقات ملاحظات " نسخة برنامجي 2003 " ياليت اي شخص يحل المشكلة يحفظ بنسخة 2003 ويشرح لنا ماذا عمل ؟

لجل نستفيد من الشرح.

تجربة التعديل.rar

#2

تفضل اخي الكريم

ملفك بعد التعديل

كل ما عليك هو القيام بالتالي

اضافة هذا الكود لجميع ازرار الأمر في النموذج

Me.AllowEdits = False

ايضا اضافة هذا الكود في حدث بعد تحديث النموذج ( ستظهر الرسالة لتأكيد الحفظ في حالة سجل جديد او تعديل على سجل فقط )

Private Sub Form_AfterUpdate()
If Form.Dirty Then
If MsgBox("هل تريد حفظ التعديل", vbYesNo) = vbNo Then
DoCmd.RunCommand acCmdUndo
Else
DoCmd.Save
End If
End If
End Sub

za-تجربة التعديل.rar

بالتوفيق

2
#3

الله يعطيك العافيه اختي زهرة جربت الاكواد ولكن هل نسيتي شيء آخر اقوم بالتعديل عليه؟

لاني ضفت Me.AllowEdits = False

لجميع ا زرار الامر بالنموذج .

وايضاً .

If Form.Dirty Then

If MsgBox("هل تريد حفظ التعديل", vbYesNo) = vbNo Then

DoCmd.RunCommand acCmdUndo

Else

DoCmd.Save

End If

End If

End Sub

بعد تحديث النموذج

ويعمل تماماً ولكن .؟ مازالت مشكلة عند اضافة سجل جديد؟ وكتابة اي حقل من السجل الجديد تظهر لي رسالة هل تريد حفظ التعديل؟

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

1
#4

اممممممممممم وجدت الخطأ قمتي بإزالة " رسالة التعديل " من حقل اسم الطالب . وتركتيها بأخر حقل العمر؟ لانه آخر حقل وبعده يتم الضغط على التالي .

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

#6

ممتاز جداً .. ياليت تخبرينا ماهو العمل الذي قمتي به بالتعديل؟ لجل نفهم اين كان الخلل او الاضافات

ياليت اختي زهرة تشرحي لنا ..

#7
الاناكوندا كتب:

ممتاز جداً .. ياليت تخبرينا ماهو العمل الذي قمتي به بالتعديل؟ لجل نفهم اين كان الخلل او الاضافات

ياليت اختي زهرة تشرحي لنا ..

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

1. قمت بحذف الحدثين

حدث بعد التحديث لإسم الطالب

و حدث بعد التحديث للعمر

2. قمت بنقل الكود من حدث بعد التحديث للنموذج الى حدث قبل التحديث للنموذج فقط

بالتوفيق

1
#8

الله يعطيك العافيه اختي زهرة وجدت هذا التعديل ايضاً بزر التعديل هل اقوم به؟ في حدث تعديل عند النقر

'Private Sub العمر_AfterUpdate()

'If Form.Dirty Then

'If MsgBox("هل تريد حفظ التعديل", vbYesNo) = vbNo Then

'DoCmd.RunCommand acCmdUndo

'End If

'End If

'End Sub

'Private Sub رقم_الطالب_AfterUpdate()

'If Form.Dirty Then

'If MsgBox("هل تريد حفظ التعديل", vbYesNo) = vbNo Then

'DoCmd.RunCommand acCmdUndo

'End If

'End If

'End Sub

Private Sub تعديل_Click()

If InputBox("ادخل رقم السري") = "Aspani" Then

Me.AllowEdits = True

Else

MsgBox "الرقم السي غير صحيح يرجى محاولة مرة اخرى"

End If

End Sub

#9

اخي الفاضل

اترك التعديلات الاخيرة في المثال الاخير كما هي

بالتوفيق

#10

عفواً .. مافهمت انتي بالكود الاخير ضايفه اكواد اسم الطالب والعمر دآخل زر " التعديل " هل افعل هكذا او لا ؟

داخل امر التعديل

'Private Sub العمر_AfterUpdate()

'If Form.Dirty Then

'If MsgBox("هل تريد حفظ التعديل", vbYesNo) = vbNo Then

'DoCmd.RunCommand acCmdUndo

'End If

'End If

'End Sub

'Private Sub رقم_الطالب_AfterUpdate()

'If Form.Dirty Then

'If MsgBox("هل تريد حفظ التعديل", vbYesNo) = vbNo Then

'DoCmd.RunCommand acCmdUndo

'End If

'End If

'End Sub

Private Sub تعديل_Click()

If InputBox("ادخل رقم السري") = "Aspani" Then

Me.AllowEdits = True

Else

MsgBox "الرقم السي غير صحيح يرجى محاولة مرة اخرى"

End If

End Sub

على الرغم من اني قمت بمسحها ويعمل بشكل عادي النموذج وضفتها ايضاً بشكل عادي يعمل ؟ ولكن هل لها شيء مهم لجل افهم واتركها او امسحها .

بنتظارك اختي الكريمة

#11 أفضل إجابة

اخي الكريم

يبدو انك مبتدأ جدا في اكواد الأكسيس

بالنسبة للأكواد الخاصة بإيم الطالب والعمر فقد قمت بإيقافها عن العمل عندما وضعت امام كل سطر علامة تنصيص واحده ( ' )

ويعني هذا اننا لا نريد استخدام الكود

عموما تفضل الملف بعد حذف الأكواد التي سببت لك ارباك ( ستجد التعديلات الأخيره في اخر الأكواد )

za-تجربة التعديل-UP2.rar

بالتوفيق

#12

بارك الله فيك اختي زهرة والله يعطيك العافيه .. شكراً لك .. والله بالنسبة انا مبتدئ " في الاكسس " مالي ثلاث ايام بالنسبة للاكواد وطرق تعديلها .

لاني رغم تمكني من العمل على اكسس بشكل افتراضي وبسيط جداً لم اتعمق فيه سوا هذه الفترة .

وحبيت اعمل شيء على مستوى برنامج يكون على مستوى . لكن احب اتعمق بالشيء واسأل كثير لجل ا فهم مصدره وطريقته لجل اطور فيه وألف عليه لأصل لنتيجة .

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

اريد اسم مستخدم + باسورد <== لفئة مثلاً مستخدمين بحيث لاتظهر لهم سوا النموذج ويقومون بالادخال منه وبالاستعلام وعمل التقارير .

واسم مسؤول + باسورد <== لفئة ادمن مثلاً عند الدخول فيه تظهر له جميع الخصائص للتعديل على البرنامج كاملاً .

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

اريد العمل مرفق + الاهم " الشرح كيف تم العمل " لجل نفهم لو تكرمتي ا ختي زهرة في طريقة ادخال المسؤولين والمستخدمين .

لان المثل الصيني يقول " لاتطعمني كل يوم سمكه . ولكن علمني كيف اصطاد " <== خطير المثل .

الله يعطيك العافيه بنتظارك واستحملوني راح اسئل اسئلة بسيطه وخطيره ومتقدمه ومبتدئه إلا ان اتمكن من الاكسس وادخل على الأوراكل <==طموح .

شكراً لك اختي الكريمة وبنتظار الدرس .

تحيتي

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

#13

اخي الفاضل

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

واذا رغبت في طرح الأسئلة فتذكر قوانين المنتدى والمشاركات بحيث لا تضع كل اسئلتك في سؤال مشاركة واحده إلا اذا كان السؤال يتعلق بهذه المشاركه

فمثلا لو قمت بالسؤال في مشاركة ما عن طريقة استيراد ملف اكسيل الى الأكسيس وتمت الإجابة عليك

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

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

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

/index.php?showtopic=187660

بالتوفيق

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

#14

الله يجزاك خير اختي زهرة شكراً لك .

تحيتي

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

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

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

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

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

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