Como q eu crio um timer que atualiza um campo em um determinado tempo?!
Por exemplo, se eu quiser criar um relógio digital que apareça no meu canvas.... eu tenho as váriáveis de sistema (system.current_datetime)....
mas toda hora eu teria q estar atualizando pra pegar a hora.... como q faço isso?!
Timer
- tfg
- Rank: Analista Júnior
- Mensagens: 83
- Registrado em: Seg, 03 Mai 2004 3:38 pm
- Localização: Novo Hamburgo - RS
Primeiro, você precisa criar seu TIMER. Onde criar? (você que decide isso. Pode ser na PRE-FORM, pode ser dentro de uma WHEN-BUTTON-PRESSED, etc)
Aí vai os passos:
Depois, você tem que criar uma trigger When-Timer-Expired. Nela você coloca o código que você deseja que dispare.
.
Aí vai os passos:
DECLARE
hour_timer TIMER;
one_hour NUMBER(7):=3600000; -- expira de hora em hora
BEGIN
--cria o timer "alarm", de uma hora (em mili-segundos)
--(pode ser Repeat ou NO_REPEAT)
hour_timer:= CREATE_TIMER('alarm',one_hour,REPEAT);
END;
Depois, você tem que criar uma trigger When-Timer-Expired. Nela você coloca o código que você deseja que dispare.
.
- Toad
- Rank: DBA Pleno
- Mensagens: 253
- Registrado em: Sex, 18 Nov 2005 2:14 pm
- Localização: Seattle, WA
- Contato:
Matheus Gonçalves
matheus.dev
twitter.com/developer__c
matheus.dev
twitter.com/developer__c
Um exemplo pra fazer o uso no When-Timer-Expired:
Ou seja, quando ele virar o timer, ele atualiza o dado do relógio da tela.
DECLARE
tm_name VARCHAR2(40);
BEGIN
break;
tm_name := upper(Get_Application_Property(TIMER_NAME));
IF tm_name = 'ALARM' THEN
:agora := sysdate;
END IF;
END;
- alef
- Rank: Analista Pleno
- Mensagens: 119
- Registrado em: Ter, 06 Nov 2007 2:45 pm
- Localização: Patos de Minas - MG
Alexandre Matos
Patos de Minas - MG
Do interior de Minas para o resto do Mundo
Patos de Minas - MG
Do interior de Minas para o resto do Mundo
Tutorial passo-a-passo para eventual pesquiza no futuro.
Primeiro criar o timer na when-new-form-instance (ou outra qualquer)
depois crio uma trigger WHEN-TIMER-EXPIRED a nivel de forms que o Toad usou como exemplo e fazendo algumas modificações.
Primeiro criar o timer na when-new-form-instance (ou outra qualquer)
DECLARE
temporizador Timer;
T NUMBER(5) := 60000; -- 1 minuto
BEGIN
temporizador := CREATE_TIMER('tempo', T, REPEAT);
END;
DECLARE
tm_name VARCHAR2(40);
BEGIN
break;
tm_name := Get_Application_Property(TIMER_NAME);
IF tm_name = 'tempo' THEN
:Bloco.Relogio := sysdate; -- acerta a hora atual.
END IF;
END;
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Bing [Bot] e 9 visitantes