|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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 |
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
Essaie
Code :
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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 |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
Je pense que tu dois passer par une variable temporaire
Code :
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
||
|
|
00
|
|
|
#5 | |||||
![]() Salim Développeur et DBA Oracle Inscription : octobre 2006 Messages : 872 ![]() |
Citation:
Code :
|
|||||
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
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 |
|
|
00
|
|
|
#7 | |
![]() Salim Développeur et DBA Oracle Inscription : octobre 2006 Messages : 872 ![]() |
Citation:
|
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
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 |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
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 |
|
|
00
|
|
|
#10 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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 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 |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
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 |
|
|
00
|
|
|
#12 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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. |
|
|
00
|
|
|
#13 | |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
A priori, c'est normal car tu obtiens les infos du process forms qui tourne sur le serveur
Citation:
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 |
|
|
|
00
|
|
|
#14 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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! |
|
|
00
|
|
|
#15 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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 |
|
|
00
|
|
|
#16 |
|
Invité régulier
![]() Inscription : juillet 2007 Messages : 50 ![]() |
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; |
|
|
00
|
|
|
#17 |
|
Membre habitué
![]() Inscription : avril 2004 Messages : 365 ![]() |
Il y a la commande GET_APPLICATION_PROPERTY qui te retourne plein d'info
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com