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

حماية الحقول في النموذج من الحذف

بدأه سلامنا لكم في 22 نوفمبر 2011 · 17 رد · 7,303 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اخواني

عندي سؤالين

الاول:

كيف ممكن احمي الحقول في النموذج من التغيير والحذف بطريقة اخرى غير

طريقة من خصائص الحقل> بيانات > ممكن > لا

لان لون الحقل يصير باهت

الثاني:

كيف ممكن استدعي اطار الجدول امام اطار النموذج؟

لاحظ اطار الجدول خلف النموذج

ولا استطيع استدعاء الجدول امام النموذج عند النقر على الشريط العلوي للجدول

لاحظ الصورة

142148392.jpg

ولاحظ في هذه القاعدة تستطيع استدعاء اطار الجدول امام اطار النموذج

لاحظ الصورة

146516246.jpg

ارجو معرفة ذلك ومرفق لكم قاعدة البيانات

ولكم الشكر والتقدير

count.rar

#2

اجابة السؤال الاول

يوجد خاصية اخرى للحقل وهي " مؤمن " حدد " نعم "

فيبقى لون وشكل الحقل عادي

بالنسبة للسؤال الثاني

اعتذر لانه لا يوجد لدي اوفس 2007 او اعلى للاطلاع على مثالك .

بالتوفيق

سيد الاستغفار

{ اللهم أنت ربي لا إله إلا أنت خلقتني وأنا عبدك وأنا على عهدك ووعدك ما استطعت أعوذ بك من شر ما صنعت أبوء لك بنعمتك علي وأبوء لك بذنبي فاغفر لي فإنه لا يغفر الذنوب إلا أنت}

من قالها من النهار موقنا بها فمات من يومه قبل أن يمسي فهو من أهل الجنة ومن قالها من الليل وهو موقن بها فمات قبل أن يصبح فهو من أهل الجنة .رواه البخاري

#3

السلام عليكم أخي الفاضل

ممكن توضح لي ماهو الفرق بين( ممكن )وبين ( تم تأمينه)

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

وجزاك الله كل خير

#4

سلامنا لكم

المقصود بمأمن ان الشخص لايستطيع تعديل البيانات الموجوده بهذا الحقل نهائيا ولا يقدر يمسحها

#5

السلام عليكم

السؤال الاول قد تم اجابته من من السيد مالك

وهنالك طريقة اخرى هي عن طريق كتابة الكود

اما السؤال الثاني فهي اذهب الى خصائص النموذج واذهب الى تبويب غير ذلك

وغير خاصية منبثق من نعم الى كلا سيقوم بفتح الجدول فوق النموذج

#6

السلام عليكم

اخواني اشكركم على مروركم الكريم

وقد استفدت وتم المطلوب. بما انا مبتدىء بس ردت اجمع

بين الاوامر الجاهزة والكودات ومتى مباشر ومتى موجود كود

لاحظ أخ صفاء الموسوي في قاعدة البيانات المرفقة جميع الحقول

ممكن وغير مؤمن رغم ذلك لاتستطيع الحذف او التعديل

و ياريت اخ صفاء الموسوي ان تعطي الكود اللازم لذلك

وتشرح كيف يتم ذلك

وجزاكم الله خير جميعا.

birth.rar

تم تعديل هذه المشاركة بواسطة سلامنا لكم في 23 نوفمبر 2011 في 13:26

1
#7

اخي الفاضل

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

اضافة لما ذكره الأخوان الكرام فهذا ايضا حل آخر ولا يحتاج الى اي كود فقط من خصائص النموذج

post-15367-012866000 1322044076_thumb.gi

post-15367-011381500 1322044128_thumb.gi

za-count-UP.rar

بالتوفيق

المرفقات
SH1.gifSH2.gif
1
#8

اخي الفاضل

اذا رغبت ان تتم العملية بالكود

فضع في حدث الحالي للنموذج الكود التالي

Private Sub Form_Current()
Me.AllowEdits = False
End Sub

هذا الكود في النموذج الحالي يمنع اي اضافة او حذف او تعديل في اي حقل

اذا اردنا التعديل على اي حقل فيجب ازالة الشرط السابق وجعله True بدلا من False ولكن يكون ذلك تحت زر أمر في النموذج

Private Sub cmdAllowEdit_Click()
Me.AllowEdits = True
End Sub

