Bonjour

Environnement : Forms 9i interfacé avec un serveur sur Windows 2003 hébergeant une base en 10gR1.

Pour améliorer la maintenance de mon code, j'ai simplifié le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
LTY_bases(LN_indice).LC_id_pa1 	:= :B0.ID_TRA_PA_1;
LTY_bases(LN_indice).LC_pa1 	:= :B1.TRA_PA_1;
LTY_bases(LN_indice).LC_id_pa2 	:= :B0.ID_TRA_PA_2;
LTY_bases(LN_indice).LC_pa2 	:= :B1.TRA_PA_2;
LTY_bases(LN_indice).LC_id_pa3 	:= :B0.ID_TRA_PA_3;
LTY_bases(LN_indice).LC_pa3 	:= :B1.TRA_PA_3;
LTY_bases(LN_indice).LC_id_pa4 	:= :B0.ID_TRA_PA_4;
LTY_bases(LN_indice).LC_pa4 	:= :B1.TRA_PA_4;
[...]
LTY_bases(LN_indice).LC_id_pa18	:= :B0.ID_TRA_PA_18;
LTY_bases(LN_indice).LC_pa18	:= :B1.TRA_PA_18;
en celui-ci, qui ne génère aucune erreur mais qui ne fait rien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
FOR LN_j IN 1..18
LOOP
  COPY('B0.ID_TRA_PA_' || LN_j,
			 'LTY_bases(' || LN_indice || ').LC_id_pa' || LN_j);
  COPY('B1.TRA_PA_' || LN_j,
	     'LTY_bases(' || LN_indice || ').LC_pa' || LN_j);
END LOOP;
J'en déduis donc que la procédure interne COPY s'applique UNIQUEMENT sur les items ou les variables globales mais pas sur les tableaux associatifs.
Cependant, comme je n'ai pas d'erreur à la compilation ni à l'exécution, je me demande si je ne m'y prends pas mal tout simplement ?

Merci d'avance.