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 27/01/2005, 12h02   #1
Invité régulier
 
Inscription : juillet 2002
Messages : 44
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 44
Points : 9
Points : 9
Par défaut [Forms] : enregistrement en double

Bonjour,
Je suis tout nouveau dans ce forum et aussi je fais mes premiers pas avec forms 9ids.
Mon probleme c'est que j'essai d'inserer un enregistrement dans une table a travers un canevas empilé via un bouton, au debut j'avais integré des contraintes de clé primaire dans ma table et tout le temps je recevais un message de violation de contrainte, quand j'ai enlevé cette contrainte l'enregistrement passe bien mais j'ai le meme enregistrement deux fois inserer.
Voici mon code qui est assez simple:

Code :
1
2
3
4
INSERT INTO absence VALUES(:majabs.matricule,:majabs.datejour,:majabs.seance,:majabs.duree);
go_item('etudiant.matricule');
commit;
hide_view('absence');
ce code se trouve sur un bouton de commande dans le trigger when-button-pressed.
est ce que quelqu'un peut m'eclairer sur l'erreur que j'ai pu faire et merci pour votre aide.
Aminos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2005, 12h11   #2
Invité régulier
 
Inscription : décembre 2004
Messages : 7
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 7
Points : 6
Points : 6
Salut,
J'aimerais savoir si ton block majabs est basé ?
Si oui,alors c'est normal que ton enr. soit en double
le premier fait par forms vu que tu insère un enr. dans un block basé donc forms fait un insert dans la base
et le deuxieme fait par ton INSERT de ton declencheur "WHEN-BUTTON-RESSED"
Kast est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2005, 12h21   #3
Membre du Club
 
Inscription : août 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 75
Points : 42
Points : 42
Envoyer un message via ICQ à Aeternus Envoyer un message via AIM à Aeternus Envoyer un message via MSN à Aeternus Envoyer un message via Yahoo à Aeternus
Oui, tu ne dois pas faire d'instruction INSERT car Forms s'en charge lui meme lors du commit
__________________
Une faible lueur de bougie lutte dehors devant ma porte et réchauffe ma petite étincelle de vie.
Aeternus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2005, 12h23   #4
Invité régulier
 
Inscription : juillet 2002
Messages : 44
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 44
Points : 9
Points : 9
Excellent, c'etait ça mon erreur merci infiniment.
Mais maintenant l'enregistrement meme s'il est enregistrer dans la barre des taches de l'applet apres une insertion j'ai le message suivant:
Code :
FRM-40401:Aucune modification à enregistrer.
alors que qand je consulte via sqlplus j'ai mon enregistrement creé
Aminos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2005, 14h49   #5
Invité régulier
 
Inscription : décembre 2004
Messages : 7
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 7
Points : 6
Points : 6
Ce message veux dire que tu as fais un commit ou un commit_form alors qu'aucun de tes champs basé n'as changé.
Pour que ce message ne s'affiche tu peux soit changer la vairable SYSTEM.MESSAGE_LEVEL avant de faire ton commit

Code :
1
2
3
4
5
6
7
8
9
10
 
-- Dans ce cas tu peux mettre la variable à 5,10,15,20,25
DECLARE
  nMesLevel := :System.Message_Level;
BEGIN
  :System.Message_Level := 5;
  Commit;
  -- on remet comme c'etait avant
  :System.Message_Level := nMesLevel;
END;
ou tu peux faire un
Code :
1
2
 
Forms_Ddl('Commit');
à la place de ton commit; si tu veux valider seulement les ordres Ddl que tu as mis dans ton Forms
Kast est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2005, 17h36   #6
Invité régulier
 
Inscription : juillet 2002
Messages : 44
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 44
Points : 9
Points : 9
Merci beaucoup cela marche tres bien maintenant.
Aminos 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 09h33.


 
 
 
 
Partenaires

Hébergement Web