بعد عملية التعديل والإنتهاء يجب اعادة الوضع السابق ما هو عليه اي عدم الإضافة او التعديل او الحذف ويكون ذلك في حدث بعد التحديث للنموذج

Private Sub Form_AfterUpdate()
Me.AllowEdits = False
End Sub

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 23 نوفمبر 2011 في 13:49

1
#9

السلام عليكم أخت زهرة

افرح فرحا شديدا عندما ارى اسمك (وجميع الاعضاء والمشرفين فيهم الخير والبركة). وانت تردين على اي مشاركة

واقراها بامعان على الرغم من اني ضعيف بالاكواد وسوف اجرب

الاكواد الموضوعة في المشاركة

تقدري اشوفي لي قاعدة البيانات المرفقة birth.rar

اعلاه قبل ردك

فيها السماح بالحذف(نعم) ماذا يقصد بها ؟ مع العلم لانستطيع الحذف فيها داخل الحقول

وجزاك الله خير

تم تعديل هذه المشاركة بواسطة سلامنا لكم في 23 نوفمبر 2011 في 13:57

1
#10

اخي الفاضل

تستطيع ان تجعل خصائص النموذج كما هي بدون اي تغيير

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

لأنه عندما نضع اي كود في حدث الحالي للنموذج فتكون الأولويه العليا لهذا الكود الموجود في حدث الحالي للنموذج

بالتوفيق

1
#11
سلامنا لكم كتب:

السلام عليكم أخت زهرة

افرح فرحا شديدا عندما ارى اسمك (وجميع الاعضاء والمشرفين فيهم الخير والبركة). وانت تردين على اي مشاركة

واقراها بامعان على الرغم من اني ضعيف بالاكواد وسوف اجرب

الاكواد الموضوعة في المشاركة

تقدري اشوفي لي قاعدة البيانات المرفقة birth.rar

اعلاه قبل ردك

فيها السماح بالحذف(نعم) ماذا يقصد بها ؟ مع العلم لانستطيع الحذف فيها داخل الحقول

وجزاك الله خير

zahrah كتب:

اخي الفاضل

تستطيع ان تجعل خصائص النموذج كما هي بدون اي تغيير

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

لأنه عندما نضع اي كود في حدث الحالي للنموذج فتكون الأولويه العليا لهذا الكود الموجود في حدث الحالي للنموذج

بالتوفيق

الأستاذة الفاضلة زهرة . . أتفق مع أخي في العبارة التالية : افرح فرحا شديدا عندما ارى اسمك (وجميع الاعضاء والمشرفين فيهم الخير والبركة). وانت تردين على اي مشاركة .. هذا حقيقي فعلاً ولا مجاملة فيه . . فإهتمام السادة مشرفي المنتدي بالرد عل إستفسارتنا يصقل خبراتنا ويدعم تواصلنا .

وأرجوا أن تسمحي لي بتوضيح إستفسارات أخي ( سلامنا لكم ) بخصوص قاعدة البيانات المرفقة بإستفسارة . . فأنا أعتمد دائما في جميع تصميماتي للنماذج علي وضع زر أمر تعديل سجل وحذف سجل . . بحيث لا يمكن التعديل في سجلات النموذج أو الحذف إلاً بعد الضغط أولاً علي زر تعديل سجل . .

أما بخصوص هذا الإستفسار :

اقتباس

فيها السماح بالحذف(نعم) ماذا يقصد بها ؟ مع العلم لانستطيع الحذف فيها داخل الحقول

فالمطلوب فعلاً هو عدم التغيير في خصائص جميع الحقول بالنموذج ( بإستثناء خاصية السماح بالتحرير في خصائص النموذج تضبط علي لا ) وفي المقابل يتم إنشاء زر تعديل للسجلات من خلال الأكواد البرمجية . . وذلك حتي يمكن التحكم في التعديل او الحذف عند الرغبه بذلك . . أما في حالة ضبط خواص التحرير والحذف والتأمين والتمكين فتترك كما هي بجميع حقول النموذج حتي يمكن التعامل معها عند الضغط علي زر تعديل سجل . . ففي حالة إغلاقها بلا لن نتمكن من الإستفادة من هذه الإمكانية . . فالمستخدم قد يحتاج غالباً الي إجراء بعض تعديلات أو حذف سجلات قديمة في قاعدة البيانات . . لذا يجب أن نترك له هذه الإمكانيه مع تأمين واجهة البرنامج (نموذج الإدخال) ضد العبث بالخطا في البيانات .

وأستأذنك أختي ايضا في توضيح بعض الخطوات البسيطة لتنفيذ تلك الأكواد التي وضحتيها في الرد بأسلوبك الرائع :

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

لذلك سنبدأ هنا بتوضيح طريقة سهلة يمكن بها ضبط خواص النموذج وتعديلها باستخدام كود الفجوال بيسك VISUAL BASIC لمنع حدوث أخطاء أثناء العمل مع النموذج . . وهذا الشرح منقول من كتاب (ACCESS & VISUAL BASIC , Database Applications Programming ) ( برمجة أكسيس , إنشاء وتطوير تطبيقات قواعد البيانات في كل من أكسيس وفيجوال بيسك ) للكاتب أحمد شوقي شاهين - وهو من الكتب العبقرية والمتميزة .. فهو علي الرغم من صدوره منذ سنوات عديدة إلاً أن به من الأفكار وطرق الشرح المتميزة ما يؤهله أن يظل مرجع لغير المحترفين حتى الآن . .

ملحوظة : تم توضيح اسم الكتاب والكاتب للأمانة فقط !! فهذا الكتاب غير متداول في الأسواق حالياً لصدوره منذ سنوات عديدة _ ويصعب إصدار طبعات جديدة من كتب الكمبيوتر لتقادمها ) .. وهذا للتنويه .

أولاً : جعل النموذج للقراءة فقط .

1 - يتم فتح النموذج في وضح التصميم . . ثم يتم النقر نقراً مزدوجا علي المربع الموجود أعلي يسار النموذج . . فيظهر صندوق الخصائص للنموذج كما بالشكل التالي :

132204486232.png

2 - في تبويب بيانات يتم ضبط خاصية السماح بالتحرير علي لا .

3 - أغلق صندوق الخصائص وقم بتشغيل النموذج . . ستجد أنه عندما تقوم بإجراء تعديلات علي السجلات المدخلة ، لن يقبلها النموذج . . حيث يقبل سجلات جديدة فقط !!

ثانياً : إضافة زر لإجراء التعديلات علي سجلات النموذج

1 - حتى تتمكن من إجراء تعديلات علي سجلات النموذج ، سنقوم بإنشاء زر أمر جديد لتغيير خاصية النموذج ليسمح بإجراء تعديلات علي سجلاته كالتالي :

أ. ننتقل لوضع تصميم نموذج مرة أخري .

ب. نجعل زر معالجات عناصر التحكم الموجود علي مربع الأدوات في وضع عدم التشغيل كما بالشكل التالي :

1322044862283.png

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

1322044862744.png

د. نحدد زر الأمر وننقر داخلة لتغيير الاسم الي تعديل سجل

1322044862425.png

هـ . ثم ننقر بالزر الأيمن للفأرة علي هذا الزر ونختار بند منشئ البرامج وننقر موافقة :

1322044862576.png

1322044862197.png

و . سيظهر إطار فئة وحدة نمطية خاص بزر تعديل السجلات ونكتب الأوامر التالية :

1322044862558.png

وسيسمح هذا الأمر للنموذج بإجراء تعديلات علي السجلات .

Me. AllowEdits =True

وأيضا هذا الأمر يقوم بنقل المؤشر إلي حقل الاسم الأول عند تنفيذ الإجراء .

x. SetFocus

"حيث X هو حقل رقم الهوية"

وبعد كتابة الإجراء يتم الحفظ وإغلاق الوحدة النمطية لتعود للنموذج مرة أخري .

ثالثاً : لإنشاء إجراء لأحداث النموذج .

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

مما يتطلب تعديل خواص النموذج ليسـمح بإجراء تعديلات فقط عند تحديد سجل معين والنقر علي زر تعديل سجل فقط ثم يعود بعدها النموذج لينغلق علي بياناته مرة أخري .. وذلك بإتباع الخطوات التالية :

أ. ننتقل لوضع تصميم النموذج ثم ننقر نقراً مزدوجا علي المربع الموجود أعلي اليسار ( كما سبق شرحه ) ليتم عرض خواصه .

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

132204486249.png

