When-Timer-Expired not firing if LOV is open
In my form I have a when-timer-expired trigger that kicks the user out of the form if there is no activity for one minute. But if the LOV is open the when-timer-expired trigger is not firing.
Thanks,
yeah !
if the form starts a db-function or a host-command or a lov - then the form isn't able to do something else parallel to this...
e.g. :
WHEN-BUTTON-PRESSED :
IF show_lov () THEN
END IF;
if the lov works different, then you have parallel working program units. In this case :
a WHEN-BUTTON-PRESSED and a WHEN-TIMER-EXPIRED
and this is today impossible in Forms
Similar Messages
-
GO_FORM when TIMER-EXPIRED
Just want to know if I am doing something wrong
or if it's another feature of Forms. I have a
GO_FORM within an IF statement in the (repeating)
WHEN-TIMER-EXPIRED trigger. It all goes well until
the IF statement evaluates to a value that makes
GO_FORM the case, the repeating timer seems to go
dead after GO_FORM switches the focus to the
specified form. Any comments? Thanks in advance.Hi Eugeniy,
The original WBP trigger has already the following code:
go_item('bijz.click_datum');
do_key('list_values');
The section where copy ('0','GLOBAL.save_mouse_record'); is mentioned is part of the code that Metalink offered me, look at:
Note 266535.1 How to call to a calender window against an unbound item via an LOV button.doc
Best regards,
Ronny. -
Hi everyone,
This is my first time using this trigger and i dont really catch what to do to make it fire. Arwind advices me to use it to make the valus of the item blink. The way i see it it should work but i guess i'm missing something...could u plz help me find what i'm missing here.
Here is the only code i have for the trigger.
DECLARE
id_item ITEM;
timerid TIMER := FIND_TIMER('BLINK');
BEGIN
if :prix_en_vigueur is not null then
/*--- Make the item blink ---*/
id_item := find_item('PRIX_EN_VIGUEUR');
set_timer(timerid, 1000, REPEAT);
if get_item_property('id_item',DISPLAYED) = 'PROPERTY_TRUE' then
set_item_property(Id_item,
DISPLAYED,PROPERTY_FALSE);
else
set_item_property(Id_item, DISPLAYED,PROPERTY_TRUE);
end if;
end if;
END;
Does it have something to do with the set_timer or delete_timer and if so how should i use them.
Thanx in advance for ur replies.
nullYou have the when-timer-expired defined at form level. In it you should first have a call to get_application_property(TIMER_NAME), that returns the name of the timer that has made the trigger fire, depending on which you perform what you have to do under those circumstances.
How to make it fire? In whatever trigger you find appropriate you call set_timer, that starts the countdown for the number of milisecs you specify that finally generates the "Timer-Expired" event which makes the trigger fire.
Regards,
BD -
Timer --what you type gets lost on other forms when timer expires
I am using a timer that works fine on this one form. The problem lies you move to a different form that does not have a timer and start typing and if the timer fires at that time while you are typing the focus moves to the form with the timer but it appears that the other form is still there infront.But what you type gets lost at the moment the timer expires.
I am using go_block on when timer expired form.
Any good way t handle this ?I am using a timer that works fine on this one form. The problem lies you move to a different form that does not have a timer and start typing and if the timer fires at that time while you are typing the focus moves to the form with the timer but it appears that the other form is still there infront.But what you type gets lost at the moment the timer expires.
I am using go_block on when timer expired form.
Any good way t handle this ? -
Regarding When-timer-expired trigger
Hi,
My requirement is to display time .From my understanding i think every time
when-timer-expired shuttle between client and middle tier for this purpose for
every expiry of time .This i feel degrades the performance.
Is there any workaround available so that the database time is fetched for the first
time and thereafter refreshing could takeplace in the client-side
Thanks in advance
regards,
prabakaran.sHere is the code:
package oracle.forms.fd;
import java.awt.AWTEventMulticaster;
import java.awt.Color;
import java.awt.Cursor;
import oracle.forms.handler.IHandler;
import oracle.forms.properties.ID;
import oracle.forms.ui.VTextField;
* A PJC to have a textfield blinking
* @author Francois Degrelle
* @version 1.0
public class BlinkTextField extends VTextField implements Runnable
public final static ID START = ID.registerProperty("START");
public final static ID STOP = ID.registerProperty("STOP");
public final static ID SETBLINKRATE = ID.registerProperty("SETBLINKRATE");
public final static ID SETFGCOLOR = ID.registerProperty("SETFGCOLOR");
public final static ID SETBGCOLOR = ID.registerProperty("SETBGCOLOR");
static Thread runner ;
protected int seconds = 400 ; // milliseconds
private Color cdefFG = null ; // default background color
private Color cdefBG = null ; // default foreground color
private Color cFore = null ; // blinking foreground color
private Color cBack = null ; // blinking background color
private boolean bSwitch = true ;
private IHandler m_handler;
public BlinkTextField ()
super();
public void init(IHandler handler)
m_handler = handler;
super.init(handler);
cdefFG = this.getForeground() ;
cdefBG = this.getBackground() ;
* switch color to simulate the blinking process
public void run()
Thread theThread = Thread.currentThread();
while (runner == theThread)
try{
Thread.sleep(seconds);
} catch (InterruptedException e) { }
if(bSwitch)
if(cBack != null) this.setBackground(cBack);
if(cFore != null) this.setForeground(cFore);
else
this.setBackground(cdefBG);
this.setForeground(cdefFG);
bSwitch = ! bSwitch ;
private void startTimer()
if (runner == null )
runner = new Thread(this);
runner.start();
private static void stopTimer()
if (runner != null )
runner = null;
public boolean setProperty(ID property, Object value)
if (property == START) // start the blinking
startTimer() ;
System.out.println("** Start **");
return true;
if (property == STOP) // stop the blinking
System.out.println("** Stop **");
stopTimer() ;
return true;
else if (property == SETBLINKRATE) // set the cursor blink rate
int i = Integer.parseInt(value.toString());
seconds=i;
System.out.println("** SetRate="+seconds+ " miliseconds");
return true;
else if (property == SETFGCOLOR) // set the foreground color
cFore = getColor(value.toString()) ;
System.out.println("** SetFGColor="+cFore);
return true;
else if (property == SETBGCOLOR) // set the background color
cBack = getColor(value.toString()) ;
System.out.println("** SetBGColor="+cBack);
return true;
else
return super.setProperty(property, value);
// expects r,g,b values separated by commas
public Color getColor(String colourValue)
try{
int r,g,b;
int rPos, gPos;
rPos = colourValue.indexOf(",");
gPos = colourValue.indexOf(",", rPos + 1);
if (rPos < 1 || gPos < 1 || gPos + 1 == colourValue.length()) {
throw new Exception("Invalid colour");
r = Integer.parseInt(colourValue.substring(0, rPos));
g = Integer.parseInt(colourValue.substring(rPos + 1, gPos));
b = Integer.parseInt(colourValue.substring(gPos + 1));
if (r < 0 || r > 255 || g < 0 || g > 255 || b < 0 || b > 255) {
throw new Exception("Invalid colour");
return new Color(r,g,b);
catch(Exception e) {
return new Color(0,0,0);
}Francois -
WHEN-TIMER-EXPIRED
declare
var number :=10;
v_al char(3);
v_al_ti date;
begin
for i in 1..var loop
:control.showdate := TO_CHAR(SYSDATE,'DD-MONTH-YYYY');
:control.showtime := TO_CHAR(SYSDATE,'HH24-MI-SS AM');
select alarm, alert_date, alert_time
into v_al, v_al_da, v_al_ti
from remind
where alarm='ON';
if v_al = 'ON' AND
v_al_ti = to_char(sysdate,'HH24-MI-SS AM') AND
v_al_da = to_char(sysdate,'DD-MONTH-YYYY')then
message('alert is on ');
end if;
if var =9 then
var:= var+1;
end if;
end loop;
end;
THE CLOCK WORK BUT THE FORMAT MASK GIVE ERROR.
I WANT TO RAISE A MESSAGE WHEN AN REMINDER ENTRY HAVE ALARM = 'ON'
AND DATE = SYSDATE
AND TIME = SYSDATE.
THE TABLE HAVE FOLLOWING COLUMNS.
SQL> desc remind;
Name Null? Type
RE_ABOUT VARCHAR2(100)
ALARM CHAR(3)
ALERT_TIME DATE
ALERT_DATE DATE
THANKS IN ADVANCE.
REPLY ME ON MY EMAIL.
MUHAMMAD NADEEM
MARDAN (PAKISTAN)
[email protected]
+92-0301-8334434Hi Nadeem,
Change these two lines of code:
:control.showdate := TO_CHAR(SYSDATE,'DD-MONTH-YYYY');
:control.showtime := TO_CHAR(SYSDATE,'HH24-MI-SS AM');
Try with replace the above with select statement like below.
select TO_CHAR(SYSDATE,'DD-MONTH-YYYY'), TO_CHAR(SYSDATE,'HH24-MI-SS AM') INTO :control.showdate, :control.showtime From dual;
Cheers -
Webutil demo problems - WHEN-TIMER-EXPIRED error
Hi there,
I have just installed the 10.1.2 forms no problems. I then downloaded the demo of webutil from OTN and cannot get it to run properly. Can anyone help.
I initially had to rename the webutil.pll (i renamed to webutil_lib.pll as recommended in an earlier forum) file to overcome an initial error and now I can at least see the runtime canvas. I dropped and re-attached the attached libraray for this pll file (Is this all I have to do?)
The problem is I immediately get the error FRM-40735:WHEN-TIMER-EXPIRED trigger raised unhandled exception ORA-06508 in the console. This error continues for every event I do that has a trigger associated, ie changing tabs or pressing buttons, the only difference in the error message is the trigger name.
I can see the canvas and various items on the tab sheet but none of the triggers that refernce webutil appear to work.
I presume I have missed something simple, possibly when I renamed the .pll file.
Any ideas.
DougDougo,
I checked our bug database for this topic and couldn't find anything reported. Can you file a TAR with support to have them analyzing your problem. (metalink.oracle.com)
Frank -
I NEED TO RUN WHEN-TIME-EXPIRED
AFTER PRESS PTN
BUT DONT KNOW HOWThis sound like a Oracle Forms question.
You might get more response in the designated forms forum here
Forms -
When-timer-expired hit the cursor position
Some of our forms sometimes have timers running, to monitor
progress of this and that. We've found that if the timer
expires when you're typing in a form field, there's a tendency
for the cursor to momentarily move to the beginning of the field
then jump back to roughly where it had been. If you're just
typing away without paying attention, this can be messy.
Specifically, I put a few '0' characters at the beginning of a
large field, then hit '1' and let it go to autorepeat. When the
trigger fires, the insert cursor goes to a wait cursor for a
bit, then back. I'll find a few '1' characters at the beginning
of the field, and the insert cursor is now pointing the same
number of characters from the end of the field. My testing
indicates that the more time spent in the trigger, the more
likely the problem is to occur. Also, it happens more if
you're in a different form than the one with the timer.
does anyone know how to handle this situation
i m using when_timer_expired trigger with folllowing code
declare
v_timer varchar2(40);
begin
v_timer:=get_application_Property(timer_name);
if v_timer='TIMER_TIME' then
:CONTROL.onscreen:=to_char(sysdate,'HH12:mi:ss AM');
end if;
end;You could use JDAPI to make bulk changes to your Forms ...
Re: Reading items/blocks/LOVs in the Object Navigator
h2. UPDATE:
Take a look at metalink note 45615.1 - Focus And Timer Behavior In Multiple Form Applications
It seems you need to keep destroying and recreating the timer as you navigate from Form to Form ..
Edited by: Rodolfo Ferrari on Aug 20, 2009 6:26 PM -
When-database-record not firing
I have a single record block in a form and the when-database-record trigger is not firing after I update and leave the first item in the record.
This only happens when I create-new-record, not when I update an existing record. I have checked the record status after I update the first item and the record status is new.
I am updating non-display items in the background, then executing a query on the block on when-new-form-instance. I programatically set the block status to QUERY status so that if the user attempts to exit the form without making any changes the form does not prompt the user to save changes.
I checked system.mode parameter and it is NORMAL. Should it be ENTER-QUERY? Can I update this programatically, I know the api for this is not public but I have seen it before.
ta, MichelleThe status should notchange if you modify a non database item
-
When-Timer-Expired goes back to form
Got a problem in my application where I have a timer on my for which requery's everytime it expires. However if I am in another application e.g. Windows Nt Explorer every time the timer expires control goes back to the form.
Does any one have any ideas??Try closing Mail App in Multitask Window
1. Double tap the home button to bring up the multi-tasking view
2. Swipe up on the screenshot of the Mail app to close
3. The app will fly off the screen
4. Test Mail again -
Every time I open a window in firefox it constantly reload itself and when I finally get it to stop and open another tab and try to go back to the previous tab it reload itself....Please Help
== This happened ==
Every time Firefox opened
== About 4 months agoDo you have that problem when running in the Firefox SafeMode?
[http://support.mozilla.com/en-US/kb/Safe+Mode]
''Don't select anything right now, just use "Continue in SafeMode."''
If not, see this:
[http://support.mozilla.com/en-US/kb/troubleshooting+extensions+and+themes] -
Raise form_trigger_failure does not work in when-timer-expired trigger
hi everbody,
i create timer (no repeat) in when-validate-item trigger for an item then in timer i use raise form_trigger_failure for not posting related item.but raise form_trigger_failure not work in timer and cursor go next item ? do you say anything for that ? thanks..when your validation runs ok, then and only then you should create the timer and in the WTE you navigate to the other item.
Think about: The WTE-trigger runs after the when-validate-item. It runs not within the WVI. That's the reason why you cannot cancel the WVI with the WTE.
Only the WTE can be stopped with the Form_Trigger_Failure. -
When validate item not firing when exit with mouse
Hi
I have a when validate item tirgger on an item.
it fires fine when I use tab from keyboard after validating
but when i navigate to another field with the mouse, the trigger does not fire.
it only fires when i try to close the window..
how can i overcome this?
thanksNormally, a WVI trigger ALWAYS runs when you leave a field no matter how you leave it (after you have entered something, of course). If it is not running, then you should check whether you have messed around with Set_Form_Property and Validation_Unit.
Or maybe you have some code in your key-next-item trigger that runs that makes you think it is the when-validate-item trigger. -
Cursor changes to "Busy" when timers expires in Form
Forms 10.1.2.0.2
I created a Form with a multinline block to implement a blinking effect on certain rows depending on certain conditions
whilst using a repeating timer.
The screen is working fine so far but I am facing the problem that the cursor automatically changes its status from
normal to busy for a moment and then back from busy to normal when the timers expires.
In addition, the status bar on the console (which is the lower right working status bar) displays a "working"
condiition when the timers expires (scrolling from left to right each time the timer expires).
This leads to annoying visible effects as not only my rows are blinking fine but also the cursor does -.-
I removed the Synchronze; Built-In from the WHEN-TIMER-EXPIRED and also replaced any data processing within
the Trigger by a Null; Statement but the cursor keeps on changing its Form automatically.
I also tried to set the Cursor style to default within this Trigger but the cursor keeps on changing its Form.
Is there any way to suppress this behaviour ?Hi,
Do you have any security programs installed on your computer? If so, temperarily turn off them to check if this issue persists.
We can also try to run Word in safe mode to test if the issue is caused to a problematic add-in. To do this, press Windows key + R, type
Winword.exe /safe in the Run dialog and press Enter.
In addition, did you installed any printer drivers? If so, some bad printer drivers may cause such issue. Please make sure you have installed the latest printer driver form the official website. If possible, we can try to uninstall the printer drivers
to check if the issue persists.
Regards,
Steve Fan
TechNet Community Support
Maybe you are looking for
-
In some scenarios HL7 message is coming with special character '' and HL7 dis-assembler escaping this character with "". But while sending out (pass thru pipeline but orchestration trying to persist here at last sendshape.) from orchestrat
-
I'm using a Macmini with Snow Leopard. Everything is up-to-date according to the software updates manager. Can I go back to the previous version? I work from home and have very noisy neighbors so my music allows me to stay focused. Thanks for any
-
Hi unfortunately due to the requirement to save the form i had to use the pdf form instea dof the web version. the problem i have i s the form is live and working ok, but i neeed to make some adjustments to the form, whats the best way to do this? ca
-
HT1539 Why wouldn't a digital copy be able to sync to my ipod?
I downloaded the digital copy, plugged in my ipod and it says it won't sync. The formatting of the video isn't supported by the ipod. Is there a way to fix this?
-
Has Apple increased the security on Mail? I used to be able to view WMV's in Mail before Leopard. Now mail is not allowing them to come through. It says it detected a virus and won't let it through. I can view them in Verizon Yahoo mail but I have to