Solved

Give user feedback during long running query

Posted on 2010-09-06
7
751 Views
Last Modified: 2012-05-10
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
0
Comment
Question by:zipnotic
  • 2
  • 2
  • 2
  • +1
7 Comments
 
LVL 13

Expert Comment

by:game-master
ID: 33614476


good morning!

you can use progress bar here...

take a look on this link...

http://www.experts-exchange.com/Microsoft/Development/Q_24316964.html?sfQueryTermInfo=1+10+30+bar+progress+us+vb.net


i hope i can give you some idea...


game-master
0
 
LVL 13

Expert Comment

by:game-master
ID: 33614490
0
 
LVL 8

Accepted Solution

by:
PagodNaUtak earned 250 total points
ID: 33614789
I suggest you to use paging... Do not load the entire records just 100 of the results.
The user will have an option to select next batch of records.
Here is an example queries using SQL Server 2005
http://www.davidhayden.com/blog/dave/archive/2005/12/30/2652.aspx
http://www.15seconds.com/issue/070628.htm
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 8

Expert Comment

by:PagodNaUtak
ID: 33614793
0
 
LVL 7

Expert Comment

by:Inteqam
ID: 33614924
I go for paging too
0
 
LVL 7

Expert Comment

by:Inteqam
ID: 33614933
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.
0
 

Author Closing Comment

by:zipnotic
ID: 33618878
Paging will work for me thank you.
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

The Delta outage: 650 cancelled flights, more than 1200 delayed flights, thousands of frustrated customers, tens of millions of dollars in damages – plus untold reputational damage to one of the world’s most trusted airlines. All due to a catastroph…
Ever wondered why sometimes your SQL Server is slow or unresponsive with connections spiking up but by the time you go in, all is well? The following article will show you how to install and configure a SQL job that will send you email alerts includ…
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Via a live example, show how to extract insert data into a SQL Server database table using the Import/Export option and Bulk Insert.

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now