عندي داتا جريد اريد عرض البيانات فيها بناء على الاسم المدخل في التكست بوكس حتى يتمكن المدخل من إضافة بيانات للجدول إدا لم تكن مدخلة من قبل
مع العلم بان الداتا جريد تم تأسيسها ووضع بها كومبو بوكس يتم تعبئته من جدول آخر
ووصلت لهذا الكود ولكنه يعرض السطر الأول فقط من القيمة المراد عرضها
وهذا هو الكود الذي استخدمه
كود :
Private Sub TXT_FATH_Leave(sender As Object, e As System.EventArgs) Handles TXT_FATH.Leave
Dim dr As OleDb.OleDbDataReader
Dim cmd As New OleDb.OleDbCommand("select STU_ID,STU_NAM,FATH_COD,FATH_MOB1,FATH_MOB2,RELA from STU_TBL where STU_FATH LIKE '%" & TXT_FATH.Text & "%'", con)
con.Open()
dr = cmd.ExecuteReader
dr.Read()
For I As Integer = 0 To DGV_STU.Rows.Count - 1
TXT_N_MOB.Text = dr("FATH_MOB1")
TXT_N_MOB2.Text = dr("FATH_MOB2")
CMB_REL.Text = dr("RELA")
TXT_FATH_ID.Text = dr("FATH_COD")
DGV_STU.Rows(I).Cells("ST_ID").Value = dr("STU_ID")
DGV_STU.Rows(I).Cells("STU_NAM").Value = dr("STU_NAM")
Next
dr.Close()
con.Close()
السلام عليكم ورحمة الله وبركاته شرط جلب البيانات هو الاساس فان كان الشرط يمثل حقل قيمته غير متكررة فلن يجلب الا سجلا واحدا فلنفترض اننا ندخل السجلات وحقل الاي دي فريد فعند البحث به النتيجة سجل واحد اما لو اننا ندحل السجلات برقم الاي دي الفريد مع امكانية تكرار حقل مثلا الاسم كمثال شخص اسمه Ahmad يقوم بتسديد مبالغ مالية هنا يتكرر اسمه ولكن يبقى الاي دي مختلف لذلك لو اردنا الاستعلام عن مبالغه التي سددها سنبحث بشرط الاسم فقط عندها سيجلب كل السجلات التي تحتوي على اسم Ahmad ارجو ان اكون قد اوضحت لك الامر
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
(17-04-20, 02:17 AM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته شرط جلب البيانات هو الاساس فان كان الشرط يمثل حقل قيمته غير متكررة فلن يجلب الا سجلا واحدا فلنفترض اننا ندخل السجلات وحقل الاي دي فريد فعند البحث به النتيجة سجل واحد اما لو اننا ندحل السجلات برقم الاي دي الفريد مع امكانية تكرار حقل مثلا الاسم كمثال شخص اسمه Ahmad يقوم بتسديد مبالغ مالية هنا يتكرر اسمه ولكن يبقى الاي دي مختلف لذلك لو اردنا الاستعلام عن مبالغه التي سددها سنبحث بشرط الاسم فقط عندها سيجلب كل السجلات التي تحتوي على اسم Ahmad ارجو ان اكون قد اوضحت لك الامر
السلام عليكم
بداية أحب اشكر حضرتك جد على سرعة الاستجابة الدائمة التي طالما ساعدتني كثيرا وأسال الله العظيم أن ينفعك بعلمك
ثانيا:
أحب أن أوضح أن اسم الوالد يتكرر في الجدول بناءا على تكرار عدد ابناؤه وله رقم خاص به ولكنه يتكرر في الجدول مع تكرار الأبناء في كل صف
وما أريده أن يقوم الاستعلام بجلب البيانات من الجدول لكل الابناء ووضعها في الداتا جريد بناءا على اسم ولي الأمر أو على كود ولي الأمر
السلام عليكم ورحمة الله وبركاته
اخي سيكون شرظ الاستعلام
ًWhere حقل اسم الاب like مربع نص البحث
وبذلك سيجلب كل السجلات التي فيها اسم الاب الموافق لمربع البحث
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
(17-04-20, 02:17 AM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته شرط جلب البيانات هو الاساس فان كان الشرط يمثل حقل قيمته غير متكررة فلن يجلب الا سجلا واحدا فلنفترض اننا ندخل السجلات وحقل الاي دي فريد فعند البحث به النتيجة سجل واحد اما لو اننا ندحل السجلات برقم الاي دي الفريد مع امكانية تكرار حقل مثلا الاسم كمثال شخص اسمه Ahmad يقوم بتسديد مبالغ مالية هنا يتكرر اسمه ولكن يبقى الاي دي مختلف لذلك لو اردنا الاستعلام عن مبالغه التي سددها سنبحث بشرط الاسم فقط عندها سيجلب كل السجلات التي تحتوي على اسم Ahmad ارجو ان اكون قد اوضحت لك الامر
أخي الحبيب هذه جملة الاستعلام ولكنه يقوم بتعبئة الداتا جريد باسم الابن الاول فقط وهذه هي المشكلة
هذا هو الكود
كود :
Dim dr As OleDb.OleDbDataReader
Dim cmd As New OleDb.OleDbCommand("select STU_ID,STU_NAM,FATH_COD,FATH_MOB1,FATH_MOB2,RELA from STU_TBL where STU_FATH LIKE '%" & TXT_FATH.Text & "%'", con)
con.Open()
dr = cmd.ExecuteReader
dr.Read()
For I As Integer = 0 To DGV_STU.Rows.Count - 1
TXT_N_MOB.Text = dr("FATH_MOB1")
TXT_N_MOB2.Text = dr("FATH_MOB2")
CMB_REL.Text = dr("RELA")
TXT_FATH_ID.Text = dr("FATH_COD")
DGV_STU.Rows(I).Cells("ST_ID").Value = dr("STU_ID")
DGV_STU.Rows(I).Cells("STU_NAM").Value = dr("STU_NAM")
Next
dr.Close()
con.Close()
18-04-20, 11:11 PM (آخر تعديل لهذه المشاركة : 18-04-20, 11:11 PM {2} بواسطة ابراهيم ايبو.)
السلام عليكم اخي عاشق الرسول هل حقل اسم الاب الذي هو الشرط من ضمن حقول الجدول؟ لانك تشترط به هل الداتا غرايد فارغة وتريد املاءها؟ الكومبوبوكس في الداتا غرايد منشأ بشكل مستقل؟وماهي وظيفته؟ هل اعمدة الداتا غرايد انشأتها سابقا؟ام تنشأ حسب الاستعلام؟ طريقة الاملاء بعد الاستعلام!!!! الكود لديك فيه استفهامات كثيرة ناهيك انك تستعلم ب الكوماند oledbCommand والافضل الاستعلام بـ oledbDataadapter او oledbDataReader
ضع مشروعك ليتم التعديل عليه يكفي الجزء الخاص باملاء الجدول والاستعلام
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
(18-04-20, 11:11 PM)ابراهيم ايبو كتب : السلام عليكم اخي عاشق الرسول هل حقل اسم الاب الذي هو الشرط من ضمن حقول الجدول؟ لانك تشترط به هل الداتا غرايد فارغة وتريد املاءها؟ الكومبوبوكس في الداتا غرايد منشأ بشكل مستقل؟وماهي وظيفته؟ هل اعمدة الداتا غرايد انشأتها سابقا؟ام تنشأ حسب الاستعلام؟ طريقة الاملاء بعد الاستعلام!!!! الكود لديك فيه استفهامات كثيرة ناهيك انك تستعلم ب الكوماند oledbCommand والافضل الاستعلام بـ oledbDataadapter او oledbDataReader
ضع مشروعك ليتم التعديل عليه يكفي الجزء الخاص باملاء الجدول والاستعلام
جزاك الله خيرا وبارك الله فيك
هذا هو المشروع
كل ما اريده هو عن إضافة طالب جديد يقوم البرنامج بعرض اسماء أولياء الامور لإضافة الابناء في حالة وجود سجل لولي الامر نفسه
وأن يضاف كجديد في حالة عدم وجود سجل له
وجزاك الله خيرا
السلام عليكم ورحمة الله وبركاته
اخي عاشق انت تستعلم من الحدول الخطأ
استعلم من الجدول BILL_D_TBL
بهذا الشكل سيتم جلب اسماء الاولاد التابعين للاب الذي سيكتب اسمه في مربع البحث
كود :
Dim da As New OleDbDataAdapter
Dim dt As New DataTable
Try
dt.Clear()
da = New OleDbDataAdapter("select * from BILL_D_TBL where FATH_NAM like '%" & TXT_SER.Text & "%'", con)
da.Fill(dt)
OLD_DGV.DataSource = dt
Catch ex As Exception
MessageBox.Show(ex.Message, "Alert", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Try
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
بعد عدة محاولات وبمساعدة الاخ ابراهيم وصلت إلى الاتي ونجح والحمد لله
وهذا هو الكود لتعم الفائدة
كود :
Private Sub TXT_FATH_Leave(sender As Object, e As System.EventArgs) Handles TXT_FATH.Leave
Dim dr As OleDb.OleDbDataReader
Dim cmd As New OleDb.OleDbCommand("select FATH_COD,FATH_MOB1,FATH_MOB2,RELA from STU_TBL where STU_FATH LIKE '%" & TXT_FATH.Text & "%'", con)
con.Open()
dr = cmd.ExecuteReader
dr.Read()
TXT_FATH_ID.Text = dr("FATH_COD")
TXT_N_MOB.Text = dr("FATH_MOB1")
TXT_N_MOB2.Text = dr("FATH_MOB2")
CMB_REL.Text = dr("RELA")
dr.Close()
con.Close()
Call STUG()
Try
Dim dt As New DataTable
dt.Clear()
da = New OleDbDataAdapter("select STU_ID,STU_NAM,STU_MOB,STU_GEND,STU_GRAD from STU_TBL where STU_FATH like '%" & TXT_FATH.Text & "%'", con)
da.Fill(dt)
DGV_STU.DataSource = dt
DGV_STU.Columns(0).DataPropertyName("STU_ID").ToString()
DGV_STU.Columns("STU_NAM").DataPropertyName("STU_NAM").ToString()
DGV_STU.Columns("STU_MOB").DataPropertyName("STU_MOB").ToString()
DGV_STU.Columns("STU_GEND").DataPropertyName("STU_GEND").ToString()
DGV_STU.Columns("STU_GRAD").DataPropertyName("STU_GRAD").ToString()
''''''''''''''''''''''''''''''''''''''''''''''''''''''