Tabs and Executing queries [message #196293] |
Wed, 04 October 2006 20:51  |
Cyntech
Messages: 3 Registered: August 2006 Location: Canberra
|
Junior Member |
|
|
Hi everyone,
I have done a lot of searching on this, but I can't seem to find anything on it. I may have a unique issue, but I'm hoping there's someone here that might have a suggestion.
I am currently developing an Oracle Form, that includes a Tab Canvas. The form relates to an application to an educational institution. There are 3 tabs on this form, application, marketing and skills. The main tab, application is where the information is entered from the application form. The marketing tab includes information on how the person found the institution, their education levels and employment details, and skills captures information about their current skills.
The form is developed, and it works rather well. However, the end-user of the form prefers to navigate through the tabs with a mouse.
My issue is that I can not seem to find a way to query the data blocks on the 2nd and 3rd tabs when navigating with a mouse. Using KEY-NXTBLK works fine, obviously, it navigates through the blocks on the tabs, querying as they go. However, if the user uses the mouse to navigate to a tab, then clicks on one of the fields (The marketing tab includes a lot of check boxes for instance), the data block isn't queried, it acts as a new insert.
How can I trigger an execute query when they navigate to the tab via a mouse without having to place a 'WHEN-MOUSE-CLICKED' trigger on every field on the form?
Thanks in advance...
Chris
|
|
|
|
Re: Tabs and Executing queries [message #196320 is a reply to message #196307] |
Thu, 05 October 2006 00:20  |
Cyntech
Messages: 3 Registered: August 2006 Location: Canberra
|
Junior Member |
|
|
wency wrote on Thu, 05 October 2006 14:58 | Execute query on when-tab-changed
|
Ah ha!
Thanks for this. 
I had to delve deep into the Forms Help to find :SYSTEM.TAB_NEW_PAGE.
I used the following logic in a Form level WHEN-TAB-PAGE-CHANGED trigger:
DECLARE
tp_nm varchar2(30);
BEGIN
tp_nm := :SYSTEM.TAB_NEW_PAGE;
IF tp_nm = 'APPLICATION' THEN
go_block('application');
execute_query;
go_block('course_preferences');
execute_query;
go_block('application');
END IF;
END;
This works great.
Thanks
[Updated on: Thu, 05 October 2006 00:20] Report message to a moderator
|
|
|