• 0
الأستاذ2010

[ تمت الإجابة ]واجهة واحدة لقاعدتي بيانات

سؤال

الأخوة الأفاضل

السلام عليكم

ازاي أعمل واجهة واحدة لقاعدتين مختلفتين على غرار برنامج معارف في التربية والتعليم في السعودية

بمعنى

فيه قاعدتين maaref وبها الجداول الخاصة بها بالطلاب ودرجاتهم وهكذا وهي خاصة مثلاً بالمرحلة الابتدائية

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

ودعنا نقول أن الجداول في القاعدتين متشابهة تماما

المطلوب ازاي أعمل واجهة للمستخدم في برنامجي الي انا عملته وهو خاص بالدرجات ازاي أعمل واجهة بحيث انه لو أختار المعلم المرحلة الابتدائية يحضر له جداول المرحلة الابتدائية من maaref ويشتغل المعلم ويدخل درجاته واذا اختار المرحلة الثانوية يحضر له جداول المرحلة الثانوية من mcaref المشكلة ان الجداول متشابهة وبنفس الاسم وبعدين افرض ان المعلم شغال في الابتدائي والثانوي معاً هيحتفظ بالدرجات ازاي يعني لما يجلب جداول الابتدائي جداول الثانوي هتروح فين ولما يجلب جداول الثانوي جداول الابتدائي هتروح فين

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

لعلكم تكونوا فهمتم مطلبي

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

18 إجابة على هذا السؤال .

  • 0

السلام عليكم

بس اتوقع ان برنامج معارف محمي وليس مفتوح للتعديل والنسخ!

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

اعمل 2sql connections كل واحد لقاعدة بيانات

اذا اردت ان تستخدم القاعدة الخاصة بالابتدائية’ استخدم ال connection الاول

والثاني للثاني

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل

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

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

http://www.arabteam2000-forum.com/index.php?showtopic=29343

لأن السؤال يكون عام للجميع بدون تخصيص احدا بالإسم او بالإجابه فقد يجيب عليك من هو افضل مني بكثير .

عموما قم بإنشاء مجلد بإسم maaref وضع به ثلاث قواعد بيانات - الأولى maaref.mdb للمرحلة الإبتدائية وبها الجداول فقط والقاعدة الثانية mcaref.mdb وبها الجداول فقط للمرحلة الثانوية .

الآن قم بتعبئة كل حقول الجداول في القاعدتين ببيانات مختلفه .

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

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

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

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

إليكم المطلوب أرجو منكم التعديل عليه

maaref.rar

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل

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

تفضل هذا البرنامج بناء على طلبك

آلية عمل البرنامج

1. قم بوضع المجلد maaref الموجود في الملف المرفق والذي يحتوي على ثلاث قواعد بيانات وهي ( ابتدائي - ثانوي - الواجهه ) على محرك الأقراص C وسيكون بهذا الشكل C:\maaref

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

post-15367-1204981243_thumb.gif

3. اختر احدى المراحل من خانات الإختيار سواء ابتدائي او ثانوي ثم اضغط على زر الأمر " فتح نموذج ادخال البيانات "

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

post-15367-1204981429_thumb.gif

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

post-15367-1204981456_thumb.gif

ملاحظة هامه :

1. كما اسلفنا ضع المجلد maaref على محرك الأقراص C

2. لا تحاول ابدا تغيير اسماء الجداول فقد تم برمجة الكود بناء على الأسماء الموجوده في قاعدتي البيانات ( ابتدائي و ثانوي )

3. في حالة الرغبه في وضع نماذج جديده في قاعدة الواجهه بناء على جداول تم اضافتها في احدى القاعدتين - ابتدائي - ثانوي - فأبلغنا لكي نقوم بتعديل الأكواد الخاصة بذلك .

4. اذا كان لديك مجلد سابقا بإسم maaref على محرك الأقراص C فيفضل تغيير اسمه او نقله الى مكان آخر حتى لا يقوم البرنامج بالربط مع المجلد الخاطىء .

