PDA

View Full Version : سوال: جست و جو چندین پارامتر در sql



mialdf
یک شنبه 07 فروردین 1390, 19:00 عصر
سلام دوستان
من یه تابع جست و جو میخوام بنویسم که دارای 6 پارامتر هست. و وقتی کاربر هر کدام از پارامتر هارو پر کرد جست و جو انجام بشه. نمیدونم چی کار کنم
فرمم به شکل زیره

شماره پرسنل
نام
نام خانوادگی
تاریخ
مبلغ
نوع دریافتی


میخوام کاربر با پر کردن هر کدومشون جست و جو انجام بشه.
ممنون میشم راهنمایی کنید دوستان گرامی

ircast
یک شنبه 07 فروردین 1390, 21:07 عصر
سلام

می تونید از Filter در Dataview یا binding Source استفاده کنید

مثال:
Public Function FuncFilter() As Boolean
Try
If Me.TxtSFName.TextLength = 0 And Me.TxtSLName.TextLength = 0 Then
DataViewList.RowFilter = ""
Else
DataViewList.RowFilter = ("SFName Like '" & Me.TxtSFName.Text) & "*'AND SLName Like '" & Me.TxtSLName.Text & "*'"
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Return True
End Function

بعد تابع رو در خاصیت TextChange هر تکست باکس صدا بزن

Private Sub TxtSFName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtSFName.TextChanged, TxtSLName.TextChanged
FuncFilter()
End Sub

البته اینجا از دو فیلد استفاده شده شما می تونین بیشترش کنین

موفق باشی

mialdf
شنبه 13 فروردین 1390, 15:38 عصر
سلام

می تونید از Filter در Dataview یا binding Source استفاده کنید

مثال:
Public Function FuncFilter() As Boolean
Try
If Me.TxtSFName.TextLength = 0 And Me.TxtSLName.TextLength = 0 Then
DataViewList.RowFilter = ""
Else
DataViewList.RowFilter = ("SFName Like '" & Me.TxtSFName.Text) & "*'AND SLName Like '" & Me.TxtSLName.Text & "*'"
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Return True
End Function

بعد تابع رو در خاصیت TextChange هر تکست باکس صدا بزن

Private Sub TxtSFName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtSFName.TextChanged, TxtSLName.TextChanged
FuncFilter()
End Sub

البته اینجا از دو فیلد استفاده شده شما می تونین بیشترش کنین

موفق باشی

دوست عزیز این کد برای داده های استرینگ فقط کار میکنه. من در برنامه داده های اینتجر دارم به این کد اضافه کردم و برای داده های عددی به جای Like از = استفاده کردم . ارور میده که اپرند = برای داده های اینتجر مجاز نیست!

alimanam
شنبه 13 فروردین 1390, 18:03 عصر
با سلام

به این آدرس (http://barnamenevis.org/showthread.php?258634)برو در ویدیوی شماره 5 دقیقاً همین مسئله رو آموزش دادم اگر با دیدن کد مشکلتون ( سوالتون ) رو متوجه میشین به پست شماره 6 برین و فایل ضمیمه رو دانلود کنین .

موفق باشید ./