Oracle Forms Logon

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
paulogomes.tec
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 24 Abr 2011 11:54 pm
Localização: Ceará

Boa noite amigos,

To precisando de uma ajuda, o problema é o seguinte:

Estou desenvolvendo um sistema de vendas em Oracle Forms 10g, criei uma tela de login com um botão com o seguinte código:

Selecionar tudo

declare
	usuario VARCHAR2(80);
	senha   VARCHAR2(80);
	banco   VARCHAR2(80);
BEGIN
	usuario := :BLO_LOGIN.LOGIN;
	senha   := :BLO_LOGIN.SENHA;
	banco   := :BLO_LOGIN.BANCO;
	
	LOGON(usuario, senha||'@'||banco);
	open_form('MENU',ACTIVATE);
end;
Quando o form MENU abre, aparece uma mesangem ORA-03114 not connected to ORACLE, e não aparece nenhuma opção no menu.

Criei uma trigger on-logon a nivel de form apenas com null para evitar aparecer a tela de login padrão do oracle.

Como faço pra resolver esse problema.
Estou usando Forms 10g, no sistema opecional Windows 7

Fico muito grato se alguém poder me ajudar.

Obrigado.

Paulo Gomes.
renan_pre
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 50
Registrado em: Ter, 10 Abr 2007 11:08 am
Localização: São Paulo - SP
M. Renan

Cara,
Peguei como exemplo um forms que fiz uma vez e que funciona. Porém, é o forms 6i e Windows XP. Mas acho que a forma é a mesma.

Criei uma procedure "logar" com o seguinte código:

Selecionar tudo

PROCEDURE Logar IS
BEGIN	
	If :usuario is not null and :senha is not null and :banco is not null then
	  LOGON(:Usuario,:Senha||'@'||:Banco);
  else
	  Null;
  End if;  
END;
Na trigger 'ON-LOGON' ao invés de deixar NULL, coloque apenas a chamada da procedure Logar.

No botão "Conectar" (WHEN-BUTTON-PRESSED) você coloca:

Selecionar tudo

Execute_Trigger('ON-LOGON');
Pronto!

Espero que ajude

Abs
paulogomes.tec
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 24 Abr 2011 11:54 pm
Localização: Ceará

Ok amigo, vou fazer o teste e posto o resultado.

obrigado.
paulogomes.tec
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 24 Abr 2011 11:54 pm
Localização: Ceará

Cara deu certo, funcionou.

Só tem mais um problema, após o login eu dou o comando hide_window('JAN_LOGIN') e chamo o FORM_MENU, até aí tudo bem, mas quando eu saio do sistema a tela de login permanece aberta.

A janela de login é uma janela pop-up, e é o primeiro form a ser chamado quando o sistema é aberto.

Obrigado pela dica, resolvido o meu primeiro problema.

abraço.
Responder
  • Informação