Estou tentando fazer uma consulta em um bloco com informação de CEP, rua, etc.
A query funciona perfeitamente, mas queria que o FORMS fizesse o seguinte:
-Executo a query pelo F7, busca normalmente;
-Quando eu apertar F8 novamente sem o F7, ele deve buscar todas as informações, limpando a cláusula WHERE do bloco.
Segue o código da trigger KEY-EXEQRY
BEGIN
IF (get_block_property( name_in('SYSTEM.TRIGGER_BLOCK'), QUERY_ALLOWED) = 'FALSE') THEN
MESSAGE('Erro: Consulta não é permitida neste bloco');
RAISE FORM_TRIGGER_FAILURE;
END IF;
IF name_in('SYSTEM.TRIGGER_BLOCK') = 'T0202' THEN
IF :SYSTEM.MODE = 'QUERY' THEN
set_block_property('T0202', DEFAULT_WHERE, ' ');
:T0202.COD_CEP_TELA := NULL;
CGBS$.DO_KEYQRY( name_in('SYSTEM.TRIGGER_BLOCK'), 'EXECUTE_QUERY', name_in('SYSTEM.MODE'));
END IF;
IF :T0202.COD_CEP_TELA IS NOT NULL THEN
set_block_property('T0202', DEFAULT_WHERE, 'T0202.COD_CEP = '||:T0202.COD_CEP_TELA);
CGBS$.DO_KEYQRY( name_in('SYSTEM.TRIGGER_BLOCK'), 'EXECUTE_QUERY', name_in('SYSTEM.MODE'));
set_block_property('T0202', DEFAULT_WHERE, ' ');
ELSE
CGBS$.DO_KEYQRY( name_in('SYSTEM.TRIGGER_BLOCK'), 'EXECUTE_QUERY', name_in('SYSTEM.MODE'));
END IF;
ELSE
CGBS$.DO_KEYQRY( name_in('SYSTEM.TRIGGER_BLOCK'), 'EXECUTE_QUERY', name_in('SYSTEM.MODE'));
END IF;
END;