Solved

Busy Cursor while report is generating

Posted on 2006-07-12
6
1,330 Views
Last Modified: 2007-11-27
Using Oracle forms and reports 6i on a Windows XP workstation I wanted to have the Forms display the hour glass (busy cursor) while the report is being generated.

Right now there a few report that that a bit of time to execute.  IE the user presses the button and the report comes back 5-10 seconds later.

The issue is that the user presses the button the icon switch to the hour glass for a second and then control is returned the forms.  5-10 seconds later the report is produced in the background or pops to the front.  The typical user request the report and the since it does not come up instantly and the cursor is not showing as busy they press the button again, and again, and again, and again.....

When the user presses the button to request the report I would like to be able to display the hour glass until the report has been fully generated.

I would tend to think that Oracle Forms would have to monitor the system and watch for the report to be generated.  Maybe there is a better way?

Is it even possible and what would you do (coding would be useful).

Thanks.

0
Comment
Question by:jim_1234567890
  • 3
  • 2
6 Comments
 
LVL 14

Expert Comment

by:sathyagiri
Comment Utility
How do you generate your report? Do you call a report builder fn or a stored proc?
0
 
LVL 12

Expert Comment

by:jwahl
Comment Utility
maybe it helps when setting it manually:

SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'BUSY');
-- call your report
SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'DEFAULT');
0
 

Author Comment

by:jim_1234567890
Comment Utility

The
"
 SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'BUSY');
-- call your report
SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'DEFAULT');
"

Method does not do the trick at all.  Currently that is what I have.

Right now we run the reports in a couple of different ways.
One way is through a function call and the other is pretty much direct.  Both have this code at the core:

RUN_PRODUCT(REPORTS, outFileName, SYNCHRONOUS, RUNTIME, FILESYSTEM, inPrmList, NULL);


If I do
 SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'BUSY');
RUN_PRODUCT(REPORTS, outFileName, SYNCHRONOUS, RUNTIME, FILESYSTEM, inPrmList, NULL);
SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'DEFAULT');

OR

SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'BUSY');
RUN_PRODUCT(REPORTS, outFileName, ASYNCHRONOUS, RUNTIME, FILESYSTEM, inPrmList, NULL);
SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'DEFAULT');

The end result is bascilly the same.

The cursor blinks busy.
The report is requested.
The cursor returns to normal.

The user can do interactions with the from.  
The report is being called (the reports run time starts up, etc).

Finally the report is generated and pops to the front.


 But because it can take 5-10 seconds for the report to return the end user does not think the report request has been full filled and they click the buttons again.

I need the cursor to remain busy until the report is 100% finished.



0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 14

Expert Comment

by:sathyagiri
Comment Utility
Change ASYNCHRONOUS to SYNCHRONOUS
Use this
RUN_PRODUCT(REPORTS, outFileName, SYNCHRONOUS, RUNTIME, FILESYSTEM, inPrmList, NULL);
0
 
LVL 14

Accepted Solution

by:
sathyagiri earned 200 total points
Comment Utility
If you run it in SYNCHRONOUS control will be returned only after the report generation is completed.
0
 

Author Comment

by:jim_1234567890
Comment Utility
That seem to do.  I am not sure if they will like the fact that Forms appears to lock up until they close the report.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

Suggested Solutions

How to Create User-Defined Aggregates in Oracle Before we begin creating these things, what are user-defined aggregates?  They are a feature introduced in Oracle 9i that allows a developer to create his or her own functions like "SUM", "AVG", and…
Using SQL Scripts we can save all the SQL queries as files that we use very frequently on our database later point of time. This is one of the feature present under SQL Workshop in Oracle Application Express.
Via a live example, show how to take different types of Oracle backups using RMAN.
Via a live example, show how to restore a database from backup after a simulated disk failure using RMAN.

772 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

13 Experts available now in Live!

Get 1:1 Help Now