Boa Tarde Pessoa
Tenho uma tela que faz a conclusao de recebimento de materiais
E quando coloco um horario/data com inferior a data de recebimento.
Aparece uma mensagem(eu pedi pra fazer isso).
Ele esta em um LOOp
Até ai OK.
Porém se eu altero uma hora/data superior, o normal ele deveria salvar. POrem ele continua com a mensagem. Então tenho que fechar a tela e abrir novamente pra digitar a hora certa. Como eu altero isso?
Obrigada pela atenção
Mensagem continuar apos validação - KEY-COMMIT
-
- Moderador
- Mensagens: 1177
- Registrado em: Qui, 15 Out 2009 10:28 am
- Localização: Recife
se der pra postar o codigo,
alguma variavel de controle deve estar ficando preenchida quando da o primeiro erro...
alguma variavel de controle deve estar ficando preenchida quando da o primeiro erro...
-
- Rank: DBA Pleno
- Mensagens: 297
- Registrado em: Ter, 21 Dez 2010 8:45 am
- Localização: Florianopolis
Priscila Fernandes
if trunc(v_dt_realizacao) > trunc(:dt_conclusao)
OR TO_CHAR(V_DT_RESULTADO, 'dd/mm/yyyy hh24:mi') > TO_CHAR(:hr_conclusao, 'dd/mm/yyyy hh24:mi') then
v_concluido := 'S';
controle_de_msg('NOT','Data/hora de conclusão maior que de recebimento') end if;
Será que poderia ser o or. Mais no caso eu alterei os dois campo para dar certo..... Somente fechando a tela e fazer denovo que não da erro
-
- Moderador
- Mensagens: 1177
- Registrado em: Qui, 15 Out 2009 10:28 am
- Localização: Recife
coloca uma message antes do IF, mostrando o valor de todas as variaveis..
assim você vê o que acontece na segunda vez... e descobre qual variavel ta com problema... ou qual condicao do if, etc
assim você vê o que acontece na segunda vez... e descobre qual variavel ta com problema... ou qual condicao do if, etc
- 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
Acho que o problema é aqui:
Pra testar 2 datas, não precisa fazer TO CHAR. Basta comparar V_DT_RESULTADO com a data :HR_CONCLUSOA (suponho que seja uma data isso, pois caso contrario, daria erro o TO_CHAR).
Veja, se você compara um TO_CHAR, significa que a o dia 20/05/2011 é MAIOR QUE 10/06/2011... (o primeiro caracter 2 > 1 ).

Isso até funcionaria, se você for usar a seguinte máscara: 'YYYYMMDD-HH24:MI:SS'...
OR TO_CHAR(V_DT_RESULTADO, 'dd/mm/yyyy hh24:mi') > TO_CHAR(:hr_conclusao, 'dd/mm/yyyy hh24:mi')
Veja, se você compara um TO_CHAR, significa que a o dia 20/05/2011 é MAIOR QUE 10/06/2011... (o primeiro caracter 2 > 1 ).

Isso até funcionaria, se você for usar a seguinte máscara: 'YYYYMMDD-HH24:MI:SS'...
-
- Rank: DBA Pleno
- Mensagens: 297
- Registrado em: Ter, 21 Dez 2010 8:45 am
- Localização: Florianopolis
Priscila Fernandes
Ola Dr_gori
Quero fazer a validação de horas
v_dt_resultado('hh24:mi') > :hr_conslusao('hh24:mi')
mais ou menos assim. Mais não seria a data completa somente a hora. Tem como fazer com outro codigo, sem ser o to_char?
Quero fazer a validação de horas
v_dt_resultado('hh24:mi') > :hr_conslusao('hh24:mi')
mais ou menos assim. Mais não seria a data completa somente a hora. Tem como fazer com outro codigo, sem ser o to_char?
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante