FRM-40735 - o gatilho WHEN-BUTTON-PRESSEND levantou a exeção ORA-06502 não manipulada
ERRO : FRM-40735 (ORACLE FORMS)
-
- Rank: Analista Júnior
- Mensagens: 76
- Registrado em: Sex, 31 Out 2008 4:30 pm
- Localização: belo horizonte-mg
SITUAÇÃO : TENHO UM BLOCO FUNCIONANDO NORMAL QUANDO EU TENTO INSERIR MAIS UM CAMPO NO BLOCO ELE GERA O ERRO:
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Complementando, verifique a ausência (ou não) de exception neste Trigger e, se puder, mande o código pra gente.
-
- Rank: Analista Júnior
- Mensagens: 76
- Registrado em: Sex, 31 Out 2008 4:30 pm
- Localização: belo horizonte-mg
------ Ao inserir qualquer campo no BLOCO ele chama a trigger
que esta abaixo.
obrigado
elcio.....
WHEN-BUTTON-PRESSED
e gera exçessao : nessa parte do codigo
IF(:FILA_ANALISE_BACKOFFICE.CPF_CGC IS NOT NULL)THEN
:FILA_ANALISE_BACKOFFICE.CPF_CGC := '%' || :FILA_ANALISE_BACKOFFICE.CPF_CGC || '%';
ELSE
:FILA_ANALISE_BACKOFFICE.CPF_CGC := '%';
END IF;
---------------------------------------------------------
DECLARE
BUTTON_NAME VARCHAR2(61);
BUTTON VARCHAR2(31);
CAMPO VARCHAR2(50);
V_FORMAT VARCHAR2(20);
N_CPF_CGC NUMBER;
PROCEDURE PC_HABILITA(B_HABILITA BOOLEAN)IS
BEGIN
IF(B_HABILITA)THEN
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNPRIMEIRO' ,ENABLED,PROPERTY_TRUE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNANTERIOR' ,ENABLED,PROPERTY_TRUE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNPROXIMO' ,ENABLED,PROPERTY_TRUE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNULTIMO' ,ENABLED,PROPERTY_TRUE);
ELSE
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNPRIMEIRO' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNANTERIOR' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNPROXIMO' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNULTIMO' ,ENABLED,PROPERTY_FALSE);
END IF;
END;
BEGIN
BUTTON_NAME := NAME_IN('SYSTEM.TRIGGER_ITEM');
BUTTON := SUBSTR(BUTTON_NAME, INSTR(BUTTON_NAME, '.')+1);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNSALVAR' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNNOVO' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNALTERAR' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNDELETE' ,ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('TOOLBAR_padrão.BTNCANCELAR',ENABLED,PROPERTY_FALSE);
IF(BUTTON IN ('BTNPESQUISA'))THEN
SET_BLOCK_PROPERTY('FILA_ANALISE_BACKOFFICE',INSERT_ALLOWED,PROPERTY_TRUE);
SET_BLOCK_PROPERTY('FILA_ANALISE_BACKOFFICE',UPDATE_ALLOWED,PROPERTY_TRUE);
IF((:PARAMETER.PESQUISA IS NULL)OR(:PARAMETER.PESQUISA = 0))THEN
BEGIN
IF(:FILA_ANALISE_BACKOFFICE.CPF_CGC IS NOT NULL)THEN
BEGIN
N_CPF_CGC := :FILA_ANALISE_BACKOFFICE.CPF_CGC;
EXCEPTION WHEN OTHERS THEN
MSG_INFORMACAO('Para realizar a pesquisa por CPF/CNPJ informe somente valores numericos.A lista de espera será novamente recarregada para a tela!');
:FILA_ANALISE_BACKOFFICE.CPF_CGC := NULL;
RAISE FORM_TRIGGER_FAILURE;
END;
END IF;
END;
SET_ITEM_PROPERTY('FILA_ANALISE_BACKOFFICE.CPF_CGC',FORMAT_MASK,'');
CLEAR_BLOCK(NO_VALIDATE);
:PARAMETER.PESQUISA := 1;
PC_HABILITA(FALSE);
ELSIF(:PARAMETER.PESQUISA = 1)THEN
IF(:GLOBAL.ERRO = '40301')THEN
GO_BLOCK('FILA_ANALISE_BACKOFFICE');
:GLOBAL.ERRO := NULL;
END IF;
:PARAMETER.PESQUISA := 0;
IF(:FILA_ANALISE_BACKOFFICE.CPF_CGC IS NOT NULL)THEN
:FILA_ANALISE_BACKOFFICE.CPF_CGC := '%' || :FILA_ANALISE_BACKOFFICE.CPF_CGC || '%';
ELSE
:FILA_ANALISE_BACKOFFICE.CPF_CGC := '%';
END IF;
IF(:FILA_ANALISE_BACKOFFICE.EMPRESA_ORIGEM IS NOT NULL)THEN
:FILA_ANALISE_BACKOFFICE.EMPRESA_ORIGEM := '%' || :FILA_ANALISE_BACKOFFICE.EMPRESA_ORIGEM || '%';
ELSE
:FILA_ANALISE_BACKOFFICE.EMPRESA_ORIGEM := '%';
END IF;
IF(:FILA_ANALISE_BACKOFFICE.CENTRAL_ORIGEM IS NOT NULL)THEN
:FILA_ANALISE_BACKOFFICE.CENTRAL_ORIGEM := '%' || :FILA_ANALISE_BACKOFFICE.CENTRAL_ORIGEM || '%';
ELSE
:FILA_ANALISE_BACKOFFICE.CENTRAL_ORIGEM := '%';
END IF;
IF(:FILA_ANALISE_BACKOFFICE.LOJA_ORIGEM IS NOT NULL)THEN
:FILA_ANALISE_BACKOFFICE.LOJA_ORIGEM := '%' || :FILA_ANALISE_BACKOFFICE.LOJA_ORIGEM || '%';
ELSE
:FILA_ANALISE_BACKOFFICE.LOJA_ORIGEM := '%';
END IF;
PC_LISTA_FILA_PESQUISA;
SET_BLOCK_PROPERTY('FILA_ANALISE_BACKOFFICE',INSERT_ALLOWED,PROPERTY_FALSE);
SET_BLOCK_PROPERTY('FILA_ANALISE_BACKOFFICE',UPDATE_ALLOWED,PROPERTY_FALSE);
PC_HABILITA(TRUE);
END IF;
ELSIF(BUTTON IN ('BTNSAIR'))THEN
EXIT_FORM(NO_VALIDATE);
ELSE
IF(BUTTON IN ('BTNPRIMEIRO'))THEN
FIRST_RECORD;
ELSIF(BUTTON IN ('BTNANTERIOR'))THEN
PREVIOUS_RECORD;
ELSIF(BUTTON IN ('BTNPROXIMO'))THEN
NEXT_RECORD;
ELSIF(BUTTON IN ('BTNULTIMO'))THEN
LAST_RECORD;
END IF;
END IF;
END;
elcio.....
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Brother,
No teu último END;, troque por esse trecho abaixo e faça um teste:
qualquer coisa, manda pra gente.
No teu último END;, troque por esse trecho abaixo e faça um teste:
EXCEPTION
WHEN OTHERS THEN
message('Erro (WBP):'||SQLERRM);
message('Erro (WBP):'||SQLERRM);
RAISE FORM_TRIGGER_FAILURE;
END;
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Bing [Bot] e 16 visitantes