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

كيف يمكن عمل display item (list of value)

مغلق
بدأه format82 في 26 أبريل 2006 · 8 رد · 1,494 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كيف يمكن عمل display item (list of value) اي اذا قمت بضغط علي edit معين يظهر لي محتويات جدول ثم اقوم بضغط علي حقل معين يقوم بتنزيلها علي ال edit (اي يسهل عملية الادخال للبيانات)(جدول اساسي وجدول فرعي)

#2

ما رأيك لو استعملت Combobox و في خاصية الـ Items قم بتحميل محتويات عمود معين من الجدول الذي تريده وعند الضغط على الـ Combobox

تجعل المستخدم يختار ما يريد وبذلك تكون قد سهلت الإدخال.

الطريقة:

ضع Combobox على الفورم و حدث الـ Onshow مثلاً ضع الكود التالي:

  ComboBox1.Items.Clear;
  ADOTable1.DisableControls;
  try
    ADOTable1.First;
    while not ADOTable1.Eof do
    begin
      ComboBox1.Items.Add(DataSource1.DataSet.FieldValues['Your Field']);
      ADOTable1.Next;
    end;
  finally
    ADOTable1.EnableControls;
  end;

وبالتوفيق ;)

#3

استخدم Combobox الموجودة في الصفحة standard حيث تقوم بتعبئة القيم من الجدول عند انشاء الفورم مثلا

و يظهر لك القيم التي في الجدول ثم تختار احداها

كما يمكنك استخدام DBCombobox او DBLookUpCombobox حيث في الاخيرين يمكن الربط مع datasource

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

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#4

يبدو انّ احد الاعضاء سبقني في الرد

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#5

مثلا هنالك علاقة بين جدولين في الجدول الاول فيها اسم الطالب والرقم والفصل الدراسي والقسم والجدول الثاني فيها نفس البيانات + النتجة المواد) انا اريد عند الضغط علي اسم الطالب يظهر لي dbgrid وعند الضغط علي حقل معين يجلب لي كل البيانات من الجدول الاول في ال edit المعني (مثلا اسم الطالب في edit1 والقسم في edit2 الخ)

#6
اقتباس
اسم الطالب والرقم والفصل الدراسي والقسم والجدول الثاني فيها نفس البيانات + النتجة المواد

هناك مشكلة في تصميم قاعدة البيانات اذا كانت مثل ما تتحدث

فنحن عند تصميم علاقة بين جدولين لا نضع كافة الحقول في الجدول الثاني انما نضع فقط حقل PK من الجدول الاول في حقل FK

في الجدول الثاني و بالتالي يتحقق الربط بين الجدولين

في المثال الذي تطرحه ممكن ان يكون على الشكل التالي

الجدول الاول

رقم الطالب مفتاح اساسيPK

رقم الفصل الدراسي

اسم الطالب

القسم

.....

الجدول الثاني

رقم الطالب FK : هو حقل مفتاح غريب او ForienKey للجدول الاول يتم وضع فيه رقم الطالب هنا يتحقق الربط بين الجدولين

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

نتيجة المادة

بهذا يكون تصميم قاعدة البيانات لديك سليم

الان كيف سوف اجمع البيانات اي كيف سوف اعرض كل طالب هو و نتائج علاماته ؟

هنا تستخدم تعليمات SQL لربط الجدولين مع بعضهما البعض و من ثم تحصل على ما تريد مثل ما يلي

select * from table1 inner join table2 on table1.StudentID = table2.StudentFK

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

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

الأسس العلمية لقواعد البيانات

اما بالنسبة لبقية سؤالك فلم افهم عليك كثيرا

ولكن سوف اوضح لك بعض المفاهيم:

هناك في دلفي شيئ اسمه DBControl يمكنك استخدامه من اجل التعامل مع حقول قاعدة البيانات حيث تريحك من عمليتين طويلتين بعض الشيئ الا وهما تعبئة ال Control بالقيم و اخذ القيم من ال Contorl و حفظها في قاعدة البيانات

هذه الكونترول موجودة في الصفحة Data control

كيف يمكن الربط بين هذه Controls و حقول قاعدة البيانات؟

للربط هناك خاصية لك من هذه Controls اسمها Data Source حيث لهذه ال Data source خاصية اسمها dataset تأخذ

adotable او Adoquery

بالنسبة لل dbedit control سوف تلاحظ خاصية اخرى الا و هي Data Field و هي عبارة عن الحقل الموجود في قاعدة البيانات

و الذي تريد ان يتم عرض قيمته في هذا ال Dbedit

في النهاية هذه هي مقدمة سريعة و انا جاهز لأي اسئلة تريدها

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#7

شكرا للاخ waeldalol

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

علما بان هنالك جدول اخر فيها رقم الطالب واسم الطالب

شكرا

post-73694-1146396045_thumb.jpg

#8

الجدول الاول هو الطالب:

رقم الطالب مفتاح اساسيPK

اسم الطالب

القسم

الصف

.........الخ

الجدول الثاني هو جدول المواد:

رقم المادة مفتاح اساسيPK

اسم المادة

القيمة الصغرى

القيمة العليا

.........الخ

الجدول الثالث و لنسميه علامات الطالب هو جدول ربط بين الطالب و المواد:

رقم الطالب مفتاح غريبFK

رقم المادة مفتاح غريبFK

رقم الفصل

الفترة الاولى

الفترة الثانية

اعمال السنة

العلاقات بين الجدول

جدول الطالب يرتبط مع جدول علامات الطالب (رقم الطالب -> رقم الطالب)

جدول المواد يرتبط مع جدول علامات الطالب (رقم المادة -> رقم المادة)

بهذا التصميم إن شاء الله تكون قاعدة بياناتك نظامية و ليس فيها اي تكرار

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

و اعمال السنة) و بالتالي لا داعي لتخزين قيمة المجموع

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#9

مشكور

بارك الله فيك

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

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