Oracle
 sql >> Base de données >  >> RDS >> Oracle

Création d'une minuterie dans Oracle Forms / Forms 6i et affichage d'une horloge

Créer une minuterie dans Oracle Forms / Forms 6i et afficher une horloge

C'est à propos de la minuterie dans D2k

Une horloge externe peut être construite à l'aide de minuteries. Les temporisateurs correspondent à des horloges internes, qui ont une période de temps spécifique. Lorsque la durée spécifiée expire, la minuterie peut soit effectuer une action une fois et s'arrêter, soit répéter l'action régulièrement chaque fois que la minuterie expire. La durée de la minuterie est toujours en millisecondes. Les minuteries sont créées à l'aide de CREATE_TIMER construit dans Oracle Forms et nécessite un WHEN-TIMER-EXPIRED déclencheur à écrire au niveau du formulaire. Ce déclencheur se déclenche chaque fois que la minuterie expire.

Utilisation des minuteurs REPEAT

Créons un élément d'affichage, CURRENT_TIME, dans le canevas de la barre d'outils horizontale CANVAS_TOOLBAR créé plus tôt. Cet élément affiche l'heure en HH24:MI:SS format et se met à jour toutes les secondes (la durée de la minuterie). Dans le WHEN-NEW-FORM-INSTANCE déclencheur, créez une minuterie nommée CLOCK_TIMER, qui itère toutes les secondes et remplit le CURRENT_TIME élément avec la date système en HH24:MI:SS format. Le code est le suivant :
DECLARE

   timer_id TIMER;

   one_second NUMBER := 1000;

BEGIN

   timer_id := FIND_TIMER('CLOCK_TIMER');

   IF NOT ID_NULL(timer_id) THEN

     DELETE_TIMER(timer_id);

   ELSE

     timer_id := CREATE_TIMER('CLOCK_TIMER',one_second, REPEAT);

   END IF;

     SELECT  TO_CHAR(SYSDATE,'HH24:MI:SS')

     INTO   :toolbar.current_time

     FROM   DUAL;

   EXCEPTION WHEN OTHERS THEN

     MESSAGE(TO_CHAR(SQLCODE)||''||SQLERRM);

END;

Créer un WHEN-TIMER-EXPIRED déclencher comme suit :
DECLARE

   timer_name VARCHAR2(30);

BEGIN

   timer_name := GET_APPLICATION_PROPERTY(TIMER_NAME);

   IF  timer_name = 'CLOCK_TIMER' THEN

      SELECT  TO_CHAR(SYSDATE,'HH24:MI:SS')

      INTO   :toolbar.current_time

      FROM   DUAL;

   END IF;

   EXCEPTION WHEN OTHERS THEN

      MESSAGE(TO_CHAR(SQLCODE)||''||SQLERRM);

END;

Voir aussi :Créer une présentation d'image avec Timer dans Oracle Forms,

https://www.foxinfotech.in/2014/02/creating-stopping-restarting-deleting-timer-oracleforms.html

Créer, arrêter, redémarrer une minuterie dans Oracle Forms

Régler le code PLSQL du formulaire Oracle à l'aide d'une minuterie

 Création d'une minuterie dans Oracle D2k / Forms 6i et affichage d'une horloge
Examiné par Rishion le 17 mars 2013
Évaluation :4