View Full Version : سوال: جست و جو چندین پارامتر در sql
  
mialdf
یک شنبه 07 فروردین 1390, 20:00 عصر
سلام دوستان
من یه تابع جست و جو میخوام بنویسم که دارای 6 پارامتر هست. و وقتی کاربر هر کدام از پارامتر هارو پر کرد جست و جو انجام بشه. نمیدونم چی کار کنم
فرمم به شکل زیره
شماره پرسنل
نام
نام خانوادگی
تاریخ
مبلغ
نوع دریافتی
میخوام کاربر با پر کردن هر کدومشون جست و جو انجام بشه.
ممنون میشم راهنمایی کنید دوستان گرامی
ircast
یک شنبه 07 فروردین 1390, 22: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, 16: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, 19:03 عصر
با سلام
به این آدرس  (http://barnamenevis.org/showthread.php?258634)برو در ویدیوی شماره 5 دقیقاً همین مسئله رو آموزش دادم اگر با دیدن کد مشکلتون ( سوالتون ) رو متوجه میشین به پست شماره 6 برین و فایل ضمیمه رو دانلود کنین .
موفق باشید ./
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.