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 01/08/2007, 12h54   #1
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
Par défaut Forms 10g - Récupération login Windows

Bonjour,
Je cherche une solution pour récupérer le login Windows de l'utilisateur courant. Avec TOOL_ENV.GETVAR('USERNAME',:mon_block.mon_text_item), idem avec 'USER','COMPUTERNAME',... Je n'ai pas de résultat en retour. Existe t-il d'autres fonctions/procédures sous forms 10g?
Merci
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 12h57   #2
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
Essaie
Code :
1
2
3
4
 
SELECT osuser,machine
           FROM v$session
          WHERE audsid = USERENV ('SESSIONID');
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 13h21   #3
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
Merci Garuda,
J'ai exécuté (copier/coller) la requête sous sql+ mais il semble ne pas reconnaitre la table/vue v$session, idem avec desc v_$session. Peut être que je n'ai pas les droits.
SQL> desc v$session
ERROR:
ORA-04043: objet SYS.V_$SESSION inexistant
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 14h02   #4
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
Je pense que tu dois passer par une variable temporaire
Code :
1
2
3
4
5
6
7
8
DECLARE
 v_username VARCHAR2(30);
BEGIN
  TOOL_ENV.GETVAR('USERNAME',v_username);
  :mon_block.mon_text_item:=v_username;
END;
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 14h20   #5
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Citation:
Envoyé par Garuda
Je pense que tu dois passer par une variable temporaire
Code :
1
2
3
4
5
6
7
8
DECLARE
 v_username VARCHAR2(30);
BEGIN
  TOOL_ENV.GETVAR('USERNAME',v_username);
  :mon_block.mon_text_item:=v_username;
END;
Plus simple
Code :
1
2
3
4
5
BEGIN
  :mon_block.mon_text_item:=USER;
END;
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 14h22   #6
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
Oui, mais ne marche pas pour les autres variables (COMPUTERNAME, etc...) .
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 14h23   #7
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Citation:
Envoyé par Garuda
Et pour les autres variables (COMPUTERNAME, etc...) ??
Il y a le sys_context
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 14h25   #8
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
SYS_CONTEXT : Un char d'assaut pour écraser une mouche
GET_VAR est parfait, même pour les autres variables, à condition d'utiliser une variable intermédiaire (on ne peut pas passer directement un nom d'item comme deuxième paramètre).
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 14h45   #9
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
Tu as aussi

GET_APPLICATION_PROPERTY(username)
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 15h27   #10
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
Avec la variable temporaire, je n'ai toujours pas de résultat
DECLARE
v_username VARCHAR2(30);
BEGIN
TOOL_ENV.GETVAR('USERNAME',v_username);
:mon_block.mon_text_item:=v_username;
END;

J'ai même fait ça pour être vraiment certain que je ne vois absolument rien :mon_block.mon_text_item:='*'||v_username||'-'; RESULTAT= *-
Avec
:mon_block.mon_text_item := user; j'ai l'utilisateur connecté à la base. Hors, je m'interesse à l'utilisateur windows qui s'est connecté à son poste
Sous sql+
SELECT sys_context('USERENV', 'OS_USER') FROM dual; me retourne effectivement l'utilisateur windows et select sys_context('userenv','host') from dual; pour le nom du poste.
Par contre pour username = administrateur je n'ai pas le nom administrateur mais AUTORITE NT\SYSTEM qui s'affiche
SELECT sys_context('USERENV', 'OS_USER')
INTO :mon_block.mon_text_item
FROM dual;

Une fois connecté à mon poste via mon login windows, j'ouvre une autre session sur le serveur. Ma requête sous sql+ me retourne le nom de poste alors que sous Forms, j'ai le nom du serveur.
Besoin de comprendre
Merci pour les pistes
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 15h33   #11
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
Quand tu dis 'le nom du serveur', c'est le nom du serveur WEB (OAS) ou le serveur ORACLE (BDD) ?
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 15h58   #12
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
C'est le même poste qui me sert de serveur d'application web et de la base Oracle.
J'ajoute que la fonction GET_APPLICATION_PROPERTY(USERNAME) me retourne que le nom de l'utilisateur connecté à la base.
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 16h11   #13
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
A priori, c'est normal car tu obtiens les infos du process forms qui tourne sur le serveur
Citation:
Envoyé par metalink
Are you using Oracle Applications/forms/portal with 9ias? Oracle will show web applications to be running with the same OSUSER for all, that is the OS user as the ID that the webserver applications runs under on the web server machine.
Ils disent aussi qu'il faut passer par v$session pour avoir les infos du client comme indiqué au début du topic

Fais toi faire par le DBA un
GRANT SELECT ON v_$SESSION TO PUBLIC et ca devrait marcher !
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 16h27   #14
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
OK, il ne me reste qu'à voir le DBA qui est en déplacement actuellement. Je confirmerai par resolu dès que la manip sera effective.
Merci Garuda, à vous tous!
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 09h44   #15
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
Bonjour,
J'ai installé chez moi oracle10g et forms 10g. Sur mon poste, j'ai testé tool_env.getvar avec ou sans variable temporaire, sys_context, v$vession, ... tout marche très bien excepté la fonction get_application_property(username) qui me retourne l'utilisateur connecté à la base.
Je verrai davantage ce matin sur mon appli sinon à priori tout marche bien.
Merci à vous tous
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/08/2007, 16h59   #16
Invité régulier
 
Inscription : juillet 2007
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 50
Points : 5
Points : 5
http://sheikyerbouti.developpez.com/webutil/

PROCEDURE Affiche_infos IS
BEGIN
:CONTROL.DATE_CLIENT := Webutil_clientinfo.get_date_time ;
:CONTROL.SEP := Webutil_clientinfo.get_file_separator ;
:CONTROL.HOST_NAME := Webutil_clientinfo.get_host_name ;
:CONTROL.IP_ADRESSE := Webutil_clientinfo.get_ip_address ;
:CONTROL.VERSION_JAVA := Webutil_clientinfo.get_java_version ;
:CONTROL.OS := Webutil_clientinfo.get_operating_system ;
:CONTROL.INFO_JAVA1 := Webutil_clientinfo.get_system_property('java.home') ;
:CONTROL.INFO_JAVA2 := Webutil_clientinfo.get_system_property('os.arch') ;
:CONTROL.INFO_JAVA3 := Webutil_clientinfo.get_system_property('user.timezone') ;
:CONTROL.INFO_JAVA4 := Webutil_clientinfo.get_system_property('os.version') ;
:CONTROL.INFO_JAVA5 := Webutil_clientinfo.get_system_property('sun.boot.library.path') ;
:CONTROL.UTILISATEUR := Webutil_clientinfo.get_user_name ;
END;
ddazou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 07h22   #17
Membre habitué
 
Inscription : avril 2004
Messages : 365
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 365
Points : 121
Points : 121
Il y a la commande GET_APPLICATION_PROPERTY qui te retourne plein d'info
patmaba 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 04h03.


 
 
 
 
Partenaires

Hébergement Web