Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Forms
Forms Forum d'entraide sur Oracle Forms
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/04/2007, 17h38   #1
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Par défaut [Forms10g] : Progress bar

Salut,

Dans ma forme j'execute une procédure qui prend un peu de temps, je veux
mettre une progress bar pour que l'user suit la progression de l'execution.

Mon idée:
Utiliser un text_item qui sert comme progress bar , timer , dbms_application_info , v$session_longops(SOFAR ,TOTALWORK ,TIME_REMAINING ,ELAPSED_SECONDS ,USERNAME )
Est ce c'est bonne solution ?

Je vous remercie d'avance.
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2007, 19h48   #2
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 533
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 533
Points : 6 469
Points : 6 469
Bonjour,

le timer ne se déclenchera pas pendant l'exécution de la procédure, donc vous n'aurez pas l'occasion de faire quoi que se soit pendant toute la durée d'exécution de cette procédure.
Une piste d'investigation pourrait être de lancer la procédure via une autre forme (OPEN_FORM) et de tester l'avancée de cette procédure depuis la forme appelante.
__________________
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2007, 20h00   #3
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Salut ,

Merci pour votre réponse Mr SheikYerbouti.

Est ce que c'est une bonne solution de tester l'avancement de l'execution de la forme appelante par dbms_application_info , v$session_longops(SOFAR ,TOTALWORK ,TIME_REMAINING ,ELAPSED_SECONDS ,USERNAME )
ou il faut penser à JAVABEAN?
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2007, 14h49   #4
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Salut,

J'ai trouvé cette requette qui me donne la progression de mon long opération,
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
SELECT SID
      ,SERIAL#
      ,USERNAME
      ,OPNAME
      ,TO_CHAR(START_TIME,'DD-MON-YYYY HH24 MI SS') STARTED
      ,SOFAR/TOTALWORK*100||'%'                     PCT_COMPLETE
      ,ELAPSED_SECONDS/60                           MINUTES
--    ,TOTALWORK
--    ,UNITS
--    ,TIME_REMAINING
   FROM V$SESSION_LONGOPS
   WHERE sid =sys_context('userenv','SID')  AND TOTALWORK!=0 ;
Les opérations de longue durée aparaisse dans la vue V$session_longops si ça durée d'éxecution dépasse les 6 secondes.
http://www.gplivna.eu/papers/v$session_longops.htm

Dans mon cas je lance un update de 3 minutes et l'opération n'apparait pas ???

Merci d'avance.
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h31.


 
 
 
 
Partenaires

Hébergement Web