Boa tarde galera!
Estou com uma dúvida aqui.
Gostaria de saber se é possível abrir uma consulta de um Data Block já no modo Enter_Query com algum valor(restrição da consulta) no campo, assim sendo o usuário só precisaria aperta F8 para executar a consulta com o determinado valor no campo.
eu tentei fazer o seguinte:
no When-New-Block-Instance eu coloquei o seguinte
Enter-Query;
:tabela.campo := Valor;
Só que não funcionou, porque ele só joga o valor quando for inserir o registro.
alguém sabe algum modo de fazer isso?
Valeu!
Seleção de Valor para Query Automaticamente
-
- Rank: Estagiário Pleno
- Mensagens: 7
- Registrado em: Qui, 07 Ago 2008 2:57 pm
- Localização: SP
Analista/Programador PL/SQL Pleno
-
- Rank: Programador Sênior
- Mensagens: 54
- Registrado em: Sex, 05 Set 2008 1:53 pm
- Localização: Parobé - RS
- Contato:
David.
crie a trigger key-exeqry a nível de bloco e faça o sequinte
quando f8 for pressionado vai fazer o seguinte
limpa o bloco
clear_block;
testa se o campo não for nulo
IF (:bloco.campo IS NOT NULL)
THEN
variavel recebe restricao
v_where := v_where || ' AND bloco.campo = retricao';
END IF;
propriedade where_clause do bloco recebe a restricao
set_block_property('bloco', where_clause, v_where);
executa a query
do_key('EXECUTE_QUERY');
END;
obs: fazer a propriedade where_clause receber null quando entrar em modo de consulta.
quando f8 for pressionado vai fazer o seguinte
limpa o bloco
clear_block;
testa se o campo não for nulo
IF (:bloco.campo IS NOT NULL)
THEN
variavel recebe restricao
v_where := v_where || ' AND bloco.campo = retricao';
END IF;
propriedade where_clause do bloco recebe a restricao
set_block_property('bloco', where_clause, v_where);
executa a query
do_key('EXECUTE_QUERY');
END;
obs: fazer a propriedade where_clause receber null quando entrar em modo de consulta.
-
- Rank: Programador Sênior
- Mensagens: 54
- Registrado em: Sex, 05 Set 2008 1:53 pm
- Localização: Parobé - RS
- Contato:
David.
Sim, mais ficaria fixo na where do bloco!
Se é assim que você quer resolveria!
Mas se você não quer a where fixa o código acima resolveria
Se é assim que você quer resolveria!
Mas se você não quer a where fixa o código acima resolveria
- dr_gori
- Moderador
- Mensagens: 5013
- 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
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Uma forma é criar um CAMPO num outro bloco não-base-table.
Ali o usuário pode colocar alguma coisa que ele deseja filtrar.
Daí no WHERE do seu bloco, você testa se o campo está NULO, não faz nada... Se não estiver NULO, você usa esse valor no filtro...
é uma solução meio baca... Mas funciona
Ali o usuário pode colocar alguma coisa que ele deseja filtrar.
Daí no WHERE do seu bloco, você testa se o campo está NULO, não faz nada... Se não estiver NULO, você usa esse valor no filtro...
é uma solução meio baca... Mas funciona
-
- Rank: Estagiário Pleno
- Mensagens: 7
- Registrado em: Qui, 07 Ago 2008 2:57 pm
- Localização: SP
Analista/Programador PL/SQL Pleno
Valeu pelas dicas galera...
acho que vou usar a dica do dr_gori, pois o campo de outra tabela não ficaria nulo ao entrar no modo enter_query,,,
na dica do dm_oracle não entendi muito bem pois ao entrar no modo enter_query todos os campos da database ficam nulos...
valeu pelas dicas abraços!

acho que vou usar a dica do dr_gori, pois o campo de outra tabela não ficaria nulo ao entrar no modo enter_query,,,
na dica do dm_oracle não entendi muito bem pois ao entrar no modo enter_query todos os campos da database ficam nulos...
valeu pelas dicas abraços!

-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante