zipnotic
asked on
Give user feedback during long running query
Hello,
Using vb.net vs 2008 and SQL Server 2000 in a windows forms application, I'd like to provide the user with some feedback when they request a large recordset. I am using a search form where they can enter multiple criteria and the SQL Statement is created on the fly. If they want a years worth of data for example, it might return hundreds of thousands of records. This takes several minutes with the only option to stop the search clicking the close form button and killing the program.
One option I saw was creating a moving marquee but that doesn't give the user an estimate of the time to fill the dataset.
Ideally I'd like a way to tell the user what is happening besides that annoying wait cursor. A record count as the records are sent over would be awesome (I thought about creating a govenor to limit the records to 5000 or whatever the user chooses but they need to have a fully open search capability). Is there any way to ask the server what the status is of the query? I suspect I'm getting into multithreading hell here but I've found users get frustrated if they don't see something return in 5 seconds or less...
Thanks for any ideas
Using vb.net vs 2008 and SQL Server 2000 in a windows forms application, I'd like to provide the user with some feedback when they request a large recordset. I am using a search form where they can enter multiple criteria and the SQL Statement is created on the fly. If they want a years worth of data for example, it might return hundreds of thousands of records. This takes several minutes with the only option to stop the search clicking the close form button and killing the program.
One option I saw was creating a moving marquee but that doesn't give the user an estimate of the time to fill the dataset.
Ideally I'd like a way to tell the user what is happening besides that annoying wait cursor. A record count as the records are sent over would be awesome (I thought about creating a govenor to limit the records to 5000 or whatever the user chooses but they need to have a fully open search capability). Is there any way to ask the server what the status is of the query? I suspect I'm getting into multithreading hell here but I've found users get frustrated if they don't see something return in 5 seconds or less...
Thanks for any ideas
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
For SQL Server 2000 check this link:
http://stackoverflow.com/questions/503566/efficient-paging-limit-query-in-sqlserver-2000
http://stackoverflow.com/questions/503566/efficient-paging-limit-query-in-sqlserver-2000
I go for paging too
if that is not an option, Telerik has a good grid with a Load-On-Demand feature. it loads records when scrolling to see more records.
ASKER
Paging will work for me thank you.
good morning!
you can use progress bar here...
take a look on this link...
https://www.experts-exchange.com/questions/24316964/Progress-Bar-in-VB-net.html?sfQueryTermInfo=1+10+30+bar+progress+us+vb.net
i hope i can give you some idea...
game-master