|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : mars 2005 Messages : 119 ![]() |
Bonjour,
Voila j'ai un petit soucis : au moment ou je veux valider le contenu de ma forme je fais qq validations/verifications sur ce qui a été fait par l'utilisateur avant de lancer le mecanisme d'insertion et de commit. La procedure de validation est appelée dans PRE-COMMIT. Cette forme etant composée de plusieurs blocs je passe de l'un a l'autre lors de ma validation grace a GO_BLOCK() Lors de l'execution, j'obtiens un FRM-40737 sur le 1er de ces GO_BLOCK : il est en effet interdit d'utiliser une fonction restreinte dans un trigger pre- ou post- Pour contourner le pb j'ai suivi les conseils de metalink : remplacer mon code de verification dans le trigger PRE-COMMIT par des create_timer et reporter mes verifications dans le trigger WHEN-TIMER-EXPIRED (là les GO_BLOCK sont autorises). Le probleme, c'est que contrairement à ce que je lis dans la litterature Oracle, le trigger WHEN-TIMER-EXPIRED n'est pas appele tout de suite apres la commande create_timer. Il est est meme appele suffisemment tard pour qu'il soit appele apres que le mecanisme d'insertion ait eu lieu. J'insere donc sans verifier mes données... Qqun a déjà rencontré ce probleme ? PS : voici la syntaxe que j'utilise pour la commande create_timer Code :
V_TIMER_ID := CREATE_TIMER('id_valid', 1,no_repeat); |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Pourquoi ne pas mettre tes contrôles dans le KEY-COMMIT (où les go_block sont autorisés) juste avant de faire commit_form ? Cela me semble moins usine à gaz que le système des timer
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : mars 2005 Messages : 119 ![]() |
Tout simplement parce que je suis un p'tit débutant et que ma connaissance de l'enchainement des triggers n'est pas parfaite !
Merci en tout cas, ca solutionne mon pb ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com