ج. فيظهر صندوق حوار اختيار المنشئ . فننشط بند منشئ البرامج ليظهر إطار فئة وحدة نمطية خاصة بأحداث النموذج . . ونكتب الأمر التالي :

Me.AllowEdits = False

1322045091445.png

د. ثم ننسخ الأمر السابق بتحديده ( نسخ , لصق ) .. ولصقه في خاصية أخري من خواص النموذج وهي قبل التحديث AfterUpdate كما بالشكل التالي :

1322047672641.png

13220448626110.png

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

ثم نقوم بالضغط علي زر حفظ الموجود علي شريط الأدوات لحفظ الوحدات النمطية والعودة للنموذج مرة أخري لاختبار تلك الإجراءات .

رابعاً : إضافة زر حذف السجل للنموذج .

ويتم ذلك باستخدام معالج أزرار الأوامر كما بالشكل التالي :

1322045091391.png

1322045091372.png

1322045091483.png

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

تحياتي ..

تنويه : سبق توضيح هذا الشرح علي الرابط التالي : تصميم نموذج وتقرير

تم تعديل هذه المشاركة بواسطة ماجد الأسيوطي في 24 نوفمبر 2011 في 11:43

1
#12

الاخ ماجد الاسيوطي اتبعت خطواتك بالتفصيل

وعملت زر التعديل وحددت السجل المراد تعديله وضغطت على زر التعديل ولم يعدل فية ولا السجلات الاحقة

ثم عملت خطوات تغيير خصائص النموذج لكي يتم تعديل سجل محدد فقط ولم يتم

التعديل.

ارجو منك ملاحظة الاكواد واخباري بالخطأ مرفق قاعدة البيانات

وجزاك الله كل خير

za-count-UP.rar

تم تعديل هذه المشاركة بواسطة سلامنا لكم في 24 نوفمبر 2011 في 23:16

#13

(ارجو منك ملاحظة الاكواد واخباري بالخطأ مرفق قاعدة البيانات ..)

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

تقبل تحياتي . .

#14

السلام عليكم

الاخت زهرة وفيتي وكفيتي

بس اريدك تلاحظي اكواد الاضافة والحذف والتعديل لم تعمل في القاعدة المرفقة Student1.rar لماذا ؟؟وجزاك الله الف خير

student1.rar

تم تعديل هذه المشاركة بواسطة سلامنا لكم في 24 نوفمبر 2011 في 23:20

#15
سلامنا لكم كتب:

السلام عليكم

الاخت زهرة وفيتي وكفيتي

بس اريدك تلاحظي اكواد الاضافة والحذف والتعديل لم تعمل في القاعدة المرفقة Student1.rar لماذا ؟؟وجزاك الله الف خير

اخي الفاضل

كل الأكواد تعمل بصوره صحيحه

فعند فتح قاعدة البيانات لا تستطيع الحذف ولا التعديل ولا الإضافة على الحقول

والسبب انه في حدث الحالي للنموذج جميع هذه الخصائص تم ايقاف عملها

يتم السماح لكل الخصائص بعد الضغط على زر الأمر الموجود على النموذج

بحيث تستطيع الإضافة او الحذف او التعديل على حقول النموذج

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

بالتوفيق

1
#16

السلام عليكم

اخت زهرة جزاك الله خير

فتحت قاعدة البيانات وظهر لي النموذج بواجهة السجل الاول وبدون الضغط على زر التعديل

غيرت الحرف a الى الحرف m والتسلسل من 1 الى 10 وعملت كلك يمين على النموذج وعملت حفظ

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

معناه تغيرت الحقول بدون الضغط على زر التعديل.

هل في مشكلة في برنامج الاكسس اللي معي ؟؟؟

ارجو ملاحظة قاعدة البيانات المرفقة

ومشكورة

student1.rar

تم تعديل هذه المشاركة بواسطة سلامنا لكم في 25 نوفمبر 2011 في 12:40

1
#17

اخي الفاضل

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

وهذا يعني واحد من اثنين

1. برنامج الأكسيس لديك به مشكله ما وتحتاج الى ازالة كامل برنامج الأوفيس وانزال نسخة محدثه جديده

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

بالتوفيق

1
#18

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

بالتوفيق

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

هل اذهب الى خيارات اكسس مثلا ؟؟؟ ارجو مساعدتي في ذلك

وجزاك الله خير

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