منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

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

معاي استفسار ي اخوان .. معاي كود ل عرض البيانات في الداتا قريد يتضمن على 3 كوموبو بكس
كل كومبوس بكس يعتمد في عرض بياناته على الكومبوس بكس الي سبقه او الاختيار السابق 

صوره ل توضيح البرنامج ..






هذا شكل البرنامج بشكل عام ..

طريقة البحث فيه تكون باختيار اول نقطة Department ثم Branch ثم Employee طبعا بيانات المعروضه في كل خانة تعتمد على الخانه السابقه هذا الشي جميل وهو مطلوب ولكن توجد مشكله بسيطه 

المشكلة صوره ل توضيح ..




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

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




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

الاستعلام هنا يكون من ثلاث شروط
(04-07-17, 12:29 AM)حريف برمجة كتب : [ -> ]وين جملة الاستعلام ؟

الاستعلام هنا يكون من ثلاث شروط


اعتذر شكلي نسيت ارفق المشروع هذا هو في المرفقات

وهذا صورة الكود المستخدم مع العلم ان اسم الحقل في قاعدة البيانات في c6







هذا هو الكود ،، ضعه مثلاً في كوماند أو أي مكان تريد :

كود :
  Try
           sqlstr = "Select * From Employee Where c6=@c6 and c3=@c3 and c5=@c5"
           cmd = New OleDbCommand(sqlstr, con)

           cmd.Parameters.Add("@c6", OleDbType.VarWChar).Value = cmbEmployee.Text
           cmd.Parameters.Add("@c3", OleDbType.VarWChar).Value = cmbDepartment.Text
           cmd.Parameters.Add("@c5", OleDbType.VarWChar).Value = cmbBranch.Text

           da = New OleDbDataAdapter(cmd)

           dt.Clear()

           dt = New DataTable("Employee")

           da.Fill(dt)

           dgvEmployee.Rows.Clear()

           For Each rw As DataRow In dt.Rows
               dgvEmployee.Rows.Add(rw(0).ToString(), rw(1).ToString, rw(2).ToString, rw(3).ToString)
           Next


       Catch ex As Exception
           MessageBox.Show(ex.Message)
       End Try
(04-07-17, 01:18 AM)حريف برمجة كتب : [ -> ]هذا هو الكود ،، ضعه مثلاً في كوماند أو أي مكان تريد :

كود :
  Try
           sqlstr = "Select * From Employee Where c6=@c6 and c3=@c3 and c5=@c5"
           cmd = New OleDbCommand(sqlstr, con)

           cmd.Parameters.Add("@c6", OleDbType.VarWChar).Value = cmbEmployee.Text
           cmd.Parameters.Add("@c3", OleDbType.VarWChar).Value = cmbDepartment.Text
           cmd.Parameters.Add("@c5", OleDbType.VarWChar).Value = cmbBranch.Text

           da = New OleDbDataAdapter(cmd)

           dt.Clear()

           dt = New DataTable("Employee")

           da.Fill(dt)

           dgvEmployee.Rows.Clear()

           For Each rw As DataRow In dt.Rows
               dgvEmployee.Rows.Add(rw(0).ToString(), rw(1).ToString, rw(2).ToString, rw(3).ToString)
           Next


       Catch ex As Exception
           MessageBox.Show(ex.Message)
       End Try

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

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


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

اتمنى الفكره تكون واضحه ياليت لي معه حل للمشكله يفيدني ولكم جزيل الشكر
خلاص تم صار بفضل شرح اخي حريف برمجه كل ود لك عزيزي

رح اعود ارفع مشروع كامل بعد شويه للفائده ..

المشروع مرفق للفائدة مودتي للجميع
بالتوفيق اخي ،،