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 17/06/2004, 11h17   #1
Invité de passage
 
Inscription : mai 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 18
Points : 4
Points : 4
Par défaut FRM-40505

bonjour
j'ai un declencheur ' WHEN-NEW-BLOCK-INSTANCE' que au moment où il doit s'executer je reçoie le message d'erreur suivant : FRM-40505 erreur oracle: execution impossible de l'interrogation

ça peut etre quoi la cause?

NB le code de mon declencheur :


IF :KEY_BLOCK.CODE IS NOT NULL THEN
EXECUTE_QUERY;
ELSE
GO_BLOCK('KEY_BLOCK');
END IF;
tethrit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2004, 11h29   #2
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 530
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 530
Points : 6 460
Points : 6 460
Plusieurs causes possibles.

Généralement cela vient du fait qu'un des champs basé du block est de type incorrect ou est basé alors qu'il ne correspond à aucune colonne de la table,...


Vérifiez les propriétés de chaque champ de ce bloc sa taille (est-til sous-dimentionné ?), son type (est-ce le bon ?) son adéquation avec la colonne de la table sous-jacente
__________________
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 17/06/2004, 11h38   #3
Invité de passage
 
Inscription : mai 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 18
Points : 4
Points : 4
j'ai resolu ce probleme c''est que j'avais un champ qui n'est pas element de la base de données et montioné comme ettant un element de la bese.

mais j'ai dans un autre declecheur : d'inserer des données dans une table , il insere tout sauf un champ , ce meme champ où j'avais le premier probleme , il reste vide
qu'est ce que je peux faire ?
tethrit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2004, 11h52   #4
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 530
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 530
Points : 6 460
Points : 6 460
C'est normal que ce champ ne soit pas inséré dans la table puisqu'il n'est pas basé !
__________________
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 17/06/2004, 11h59   #5
Invité de passage
 
Inscription : mai 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 18
Points : 4
Points : 4
et qu'est ce que je peux faire dans un cas pareil , puisque quand je l'ai basé le requete ne s'executait pas.

c 'est un element texte dans un bloc de données , je veux inserer la valeur de cet element dans un champ d'une table ( un autre bloc de données )
tethrit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2004, 12h01   #6
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 530
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 530
Points : 6 460
Points : 6 460
Le plus simple est de gérer l'insertion de ce champ dans l'autre table dans un trigger POST-INSERT ou POST-UPDATE de votre 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 17/06/2004, 12h08   #7
Invité de passage
 
Inscription : mai 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 18
Points : 4
Points : 4
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
BEGIN
	GO_BLOCK('AFFECTER_MATIERE');
	FIRST_RECORD;
 
	WHILE :SYSTEM.LAST_RECORD = 'FALSE' LOOP
 
	  IF :NOTE IS NOT NULL AND :OBSERVATION IS NOT NULL THEN
	    INSERT INTO PASSER (MATRICULE_ETUD,
	                        CODE_MATIERE,
	                        CLASSE,
	                        NOTE,
	                        NOTE_POND,
	                        OBSERVATION,
	                        ANNEE_UNIVERSIT)
	    VALUES(:AFFECTER_MATIERE.MATRICULE_ETUD,
	           :AFFECTER_MATIERE.CODE_MATIERE,
	           :AFFECTER_MATIERE.CLASSE,
	           :AFFECTER_MATIERE.NOTE,
 
	           :AFFECTER_MATIERE.NOTE_POND,
	           :AFFECTER_MATIERE.OBSERVATION,
	           :K_ANNEE);
	  END IF;
	  NEXT_RECORD;
	END LOOP;
 
  IF :SYSTEM.LAST_RECORD = 'TRUE' THEN
    IF :NOTE IS NOT NULL AND :OBSERVATION IS NOT NULL THEN
	    INSERT INTO PASSER (MATRICULE_ETUD,
	                        CODE_MATIERE,
	                        CLASSE,
	                        NOTE,
	                        NOTE_POND,
	                        OBSERVATION)
	    VALUES(:AFFECTER_MATIERE.MATRICULE_ETUD,
	           :AFFECTER_MATIERE.CODE_MATIERE,
	           :AFFECTER_MATIERE.CLASSE,
	           :AFFECTER_MATIERE.NOTE,
 
	           :AFFECTER_MATIERE.NOTE_POND,
	           :AFFECTER_MATIERE.OBSERVATION
	           );
	  END IF;
  END IF;
:system.message_level := '25';  
COMMIT;  		  	 
:system.message_level := '0';
CLEAR_FORM;
 
END;
mnt K_ANNEE est l'element texte où je rentre ma valeur dans le form , et je veux que ça s'insere dans le champ annee_universit d'une table (affecter_matiere) comme tous les autres elements dans cet insert .
tous les champs sont inserer sauf le dernier .

avec un post_insert , je peux inserer un seule elemant ?( dans une ligne qui contient +ieurs champs)
tethrit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2004, 12h10   #8
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 530
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 530
Points : 6 460
Points : 6 460
Le trigger POST-INSERT ou POST-UPDATE se déclenche bien évidement pour chaque 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 17/06/2004, 12h54   #9
Invité de passage
 
Inscription : mai 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 18
Points : 4
Points : 4
merci
c bon je l'ai resolu , ai niveau de mon premier insert
bonne journée
tethrit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2008, 16h25   #10
Membre régulier
 
Avatar de sofien
 
Inscription : février 2005
Messages : 311
Détails du profil
Informations personnelles :
Âge : 30

Informations forums :
Inscription : février 2005
Messages : 311
Points : 81
Points : 81
Envoyer un message via Yahoo à sofien Envoyer un message via Skype™ à sofien
Bonjour, j'ai le même problème...La requête qui me génère l'erreur (en appuyant sur SHIFT+F1 est :

Code :
SELECT NBJ,NB,ANS,DATABS,NBR,DATFIN,MOTIF,ELEMAT,HEURE_ABS,ROWID FROM ABSENCE WHERE (ELEMAT=:1)
Et l'erreur est : invalid number
En fait j'ai vérifié le type des colonnes dans la base de données et ceux des champs mais il n y'a d'incompatibilités...
sofien 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 10h38.


 
 
 
 
Partenaires

Hébergement Web