maaref.rar

بالتوفيق

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخت الفاضلة / زهرة جزاك الله خيراً حاجة كويسة جداً

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

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

بس لو تفهميني شوية أكون شاكر هوه الي انا قدرت أفهمه انك عملتي دالتين واحدة للجدول tabel01 والثانية للجدول tabel02 بس دي أسماء انا حاططها في المثال المرفق فقط لكن اسماء جداول القاعدة الأصلية بتاعتي ( البرنامج ) adb , kimo , math وهكذا يعني حوالي 33 جدول

فبس لو حضرتك تقوليلي اغير اسماء الجداول فين في الكود وهل لازم دالة لكل جدول على حده يعني معقول نعمل 33 دالة زي الي حضرتك عملتيها للجدولين

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

ولكي كل الشكر والامتنان على سعة صدرك واهتمامك بالغلابة الي زينا ( المبتدئين ) أرجو أن توضحي لي هل انا فهمت شغلك غلط ولا صح عشان أطمئن بس

وشكر لكي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخت زهرة

لا خلاص عرفت اغير في في الدالة عشان تتوافق مع اسم الجدول بتاعي بس الي فهمته ان من شغلك كده يلزم لكل جدول دالة يعني لو عندي 33 جدول أنسخ والصق 33 مرة دي حاجة الحاجة الثانية عند استدعاء الدالة call ازاي احطها مع case1 يعني ازاي تنفذ عدة أوامر في سيلكت كيز في case1

حاولت احطها على هذا الشكل

Case 1

Call zAutoLinkadb

Call zAutoLinkkimo

منفعتش استورد جدول الأدب وبدله على طول بجدول الكيمياء

يعني المشكلة دلوقتي هل أعمل لكل جدول دالة

الثانية كيفية استدعاء كل دالة في case1

ولكي الشكر

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل

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

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

بالنسبة للحوسه اللي انت عملتها في انشاء 33 دالة للجداول فهذا خطا. فلا نحتاج سوى دالتين ( داله للربط بجداول قاعدة ابتدائي و دالة لربط قاعدة ثانوي ) لذا كما لاحظت انني قمت بالتفريق بين اسماء الجداول بوضع ارقام اضافية معها مثل 01 و 02 لكي تعرف انها لقاعدتين مختلفتين .

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

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

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

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخت الفاضلة / زهرة

أرفقت لحضرتك الملف وبه القواعد الأصلية

ثانوي ليلي ومتوسط ليلي وثانوي نهاري والواجهة ثلاث قواعد بالاضافة للواجهة

كما طلبتي حضرتك

وشكرا

maaref.rar

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل

يوجد بعض الملاحظات و الإستفسارات على القواعد التي قمت بإرفاقها فياريت توضح لنا المطلوب التالي :

1. يوجد في المجلدات التالية :

مجلد ثانوي نهاري - قاعدة بيانات ( ثانوي ليلي ) يوجد بها الجداول فقط

مجلد ثانوي ليلي - قاعدة بيانات - ( ثانوي نهاري ) يوجد بها الجداول فقط

مجلد متوسط ليلي - قاعدة بيانات ( ثانوي ليلي ) يوجد بها الجداول فقط

هل كل قواعد البيانات هذه هي نفسها قاعدة بيانات ثانوي ليلي

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

اعتقد انه يوجد لديك خطا ما اثناء نسخ ولصق قواعد البيانات .

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

2. يوجد في قاعدة الواجهه نماذج معتمده على جدول واحد مثل

نموذج الحاسب الآلي يعتمد على جدول الحاسب الآلي

ونموذج التربية البدينه ايضا يعتمد على جدول الحاسب الآلي

والمفروض ان كل نموذج يعتمد على جدول معين

3. هل قواعد البيانات التي بها الجداول والواجهه موضوعه بهذا الشكل في مجلدات خاصة كما ارفقتها انت ام انها جميعا موجوده في مجلد واحد فقط هو مجلد معارف على محرك الأقراص بهذا الشكل C:\maaref

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

