Fiz isso.
Anulei (null;) todas triggers...
mas não resolveu, muitos dos filtro são feito nela.
voltando item a item. o problema procegue com ow sei as triggers habilitadas.
esotu usando
bloco participante
pre-insert
Selecionar tudo
codigo
BEGIN
SELECT NVL(MAX(COD_PARTICIPANTE),0)+1
INTO :PARTICIPANTES.COD_PARTICIPANTE
FROM PARTICIPANTES;
:PARTICIPANTES.DTULTIMAATUALIZACAO := TO_DATE(SYSDATE,'DD-MM-YY');
END;
IF :PARTICIPANTES.EMAIL_COM IS NOT NULL AND :PARTICIPANTES.E_MAIL_PART IS NOT NULL THEN
:PARTICIPANTES.RECEBE_EMAIL := 'N';
END IF;
pre-update
Selecionar tudo
BEGIN
:PARTICIPANTES.DTULTIMAATUALIZACAO := TO_DATE(SYSDATE,'DD-MM-YY');
END;
begin
update endereco_adicional
set REGIAO_CIDADE = :ENDERECO_ADICIONAL.REGIAO_CIDADE,
CDPAIS = :ENDERECO_ADICIONAL.CDPAIS,
CDESTADOR = :ENDERECO_ADICIONAL.CDESTADOR,
BAIRRO = :ENDERECO_ADICIONAL.BAIRRO,
LC_COD_CIDADE = :ENDERECO_ADICIONAL.LC_COD_CIDADE,
CEP = :ENDERECO_ADICIONAL.CEP,
ENDERECO = :ENDERECO_ADICIONAL.ENDERECO,
COD_TIPO_END = :endereco_adicional.COD_TIPO_END,
COD = :PARTICIPANTES.COD_PARTICIPANTE
WHERE
COD_TIPO_END = :endereco_adicional.COD_TIPO_END and
COD = :PARTICIPANTES.COD_PARTICIPANTE;
exception when others then
msg_alert('Erro Oracle: ' || SQLERRM, 'F', TRUE);
end;
post query
Selecionar tudo
begin
:endereco_adicional.cod := :participantes.cod_participante;
select cod, regiao_cidade, cdpais, cdestador, bairro, lc_cod_cidade, cep, endereco, cod_tipo_pessoa,
tel_comercial, ddd_comercial, ddi_comercial, ramal_comercial, tel_fax, ddd_fax, ddi_fax,
ramal_fax, cod_pais_fax, cod_tipo_end
into
:endereco_adicional.cod, :endereco_adicional.regiao_cidade, :endereco_adicional.cdpais ,:endereco_adicional.cdestador,
:endereco_adicional.bairro, :endereco_adicional.lc_cod_cidade, :endereco_adicional.cep,
:endereco_adicional.endereco, :endereco_adicional.TIPO_PESSOA, :endereco_adicional.tel_comercial,
:endereco_adicional.ddd_comercial, :endereco_adicional.ddi_comercial, :endereco_adicional.ramal_comercial,
:endereco_adicional.tel_fax, :endereco_adicional.ddd_fax, :endereco_adicional.ddi_fax, :endereco_adicional.ramal_fax,
:endereco_adicional.cod_pais_fax, :endereco_adicional.cod_tipo_end
From endereco_adicional
where cod = :participantes.cod_participante;
exception when others then
msg_alert('Erro Oracle: ' || SQLERRM , 'f', true);
end;
no bloco endereco adicional
Selecionar tudo
begin
select descricao
into :endereco_adicional.cod_end
from tipo_endereco
where cod_tipo_end = :endereco_adicional.cod_tipo_end;
select cdescricao
into :ENDERECO_ADICIONAL.v_nome_cidade
from cidade
where cdCidade = :ENDERECO_ADICIONAL.lc_cod_cidade;
select cdescricao
into :ENDERECO_ADICIONAL.desc_estado
from estado
where cdestado = :ENDERECO_ADICIONAL.cdestador;
select cdescricao
into :ENDERECO_ADICIONAL.desc_pais
from pais
where cdpais = :ENDERECO_ADICIONAL.cdpais;
exception when others then
msg_alert('Erro Oracle: ' || SQLERRM, 'F', TRUE);
end;
campo
COD_ITEM_END
que esta no bloco ENDERECO_ADICIONAL
post-text-item
Selecionar tudo
BEGIN
IF :endereco_adicional.COD = :PARTICIPANTES.COD_PARTICIPANTE THEN
begin
select DESCRICAO
into :endereco_adicional.cod_end
from tipo_endereco
where cod_tipo_end = :endereco_adicional.cod_tipo_end;
exception when no_data_found then
msg_alert('em branco: tipo_endereco', 'F', true);
end;
begin
select cdescricao
into :ENDERECO_ADICIONAL.v_nome_cidade
from cidade
where cdCidade = :ENDERECO_ADICIONAL.lc_cod_cidade;
exception when no_data_found then
msg_alert('Em branco: Cidade', 'F', true);
end;
begin
select cdescricao
into :ENDERECO_ADICIONAL.desc_estado
from estado
where cdestado = :ENDERECO_ADICIONAL.cdestadoR;
exception when no_data_found then
msg_alert('em branco: estado', 'F', true);
end;
begin
select cdescricao
into :ENDERECO_ADICIONAL.desc_pais
from pais
where cdpais = :ENDERECO_ADICIONAL.cdpais;
exception when no_data_found then
msg_alert('Em Branco: pais', 'F', true);
end;
ELSE
NULL;
END IF;
exception
when others then
msg_alert('Erro Oracle: ' || SQLERRM, 'F', TRUE);
end;
só!!