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

ربط مربعي تحرير وسرد

مغلق
بدأه alotaif في 11 ديسمبر 2005 · 4 رد · 5,240 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخ eng_george1

السلام عليكم.

كنتَ قد سألت عن ربط مربعي تحرير وسرد في أعقاب سؤال آخر وليس بينهما صلة فأحببت أن أفرد لك موضوعا خاصا بالسؤال الثاني تجنباً لمخالفة قوانين المنتدى، ومع أن الموضوع قد سبقني إليه كثير _سأورد الروابط المشابهة_ إلا أني رأيت أن أضع لك مثالا مرفقا مع الشرح بالخطوات، وقد يكون مثالي من وجهة نظري خاليا من الأكواد بسيطا ويصلح للمبتدئين ،وكلنا نتعلم.

إلى الشرح:

تصميم قائمتين أو مربعي تحرير وسرد يعتمد الثاني على الأول أي يأتي الثاني بعناصر تناسب المربع الأول هي كالتالي:

أولا الجدوال.

1- صمم الجدول الأول ليضم التخصصات العامة

2- صمم الجدول الثاني ليضم التخصصات الفرعية

3- اجعل المفتاح الرئيسي لكل جدول هو رقم التخصص.

* لماذا المفتاح؟ عند تصميم مربع التحرير والسرد يعطينا خاصية إخفاء المفتاح "أي رقم التخصص" ومع ذلك تبقى قيمة مربع التحرير رقمية وليست نصية كما تظهر في النموذج، ونستفيد من هذا في جعل المربع الأول عامل تصفية للمربع الثاني.

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

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

5- صصم نموذجا وضع عليه مربع التحرير والسرد الأول واجعل مصدر بياناته جدول التخصصات العامة ثم سمه اسما مناسبا لتسهل الإشارة إليه فيما بعد.

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

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

7- عد إلى وضع التصميم للنموذج وانقر المربع الثاني نقرتين لفتح الخصائص حدد التبويب بيانات واختر مصدر الصف وانقر على الثلاث النقاط في الجانب الأيسر.

8- يظهر أمامك الاستعلام الذي يشكل مصدر البيانات، أضف إلى حقوله حقل رقم التخصص العام إذا لم تكن قد أضغته من قبل.

9- ضع المؤشر في المعايير للحقل الذي أضفته الآن. وفي خاصية المعايير سوف نشير إلى مربع التحرير والسرد الأول ليقوم بالتصفية للمربع الثاني ويظهر فقط التخصصات الفرعية المناسبة للتخصص العام. وطريقة الإشارة مثل الكود التالي:

[forms]![taalim]![aa]

يعني: (نماذج،اسم النموذج،مربع التحرير والسرد الأول). ومن أجل ذلك اقترحت عليك تسميته باسم مناسب ليسهل الإشارة إليه كما أنه يمكن الإشارة إليه بأي اسم كان"مربع تحرير وسرد1.

10- احفظ التغيير الذي أجريته.

11- انقر على مربع التحرير والسرد الأول لفتح خصائصه.

12- في حدث بعد التحديث انقر النقاط الثلاث ليفتح لك منشئ البرامج أي محررالفيجوال، واكتب الكود الصغير التالي:

Me.Refresh

احفظ ثم جرب وبالتوفيق

الروابط للمواضيع المشابه جميلة ومعبرة عن الهدف. وشكرا لكل من أسهم بعملها.

الربط بين مربعين

المدن والدول أيضا ربط بين مربعين

الربط بين ثلاثة مربعات تحرير وسرد

________________.rar

1

عبدالله عطيف

#2

بارك الله فيك وشكراً لك على هذه المعلومات المفيدة .

تحياتي ..

#3

أشكرك أخي alotaif على هذا الشرح الجميل .

ولكن عندي مشكلة وهي :

عندما أريد إنشاء جدول ثالث ؛ وسمه مثلاً جدول الفئات - وبطبيعة الحال سيكون عندي سجلات كثيرة ( وليس سجل واحد ) -

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

عندما أفتح السجل الأول في نموذج الفئات سوف أختار أحد التخصصات العامة ثم سأختار أحد التخصصات الفرعية المندرجة تحت التخصصات العامة ثم أحفظ النتيجة

إلى الآن الشغل تمام

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

تمااااام

- الآن تأتي المشكلة -

عد إلى السجل الأول : سوف تجد التخصصات الفرعية فارغة ، والمصيبة أنك عندما تريد اختيار التخصص الفرعي تخرج لك التخصصات الفرعية التي تتبع تخصصات السجل الثاني العامة ،،،،،،،،، وهكذا في باقي السجلات

هل الخطأ مني أم من نفس الفكرة ؟؟؟

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

تم تعديل هذه المشاركة بواسطة معاوية في 23 فبراير 2006 في 17:39

#4

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

الاخ الكريم معاوية

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

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

وعمل هذا يتم بمنتهى البساطه بوضع جملة التنشيط

Me.Refresh

فى حدث (فى الحالى او On Current) للنموذج , وهذا كل العلاج .

عامة مرفق ملف الاخ alotaif وبه الاضافة البسيطة دى.

وبالتوفيق ان شاء الله,,,

2CombBox.rar

أشهد أن لا إله إلا الله وأشهد أن محمدا رسول الله

bnr025.gif

مـــوقـــعـــى

#5

أشكرك أخ عماد على التجاوب معي ، فعلاً كلامك مضبوط وبارك الله فيك

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

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