اتمنى ان تشرح لنا كل نقطه حتى يتم البدء في الموضوع ولا تعتقد انه ينتهي خلال دقائق فهو يحتاج الى وقت .

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخت الفاضلة / زهرة

انا عارف ان فيه مشكلة في تصميم الجداول بس الموضوع ده من سنتين يعني فيه 3 قواعد متوسط ليلي وثانوي ليلي وثانوي نهاري

القاعدتين ثانوي ليلي وثانوي نهاري متشابهتين تماما بس الاختلاف عند استيراد الآسماء من برنامج معارف المدرسي لأن زي حضرتك عارفة الليلي mcaref والنهاري maaref المهم عملت برنامجين واحد ليلي وواحد نهاري

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

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

فأنا أرفقت القواعد الأصلية بها الجداول فقط زالقاعدة الواجهة بها النماذج والتقارير والاستعلامات ( الوجهة )

أنا عايز ايه

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

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

ماعدا مادتي التربية البدنية والحاسب الآلي نماذج مستقلة ومعتمدة على جداولها

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

مش عارف هل استطعت أن أوصل لكي المطلوب ولا لأ

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

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

لا يوجد مشكله بارك الله بك

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

الشيء الآخر الذي لم تجيب عليه حتى الآن هو :

هل كل قواعد البيانات موجوده في مجلد واحد وهو C:\maaref ام ان كل قاعدة موجوده في مجلد مستقل لوحده ؟

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

هل اسم قاعدة البيانات الخاصة بالثانوي ليلي هو mcaref.mdb ام انه بهذا الشكل ثانوي ليلي.mdb وكذلك النهاري maaref.mdb ام انه ثانوي نهاري.mdb وهذا ايضا ينطبق على المتوسط يعني هل اسماء قواعد البيانات بالعربية ام بالإنجليزيه

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

والله ماشاء الله خطيرة ام عهود

تدرون ودي والله ان النقاش يطول ( الاخبطة بعض الاحيان حلوة ونستفيد منها :thumbup: )

الله يحفظ لكِ عهود ياام عهود ( بصماتك واضحه بالمنتدى ولك الأجر إن شاء الله )

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخت الفاضلة / زهرة

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

الأسماء مش مشكلة سميها أي حاجة يعني ممكن الثانوي الليلي يكون ( mc) والنهاري ( ma ) والمتوسط الليلي ( mb )

بس الأهم ياريت يكون مسار القواعد كلها C:\Program Files\maaref علشان لما أستخدم برنامج تسطيب الأكسس هيكون المسار كذلك لأنه لا يمكن تغيير المسار في برنامجك تسطيب الأكسس بيكون المسار تلقائي C:\Program Files وبداخل المجلد maaref توجد القواعد الثلاثة مع القاعدة الواجهة

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

وشكرا جزيلاً لاهتمامك بالموضوع

وأنا تعبتك أكثر من اللازم بس انتي لها وأدامك الله زخرا لهذا المنتدى العظيم بيكي

شكرا جزيلاً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

البرنامج بناء على طلبك بالحرف الواحد

post-15367-1205148549_thumb.gif

بعد فك الضغط عن الملف خذ المجلد maaref الذي يحتوي على كل قواعد البيانات وضعه في المجلد C:\Program Files ليصبح بهذا الشكل C:\Program Files\maaref

الآن قم بتشغيل قاعدة البيانات degree.mdb وهي قاعدة الواجهه وسيفتح لك مباشرة النموذج الخاص بإختيار المراحل الثلاث .

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

maaref.rar

بالتوفيق

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكرا لكي اختي الكريمة زهرة وبارك الله فيكي وجزاكي الله خيرا على مجهوداتك الرائعة في هذا المنتدى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بسم الله الرحمن الرحيم

تمت الإجابة على الموضوع

إدارة الفريق العربي للبرمجة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاكى الله كل خير يا أم عهود

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .