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/07/2004, 15h46   #1
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
Par défaut validation au niveau block(forms)

Bonjour, j'ai une application forms9i, comment je peux déclencher la validation du block en cours seulement.
N.B: commit_form() (valide tout le formulaire)
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2004, 15h58   #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
Vous ne pouvez pas. A moins de placer des triggers ON-INSERT, ON-UPDATE, ON-DELETE avec juste l'instruction NULL; dans les autres block.
__________________
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/07/2004, 16h06   #3
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
En fait, j'ai pu le faire avec clear_block(do_validate) mais moi
je veux valider le blok en cour sans l'effacer.
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2004, 16h08   #4
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
dans ce cas, il faut refaire un execute_query dans ce bloc juste après.
__________________
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/07/2004, 16h16   #5
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
ça va être lourd !?
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2004, 16h22   #6
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
Pourquoi ne voulez-vous enregistrer qu'un seul bloc ?
__________________
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/07/2004, 16h30   #7
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
parceque c'est dérangement pour l'utilisateur quand il enregistre un block le système revient en lui donnant une erreur sur un autre block
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2004, 16h36   #8
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
Cela me parait normal.
En fait vous voulez autoriser votre utilisateur à enregistrer une partie des infos, mais pas l'autre qui cause une erreur ?

Cela, par contre, ne me parait pas très satisfaisant...
__________________
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/07/2004, 16h42   #9
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
non, il peutlaissé un block en instance et aller travailler sur une autre opération(Block) en attendant par exemple l'arrivée d'un aquittement pour que le block précedent soit enregistrer
tu voie?
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2004, 16h44   #10
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
Non, désolé, je ne vois pas vraiment (fonctionnellement parlant)

Si les contrôles suffisant étaient faits sur chaque block, il n'y aurait pas d'erreur à l'enregistrement.
__________________
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/07/2004, 16h51   #11
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
e me suis peut être mal exprimé bon:
j'ai lors de la validation d'un block un contrôle sur l'existence d'un fichier quittement de l'opération, ce fichier il est générer à partir d'une application distante sous foxpro, si jamais l'utilisateur essai de valider l'opération avant la réception de l'aquittement le système génrère un message informant de user que l'aquittement n'est pas encore reçu alors pourkoi pénaliser le user en le laissant attendre l'aquittement, il vaut mieux en profiter pour passer d'autres opérations dans d'autres block.
j'espère que c'est claire mnt
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/07/2004, 16h56   #12
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
Ok, donc votre solution Clear_block('do_commit') + execute_query sur ce bloc devrait aller et n'a rien de lourd (sauf si votre block ramène des milliers de lignes )
__________________
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/07/2004, 17h03   #13
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
Ce que vous pouvez faire également c'est de gérer vous-même les insert, update et delete dans votre bloc en attente de validation dans des triggers de niveau block : ON-INSERT, ON-UPDATE et ON-DELETE.
dans chacun de ces triggers, vous pouvez procéder ou non à la mise à jour. et de ce fait revenir au bon vieux commit_form
__________________
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/07/2004, 17h28   #14
Futur Membre du Club
 
Inscription : décembre 2003
Messages : 44
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 44
Points : 16
Points : 16
oui mrci c'est une bonne idée
Challenger est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h39.


 
 
 
 
Partenaires

Hébergement Web