|
Hi All,
I have a page in which data is displayed on Datagrid. I have used paging in that page. When Thre are more records then 20 the data is displayed on another page. There is search Technique in my page. When i click on search, Data is displayed on Datagrid. For Example there are two pages after search. When I click on the second page all the data is displayed again, althought i need only search Data.
Any Idea.
Its very urgent.
Thanks in Advacne.
|
|
|
|
|
coder@coder.org wrote: There is search Technique in my page. When i click on search, Data is displayed on Datagrid. For Example there are two pages after search. When I click on the second page all the data is displayed again, althought i need only search Data
Looks like you are binding grid when the paging occurs using the same function what u used to bind first time.
|
|
|
|
|
Hi
On any page, you need to apply filter before binding to datagrid.
I think you are binding again for every pages ie. fetching data from the database and assigned to dataset again... right??
But here you have to apply the filter criteria
Hope this solves your problem ... if not, post your code in code project.
Harini
|
|
|
|
|
I have called this event in Page Load Event.
Public Sub DgBound()
Try
If (Conn.State <> ConnectionState.Open) Then
Conn.Open()
End If
strQry = "Select cust_order.order_id as order_id, cust_order.customer_id as cust_id, cust_order.order_date as order_date, customers.fname as fname, customers.lname as lname from cust_order, customers, cust_order_ship where cust_order.customer_id = customers.customer_id and cust_order.order_id = cust_order_ship.order_id"
Command = New OleDbCommand
With Command
.Connection = Conn
.CommandText = strQry
.CommandType = CommandType.Text
End With
da = New OleDbDataAdapter(strQry, Conn)
da.SelectCommand = Command
ds = New DataSet
da.Fill(ds, "cust")
dgProfit.DataSource = ds
dgProfit.DataBind()
totalreclbl.Text = ds.Tables(0).Rows.Count
Catch ex As Exception
Response.Write(ex.ToString)
Finally
Conn.Close()
End Try
End Sub
Then I have used this event in Search
Protected Sub btnSearch_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSearch.Click
Try
If (Conn.State <> ConnectionState.Open) Then
Conn.Open()
End If
strQry = "Select cust_order.order_id as order_id, cust_order.customer_id as cust_id, cust_order.order_date as order_date, customers.fname as fname, customers.lname as lname from cust_order, customers, cust_order_ship where cust_order.customer_id = customers.customer_id and cust_order.order_id = cust_order_ship.order_id and cust_order.order_date >=#" & ViewState("startDate") & "# and cust_order.order_date <=#" & ViewState("endDate") & "#"
Command = New OleDbCommand
With Command
.Connection = Conn
.CommandText = strQry
.CommandType = CommandType.Text
End With
Command2 = New OleDbCommand(strQry, Conn)
total = Command2.ExecuteReader()
If Not total.Read() Then
lblMsg.Visible = True
Else
lblMsg.Visible = False
End If
da = New OleDbDataAdapter(strQry, Conn)
da.SelectCommand = Command
ds = New DataSet
da.Fill(ds)
dgProfit.CurrentPageIndex = 0
dgProfit.DataSource = ds
totalreclbl.Text = ds.Tables(0).Rows.Count
dgProfit.DataBind()
btnBack.Visible = True
totVatSubSearch()
txtStart.Text = ""
txtEnd.Text = ""
Catch ex As Exception
Response.Write(ex.ToString)
Finally
Conn.Close()
End Try
End Sub
My Page Cahange event is here
Protected Sub dgOrder_PageChange(ByVal sender As Object, ByVal e As DataGridPageChangedEventArgs)
dgProfit.CurrentPageIndex = e.NewPageIndex
DgBound()
End Sub
Now where should I change my code.
|
|
|
|
|
coder@coder.org wrote: have called this event in Page Load Event.
Public Sub DgBound()
Try
If (Conn.State <> ConnectionState.Open) Then
Conn.Open()
End If
strQry = "Select cust_order.order_id as order_id, cust_order.customer_id as cust_id, cust_order.order_date as order_date, customers.fname as fname, customers.lname as lname from cust_order, customers, cust_order_ship where cust_order.customer_id = customers.customer_id and cust_order.order_id = cust_order_ship.order_id"
Command = New OleDbCommand
With Command
.Connection = Conn
.CommandText = strQry
.CommandType = CommandType.Text
End With
da = New OleDbDataAdapter(strQry, Conn)
da.SelectCommand = Command
ds = New DataSet
da.Fill(ds, "cust")
dgProfit.DataSource = ds
dgProfit.DataBind()
totalreclbl.Text = ds.Tables(0).Rows.Count
Catch ex As Exception
Response.Write(ex.ToString)
Finally
Conn.Close()
End Try
End Sub
Try to call this function in not ispostback method.
Write like this
If not isPostBack Then
'call the function to load in pageload
End If
|
|
|
|
|
One more thing i feel with your query is your query is not secure. Read some articles regarding SQL Injection Attacks.
Cheers
Navaneeth!!
www.w3hearts.com
|
|
|
|
|
OK:
Normal steps for binding to datagrid is given below:
In Page_Load():
If !IsPostBack()
{
BindGrd();
}
DataGrid_PageIndex():
DataGrid.PageIndex = currentPageIndex;
BindGrid()
In BindGrid():
//Check whether if filter applied
//Get all data if filter not applied
//or Get data based on Filteration
//assign it to a dataset variable
//Now bind it to DataGrid
That is the way for binding to DataGrid
Harini
|
|
|
|
|
Hi harini
I feel it's better to write two functions one with filter applied and other with normal binding. Then he can avoid checking the filter applied again. Calling the filter applied function in the page index changed will do the work., What's your suggestion ?
|
|
|
|
|
Hi
That is also OK.
Another way is that we can have a hidden variable when Filter button is clicked. If filter is to be cleared then reset to "" means all data should appear in the datagrid. Using this hidden variable, we can identify whether applied or not
What do you say??
Harini
|
|
|
|
|
Yes
That is also possible......You mean viewstate rite ?
|
|
|
|
|
|
What's your opini0on about viewstates will consume more memory ? And pages that contain viewstates will be indexed very less on google ?
|
|
|
|
|
And also How can i apply filter. Plz help.
|
|
|
|
|
I have already done that.
|
|
|
|
|
You are calling dgbound function in pageindex changed event ? In that data is not fetching according to your search criteria'? Then how you will get exact result ? Write the button search code into some function and call that function when datafrid page index changed.
|
|
|
|
|
I am beginner for .net technology. i am trying to develop an application in Mail Room concept.
to begin that i am looking for the structure of a mail room, what kind of techniques and flows we can use to create a strong and secured mailroom.
expecting lots of help to make my first project a successful one.
any king of help is ok. from base level to high level.
regards..
Tech_spidy
|
|
|
|
|
Sorry what you mean by mailroom ?
|
|
|
|
|
mail room means like we have lots of courier services providing solution through software. instead we can create our own application for incoming outgoing letters and POD updations some other added features also .
regards
Tech_spidy
|
|
|
|
|
As its your project, its up to you to gather the requirements for the mail room, we can't help you with that! Once you've started coding and come up with problems then we might be able to help.
|
|
|
|
|
Hi everyone!
Can anybody tell me how to set the value of controls in UltraWebGrids RowEditTemplate? or how to find control which is in UltraWebGrids RowEditTemplate?
Thanks in advance.
Max
-- modified at 8:44 Monday 12th March, 2007
|
|
|
|
|
Dear All,
I am making small web application using asp.net, C# ,sql2000 using visual studio 2005
I basically want to know how to generate report(do have export and print feature).
I generated report with in local mode using ReportViewer but it was not supported print option.
Please suggest me idea or give me some usefull link to generate report.
Please help
thanks
regards
imran khan
|
|
|
|
|
hi
i want to create a page for send email.
for email body i want to use a control that user can write html tag.
how can do this?
|
|
|
|
|
|
Where did an iframe come from, whats the point in that? You want a multiline textbox (TextBox control with MultiLine or something similar set to true). It will get rendered as a tag
|
|
|
|
|
when i click in one button i want to open datetime picker in anotherform and when i select date i want to show the datetime in a textbox near to that button.i think we can write javascript function for that.is anybody know from where i will get the codings for that ?
|
|
|
|