WIN_API_ENVIRONMENT.Get_Windows_Username

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
bertosro
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 88
Registrado em: Sex, 18 Ago 2006 11:13 am
Localização: São Paulo - SP
Bertosro
MSN / TALK - roberto.fernandes@gmail.com

Caros amigos bom dia!

alguém poderia me orientar de como eu consigo pegar o usuario que esta logado na maquina local.

Oque eu consegui descobrir ate agora é o seguinte:

Selecionar tudo

declare
	 hFunc                ORA_FFI.funcHandleType;
	 v_ret                integer;
	 UserName             VARCHAR2 (40);
	 InBuffLen            INTEGER;
	 b boolean;
Begin
   :logon2.username :=WIN_API_ENVIRONMENT.Get_Windows_Username (  b );
   :global.osuser   := :logon2.username;
end;
o comando WIN_API_ENVIRONMENT.Get_Windows_Username não é reconhecido no forms.
Agradeço atenção.
guerton
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 11
Registrado em: Ter, 26 Out 2004 12:44 pm
Localização: Sapiranga - Rs

Da uma olhada no script abaixo..

Selecionar tudo

select substr(username,1,15) usuario_sistema,
       status,
       substr(osuser,1,15)  usuario_rede,
       substr(machine,1,15) estacao,
       sid,
       serial#,
       substr(to_char (logon_time,'dd-mon-rrrr hh24:mi:ss'),1,20) horario_conexao,
       program
from v$session
--where upper(osuser) = upper('&usuario_rede%')
--where upper(machine) LIKE upper('&estacao%')
order by 1,3
/
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

No diretório <ORA_HOME>\TOOLS\DOC60\US
Tem um PDF chamado fapi.PDF.

É o manual de instruções de todas WIN_API. Talvez você encontre alguma dica ali... :-/
jeank
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Ter, 19 Set 2006 6:43 pm
Localização: Timbó - SC

Você tem que usar a lib D2KWUTIL para utilizar esse comando....
rsnaumann
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 13
Registrado em: Qui, 30 Nov 2006 11:42 am
Localização: São Paulo - SP

Olá!

Seguinte se não for uma exigência você utilizar esta API você pode utilizar o comando "sys_context" dentro do banco de dados.

Vai ai um exemplo:

Selecionar tudo

SELECT SYS_CONTEXT ('USERENV', 'AUTHENTICATION_TYPE') TIPO_DE_AUTENTICAÇÃO_NO_BANCO,
       SYS_CONTEXT ('USERENV', 'CURRENT_SCHEMA') SCHEMA,
       SYS_CONTEXT ('USERENV', 'CURRENT_SCHEMAID') SCHEMA_ID,
       SYS_CONTEXT ('USERENV', 'CURRENT_USER') USER_BANCO,
       SYS_CONTEXT ('USERENV', 'DB_NAME') NOME_BD,
       SYS_CONTEXT ('USERENV', 'HOST') DOMINIO_NOME_COMP,
       SYS_CONTEXT ('USERENV', 'IP_ADDRESS') IP_LAN,
       SYS_CONTEXT ('USERENV', 'ISDBA') IS_DBA, 
       SYS_CONTEXT ('USERENV', 'LANG') LANG,
       SYS_CONTEXT ('USERENV', 'LANGUAGE') LANGUAGE,
       SYS_CONTEXT ('USERENV', 'NETWORK_PROTOCOL') NETWORK_PROTOCOL,
       SYS_CONTEXT ('USERENV', 'NLS_CALENDAR') NLS_CALENDAR,
       SYS_CONTEXT ('USERENV', 'NLS_CURRENCY') NLS_CURRENCY,
       SYS_CONTEXT ('USERENV', 'NLS_DATE_FORMAT') NLS_DATE_FORMAT,
       SYS_CONTEXT ('USERENV', 'NLS_DATE_LANGUAGE') NLS_DATE_LANGUAGE,
       SYS_CONTEXT ('USERENV', 'NLS_SORT')NLS_SORT,
       SYS_CONTEXT ('USERENV', 'NLS_TERRITORY')NLS_TERRITORY,
       SYS_CONTEXT ('USERENV', 'OS_USER')OS_USER_LAN, -------------NOME USUARIO CONECTADO SISTEMA OPERACIONAL
       SYS_CONTEXT ('USERENV', 'PROXY_USER')PROXY_USER,
       SYS_CONTEXT ('USERENV', 'PROXY_USERID')PROXY_USERID,
       SYS_CONTEXT ('USERENV', 'SESSION_USER')SESSION_USER,
       SYS_CONTEXT ('USERENV', 'SESSION_USERID')SESSION_USERID,
       SYS_CONTEXT ('USERENV', 'SESSIONID')SESSIONID,
       SYS_CONTEXT ('USERENV', 'TERMINAL')TERMINAL
FROM DUAL
lfarah
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 3
Registrado em: Seg, 12 Mar 2007 5:16 pm
Localização: são Paulo - SP

rsnaumann, nesse caso o cara só consegue pegar o nome do usuario logado na maquina depois que fizer o login no banco oracle.
Acho melhor ele usar a D2KWUTIL mesmo.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes