بالبداية السلام عليكم
انا عضو جديد واتمنى ان اكون بينكم من الاصدقاء والاحبة ثم الفائدة
سؤالي عن البحث في قاعدة البيانات اكسس مع vb.net مشكلتي ما اكدر ابحث حسب الرقم او حسب التاريخ زارجو الرد محتاجهة في العمل
وعليكم السلام ورحمة الله وبركاتة
أرفع مثالك .... سوف يتم الرد عليك
كيفك عزيزي مالك
انا عملت الربط بطريقة ال wizrd ليس بالكود
وكان كود البحث عن حقل الاسم عندي ناجح والصيغة العامة له هي
TabelBindingSource.Filter = " [name] LIKE '%" & Trim(InputBox(" search")) & "%'" h
حرف h بالاخير زائد
ما التعديل على الكود لكي يبحث عن الارقام والتاريخ
اخي انا عملت هذا عن طريق ال query
وعندي شغال اذا تحب ارسله لك
اخي شكرا على الرد
ارسلي المثال او البرنامج وذا عندي مشكلة اراسلك
اخي الفاضل حاولت ارفعه يقول ان الملف كبير والحجم المخصص لي قليل
واحتمال ذلك لن نقاطي قليله
السلام عليكم
الكود التالي للبحث في قاعدة البيانات عن اسم القطعة وعرضها في DataGridView، ربما يفيدك:
PHP كود :
Private Sub SearchByPartDescription()
Dim LSQL As String = "select * from Parts where Description like '%" & txtSearchByPartDescription.Text & "%' order by ID"
Dim LAdapter As New OleDbDataAdapter(LSQL, Con)
Dim LDataSet As New DataSet
Dim RowsCount As Integer
Dim i As Integer
dgvParts.Rows.Clear()
If Con.State = ConnectionState.Closed Then
Con.Open()
LAdapter.Fill(LDataSet, "Parts")
RowsCount = LDataSet.Tables("Parts").Rows.Count
If RowsCount = 0 Then
dgvParts.Rows.Clear()
LDataSet.Reset()
Con.Close()
Exit Sub
Else
dgvParts.Rows.Add(RowsCount)
' Now: fill DGV with data
For i = 0 To RowsCount - 1
With dgvParts
.Rows(i).Cells(0).Value = LDataSet.Tables("Parts").Rows(i).Item("ID")
.Rows(i).Cells(1).Value = LDataSet.Tables("Parts").Rows(i).Item("Description")
.Rows(i).Cells(2).Value = LDataSet.Tables("Parts").Rows(i).Item("Quantity")
.Rows(i).Cells(3).Value = LDataSet.Tables("Parts").Rows(i).Item("UnitCostPrice")
.Rows(i).Cells(4).Value = LDataSet.Tables("Parts").Rows(i).Item("UnitSellingPrice")
.Rows(i).Cells(5).Value = LDataSet.Tables("Parts").Rows(i).Item("CountryOfOrigine")
.Rows(i).Cells(6).Value = LDataSet.Tables("Parts").Rows(i).Item("BarcodeNumber")
End With
Next
LDataSet.Reset()
Con.Close()
End If
Else
LAdapter.Fill(LDataSet, "Parts")
RowsCount = LDataSet.Tables("Parts").Rows.Count
If RowsCount = 0 Then
dgvParts.Rows.Clear()
LDataSet.Reset()
Con.Close()
Exit Sub
Else
dgvParts.Rows.Add(RowsCount)
' Now: fill DGV with data
For i = 0 To RowsCount - 1
With dgvParts
.Rows(i).Cells(0).Value = LDataSet.Tables("Parts").Rows(i).Item("ID")
.Rows(i).Cells(1).Value = LDataSet.Tables("Parts").Rows(i).Item("Description")
.Rows(i).Cells(2).Value = LDataSet.Tables("Parts").Rows(i).Item("Quantity")
.Rows(i).Cells(3).Value = LDataSet.Tables("Parts").Rows(i).Item("UnitCostPrice")
.Rows(i).Cells(4).Value = LDataSet.Tables("Parts").Rows(i).Item("UnitSellingPrice")
.Rows(i).Cells(5).Value = LDataSet.Tables("Parts").Rows(i).Item("CountryOfOrigine")
.Rows(i).Cells(6).Value = LDataSet.Tables("Parts").Rows(i).Item("BarcodeNumber")
End With
Next
LDataSet.Reset()
Con.Close()
End If
End If
End Sub
السلام عليكم
طالما الكود عندك ناجح - كما قلت - فقم فقط بتغيير ما بين القوسين المركنين
[Name]
إلى ما تريده مثلا رقم
[Number]
بالتوفيق