Bonjour,

J'ai la procédure suivante: (simplifiée ici mais le principal y est)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
PROCEDURE toto (
   P_LOGINNAME   IN       VARCHAR2,
   P_IDENT       IN       VARCHAR2,
   P_DATE		IN		VARCHAR2,
   D_COMMANDE	OUT		VARCHAR2
 
 
)
IS
    d_loginname       VARCHAR2 (20)            := P_LOGINNAME;
	d_ident		VARCHAR2 (20)	:= P_IDENT;
	d_extfic          VARCHAR2(50);
    d_passcd			VARCHAR2(50);
	d_batch_cd		VARCHAR2(50);
	d_cheminscript	VARCHAR2(50);
	d_env		VARCHAR2(50);
	d_instance	VARCHAR2(50);
	d_seq		VARCHAR2(50);
	d_com		VARCHAR2(300);
	d_date		VARCHAR2(10);
 
 
d_com :='.' || D_CHEMINSCRIPT || '/aabatenv.bsh ' || D_ENV || ';' || D_CHEMINSCRIPT || '/imprime ' || D_CHEMINSCRIPT || '/' || d_batch_cd || ' ' || P_LOGINNAME || '/' || d_passcd || '@' || D_INSTANCE || ' ' || D_SEQ || ' ' || d_extfic ||'/cc'|| D_SEQ ||'_FR.lst"." 1 "."".""' || d_date ||'""." '|| d_extfic ||'/cc'|| D_SEQ ||'_FR.lst';
 
dbms_output.put_line('Ligne: ');
dbms_output.put_line(d_com);
 
 
D_COMMANDE := d_com;
 
END;
En gros, le but de cette procédure est de récupérer différentes valeurs, et de construire une chaine, puis de renvoyer cette chaine.

Tout fonctionne tant que je ne tente pas de récupérer la valeur de ma chaine dans ma propriété de sortie...
Mais seulement voilà, mon but est bien de récupérer cette valeur....
Et, je ne sais pas vraiment comment faire, même si je suis certains que c'est con comme les pieds...

J'ai essayé de placer directement le résultat de ma concaténation dans ma variable de sortie, mais bien sur, cela ne fonctionne pas...

Le message d'erreur:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
ORA-06502: PL/SQL: erreur numérique ou erreur sur une valeur: tampon de chaine de caractères trop petit
ORA-06512: à  xxxxxxxxxxx ligne 89
ORA-06512à à ligne 13
Seulement, comment agrandir ma D_COMMANDE ?? (qui est, j'ai bien compris trop petit...)

Merci pour votre aide !!