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

البحث عن الإسم قبل الإضافة

بدأه suz في 21 أبريل 2011 · 4 رد · 800 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أنا أعمل علي فيجوال بيسك 2008 و سيكوال سيرفر

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

أولاً أن أعرف كيف يتم الإكمال التلقائي في الكومبوبوكس

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

و شكراً

PNumber.zip

#2

السلام عليكم

هذا أخي كود التكملة التقائية

	Public Sub autoComplete()
       	Dim srSQL As String = "SELECT full_name FROM tbl_main ORDER BY idm;"
       		CreateConn()
    	Dim relateddata As New OleDbDataAdapter(srSQL, getConn)
      		Dim TheSearchTable As DataTable = New DataTable
      		OpenConn()
    	relateddata.Fill(TheSearchTable)
       		CloseConn()
    	Me.setCombBox1(TheSearchTable)
   		End Sub
	Private Sub setCombBox1(ByVal table As DataTable)
    	Dim i As Integer
    	If Me.Txt_nam.InvokeRequired Then
        	Dim d As New SetCombCallback1(AddressOf setCombBox1)
        	Me.Invoke(d, New Object() {[table]})
    	Else
        	Me.Txt_nam.AutoCompleteMode = AutoCompleteMode.SuggestAppend
        	Me.Txt_nam.AutoCompleteSource = AutoCompleteSource.CustomSource
        	If table.Rows.Count <> 0 Then
            	For i = 0 To table.Rows.Count - 1
                	Me.Txt_nam.AutoCompleteCustomSource.Add(table.Rows(i).Item(0).ToString)
            	Next i
        	End If
    	End If
	End Sub
#3

السلام عليكم

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

	Private Sub btn_save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_save.Click
    	If Not check() Then
        	Exit Sub
    	End If
    	Select Case (test)
        	Case 1
            	CreateConn()
            	Dim SQLString As String = "SELECT * FROM tbl_main WHERE FULL_NAME='" & Me.TXT_NAME.Text & "'"
            	Dim objCommand As OleDbCommand = New OleDbCommand(SQLString, getConn())
            	OpenConn()
            	Dim objDataReader As OleDbDataReader
            	Try
                	objDataReader = objCommand.ExecuteReader()
                	If objDataReader.HasRows Then
                    	has_row = 2
                	Else
                    	has_row = 1
                	End If
                	objDataReader.Close()
            	Catch OleDbExceptionErr As OleDbException
                	MessageBox.Show(OleDbExceptionErr.Message, "eeee Access SQL")
            	End Try
            	objCommand.Dispose()
            	objCommand = Nothing
            	objDataReader = Nothing
            	CloseConn()
            	If has_row = 1 Then
                	If MsgBox(" هل تريد حفظ السجل الحالي ؟ ", MsgBoxStyle.OkCancel, "تأكيد الحفظ") = MsgBoxResult.Cancel Then
                    	Exit Sub
                	End If
                	If MsgBox("هذا المتبرع غير مقيد .... لابد من تسجيله", MsgBoxStyle.OkOnly, "تنبيه هام") = MsgBoxResult.Ok Then
                    	Me.BTN_BACK.Visible = True
                	End If
                	Try
                    	Dim SavInto As New OleDb.OleDbCommand
                    	CreateConn()
                    	SavInto.Connection = getConn()
                    	SavInto.CommandType = CommandType.Text
                    	SavInto.CommandText = "INSERT INTO tbl_pay(IDP,FULLname)" & _
                    	"values ('" & Me.TXT_ID.Text & "','" & Me.TXT_NAME.Text & "')"
                    	OpenConn()
                    	If SavInto.ExecuteNonQuery() Then
                        	SavInto.Dispose()
                        	SavInto = Nothing
                        	CloseConn()
                        	ts.Text = "تمت الإضافة بنجاح"
                        	fill_ds()
                        	NavigateRecords()
                        	MyCurrencyManager.Position = MyCurrencyManager.Count - 1
                        	record_count()
                        	btn_enable(True)
                    	Else
                        	MsgBox("فشلت عملية الإضافة", MsgBoxStyle.MsgBoxRight, "رسالة خطأ")
                    	End If
                	Catch ex As Exception
                    	MsgBox(ex.Message)
                	End Try
            	Else
                	Dim SavInto As New OleDb.OleDbCommand
                	CreateConn()
                	SavInto.Connection = getConn()
                	SavInto.CommandType = CommandType.Text
                             		SavInto.CommandText = "INSERT INTO tbl_pay(IDP,FULLname)" & _
                    	"values ('" & Me.TXT_ID.Text & "','" & Me.TXT_NAME.Text & "')"
                	OpenConn()
                	If SavInto.ExecuteNonQuery() Then
                    	SavInto.Dispose()
                    	SavInto = Nothing
                    	CloseConn()
                    	ts.Text = "تمت الإضافة بنجاح"
                    	fill_ds()
                    	NavigateRecords()
                    	MyCurrencyManager.Position = MyCurrencyManager.Count - 1
                    	record_count()
                    	btn_enable(True)
                	Else
                    	MsgBox("فشلت عملية الإضافة", MsgBoxStyle.MsgBoxRight, "رسالة خطأ")
                	End If
            	End If
        	Case 2
            	If MsgBox(" هل تريد حفظ التعديل على البيان الحالي ؟ ", MsgBoxStyle.OkCancel, "تأكيد الحفظ") = MsgBoxResult.Cancel Then
                	Exit Sub
            	End If
            	Try
                	Dim intPosition As Integer = MyCurrencyManager.Position ' Save the current record position...
                	Dim SavInto As New OleDb.OleDbCommand
                	CreateConn()
                	SavInto.Connection = getConn()
                	SavInto.CommandType = CommandType.Text
                	SavInto.CommandText = "update tbl_pay set " & _
                	"FULLname='" & Me.TXT_NAME.Text & "' 
"' where IDP = " & CType(Me.TXT_ID.Text, Integer)
                	OpenConn()
                	If SavInto.ExecuteNonQuery() Then
                                      		SavInto.Dispose()
                    	SavInto = Nothing
                    	CloseConn()
                    	ts.Text = "تم التعديل بنجاح"
                    	fill_ds()
                    	NavigateRecords()
                    	MyCurrencyManager.Position = intPosition
                    	record_count()
                    	btn_enable(True)
                	Else
                    	MsgBox("فشلت عملية التعديل", MsgBoxStyle.MsgBoxRight, "رسالة خطأ")
                	End If
            	Catch ex As Exception
                	MsgBox(ex.Message)
            	End Try
    	End Select
    	Me.btn_add.TabIndex.ToString()
	End Sub
#4

معذرة

أولاً أنا أجري الإتصال بقاعدة البيانات عن طريق Data Source و ليس بالكود

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

و شكراً

#5

معذرة أخي وعلى العموم هذا الكود الخاص بالتحقق وعدم التكرار يضاف في الزر حفظ

اما الآخر فيضاف للحدث load

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