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

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

بدأه محمد ديوب في 7 ديسمبر 2008 · 1 رد · 1,691 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أحاول ان اعمل برنامج عيادة لطبيب

قمت باستخدام قاعدة بيانات اكسس باسم mydata

تتضمن جداول لاسم المريض العنوان العمر الحالة العائلية

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

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

ارجو المساعة في حله

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

اسم الجدول patient

حقول الجدول name adress matrial age phone

الفورم الخاص بواجهة البرنامج form1

الفورم الخاص بنافذة البحث form4

زر البحث button6

تكست كلمة البحث TextBox6

يتم اظهار نتيجة البحث في تكست TextBox12345

وفي شبكة بياناتDataGridView1

اختيار البحث المطابق RadioButton1

اختيار البحث العام RadioButton2

اختيار الجدول المراد البحث به RadioButton7RadioButton6 RadioButton5 RadioButton4RadioButton3

حذف النتيجة الحالية من قاعدة البيانات Button1

تديل النتيجة الحاليةButton4

حفظ التعديل Button3

الغاء التعديل Button2

العودة للواجهة الرئيسية Button5

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

والكود هو

Imports System.Data
Imports System.Data.OleDb
Public Class Form4
	Dim frm As New Form1
	Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
	"Data Source =" & Application.StartupPath & "\MyData.mdb"
	Dim Conn As New OleDbConnection(ConStr)
	Dim DataSet1 As New DataSet
	Dim SQLstr As String
	Dim m As String
	Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
		Button6.Enabled = False
		Button3.Enabled = True
		Button4.Enabled = True
		Button2.Enabled = False
		Button1.Enabled = False
		TextBox1.ReadOnly = False
		TextBox2.ReadOnly = False
		TextBox3.ReadOnly = False
		TextBox4.ReadOnly = False
		TextBox5.ReadOnly = False
		m = TextBox5.Text
	End Sub



	Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click


		If TextBox6.Text = Trim("") Then Exit Sub
		If RadioButton1.Checked = True Then
			ExactSearch()
		ElseIf RadioButton2.Checked = True Then
			GeneralSearch()
		End If
		Conn.Open()

		Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
		DataAdapter1.Fill(DataSet1, "patient")
		Conn.Close()
		TextBox1.DataBindings.Add("Text", DataSet1, "patient.name")
		TextBox2.DataBindings.Add("Text", DataSet1, "patient.adress")
		TextBox3.DataBindings.Add("Text", DataSet1, "patient.matrial")
		TextBox4.DataBindings.Add("Text", DataSet1, "patient.age")
		TextBox5.DataBindings.Add("Text", DataSet1, "patient.phone")
		DataGridView1.DataSource = DataSet1
		DataGridView1.DataMember = "patient"
		If Me.BindingContext(DataSet1, "patient").Count = 0 Then
			MsgBox("No Result, Please Try Again ")
			Exit Sub
		End If


		Button1.Enabled = True
		Button2.Enabled = True
	End Sub
	Public Sub ExactSearch()
		If RadioButton3.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE name = '" & TextBox6.Text & "'"
		ElseIf RadioButton4.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE adress = '" & TextBox6.Text & "'"
		ElseIf RadioButton5.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE matrial = '" & TextBox6.Text & "'"
		ElseIf RadioButton6.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE age = '" & TextBox6.Text & "'"
		ElseIf RadioButton7.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE phone = '" & TextBox6.Text & "'"
		End If
	End Sub
	Public Sub GeneralSearch()
		If RadioButton3.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE name LIKE '%" & TextBox6.Text & "%'"
		ElseIf RadioButton4.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE adress LIKE '%" & TextBox6.Text & "%'"
		ElseIf RadioButton5.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE matrial LIKE '%" & TextBox6.Text & "%'"
		ElseIf RadioButton6.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE age LIKE '%" & TextBox6.Text & "%'"
		ElseIf RadioButton7.Checked = True Then
			SQLstr = "SELECT * FROM patient WHERE phone LIKE '%" & TextBox6.Text & "%'"
		End If
	End Sub

	Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
		Me.Close()
		frm.Show()
	End Sub

	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

		If MsgBox("دكتور شريف هل تريد حذف السجل الحالي", MsgBoxStyle.OkCancel) = MsgBoxResult.Cancel Then
			Exit Sub
		End If
		Dim adapter2 As New OleDbDataAdapter(SQLstr, Conn)
		Dim SavInto As New OleDb.OleDbCommand
		SavInto.Connection = Conn
		SavInto.CommandType = CommandType.Text
		SavInto.CommandText = "DELETE FROM patient WHERE phone ='" & Trim(TextBox5.Text) & "'"
		Conn.Open()
		SavInto.ExecuteNonQuery()
		DataSet1.Clear()
		adapter2.Fill(DataSet1, "patient")
		Conn.Close()
	End Sub

	Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
		Button6.Enabled = True
		Dim SavInto As New OleDb.OleDbCommand
		Dim adapter2 As New OleDbDataAdapter(SQLstr, Conn)
		SavInto.Connection = Conn
		SavInto.CommandType = CommandType.Text
		SavInto.CommandText = "UPDATE patient SET name = '" & Trim(TextBox1.Text) & "' , adress = '" & Trim(TextBox2.Text) & "' , matrial = '" & Trim(TextBox3.Text) & "' , age = '" & Trim(TextBox4.Text) & "' , phone = '" & Trim(TextBox5.Text) & "' WHERE phone ='" & m & "'"
		Conn.Open()
		SavInto.ExecuteNonQuery()
		Conn.Close()
		Button3.Enabled = False
		Button4.Enabled = False
		Button2.Enabled = True
		Button1.Enabled = True
		TextBox1.ReadOnly = True
		TextBox2.ReadOnly = True
		TextBox3.ReadOnly = True
		TextBox4.ReadOnly = True
		TextBox5.ReadOnly = True
	End Sub

	Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
		Button6.Enabled = True
		Button3.Enabled = False
		Button4.Enabled = False
		Button2.Enabled = True
		Button1.Enabled = True
		TextBox1.ReadOnly = True
		TextBox2.ReadOnly = True
		TextBox3.ReadOnly = True
		TextBox4.ReadOnly = True
		TextBox5.ReadOnly = True
	End Sub

	Private Sub Form4_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Leave
		Me.Show()
	End Sub





End Class

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

سأقوم برفع المسروع في المرفقات

a.rar

#2

الكود بعد التعديل

a2.zip

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…