Bonjour,

j'ai une application à mettre à jours sous forms.
cette application sera utiliser par plusieurs utilisateurs chacun aura son login et mot de passe.

pour le moment, l'application est utiliser par l'utilisateur "USER1".

le code ci dessous est écrit spécifiquement pour l'utilisateur "USER1" sous un triger "When_button_pressed.
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
DECLARE
	 lv_retour    VARCHAR2(32000);
   b_ok BOOLEAN := FALSE;
    ftp_list USER1.FTP.t_string_table;
BEGIN
	 ftp_list := PKG_EDILABO_INTERFACE.ExtractFTPData('DEPOT');
   IF ftp_list.count > 0 THEN
   	FOR i IN 1..ftp_list.count LOOP
   	  IF i=1 THEN
   	  	 lv_retour := ftp_list(1);
      ELSE
         lv_retour := lv_retour||chr(10)||ftp_list(i); 	  	
      END IF;
   	END LOOP;
   END IF;
	 --set_editor_property('EDITEUR', TITLE, 'Liste des fichiers du répertoire de dépôt du SAS FTP');
	 :LS_DEPOT:=lv_retour;
	 GO_ITEM('LS_DEPOT');
	 DO_KEY('EDIT_TEXTITEM');
	 --show_editor( 'EDITEUR_DEPOT', lv_retour, lv_retour, b_ok );
EXCEPTION
   WHEN OTHERS THEN raise;   	
END;
Vous remarqué bien que la déclaration de la variable "ftp_list" se fait à travers l'utilisateur USER1, le problème quand je me connecte avec l'utilisateur "USER2" par exemple ça ne marche pas, je suis obliger à chaque fois de changer "USER1" par celui qui est connecter actuellement.
j'ai essayer de faire une déclaration simple sans introduire le USER1 vu que l'autre utilisateur utilise le même schéma qui contient le package "FTP" comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ftp_list FTP.t_string_table;
ça ne marche pas toujours
J'ai même créer un synonyme et grant to all pour ce package,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
GRANT ALL PRIVILEGES on ftp to public ;
create public synonym ftp for ftp;
toujours KO.

comment je peu faire pour que la déclaration "FTP_LIST" (voir code) soit adapté dynamiquement à l'utilisateur connecté.

Merci d'avance.