Solved

Busy Cursor while report is generating

Posted on 2006-07-12
6
1,340 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
ID: 17093710
How do you generate your report? Do you call a report builder fn or a stored proc?
0
 
LVL 12

Expert Comment

by:jwahl
ID: 17094283
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
ID: 17094655

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
ID: 17094794
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
ID: 17094889
If you run it in SYNCHRONOUS control will be returned only after the report generation is completed.
0
 

Author Comment

by:jim_1234567890
ID: 17095058
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.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Working with Network Access Control Lists in Oracle 11g (part 2) Part 1: http://www.e-e.com/A_8429.html Previously, I introduced the basics of network ACL's including how to create, delete and modify entries to allow and deny access.  For many…
Introduction A previously published article on Experts Exchange ("Joins in Oracle", http://www.experts-exchange.com/Database/Oracle/A_8249-Joins-in-Oracle.html) makes a statement about "Oracle proprietary" joins and mixes the join syntax with gen…
This video shows how to Export data from an Oracle database using the Datapump Export Utility.  The corresponding Datapump Import utility is also discussed and demonstrated.
This videos aims to give the viewer a basic demonstration of how a user can query current session information by using the SYS_CONTEXT function

778 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