Pessoal estou com um problema ao fazer calculos com data.
Exemplo:
Tenho uma data de vencimento
data_vencimento 07/09/2016 09:12:01
E quero subtrair pelo tempo atual
now()
Com o resultado dessa subtração eu preciso extrair somente o tempo, porque preciso saber qual registro
está com menos de 15 minutos para vencer.
eu consegui chegar até na extração do tempo
INTERVAL(data_vencimento - data_atual, 'mm')
Essa expressão me retorna o resultado em minutos, agora eu preciso saber como mostrar somente os que estão abaixo de 15
Alguém já passou por isso?
Joao,
Tente utilizar :
=if(num#(interval(NOW()-Hora,'mm'),'#####')>15,0,num#(interval(NOW()-Hora,'mm'),'#####'))
Veja o efeito dessa expressão sobre a tabela 02 em relacao a tabela 01 do QVW que estou anexando.
Se quando voce Ler esta resposta a tabela 02 estiver vazia altere o inline no script para que algumas datas/hora fiquem com menos que 15 min da data hora que voce estiver testando. Por exemplo altere o que esta em destaque abaixo.
LOAD * INLINE [
Produto,Hora
1,14/09/2016 14:10:00
2,14/09/2016 14:05:00
3,14/09/2016 14:15:00
4,14/09/2016 14:20:00
5,14/09/2016 14:25:00
6,14/09/2016 14:30:00
7,14/09/2016 14:35:00
8,14/09/2016 14:55:00
9,14/09/2016 14:60:00
10,14/09/2016 14:50:00
11,14/09/2016 14:49:00
12,14/09/2016 14:20:00
12,13/09/2016 15:00:00
7,14/09/2016 15:35:00
8,14/09/2016 15:55:00
9,14/09/2016 15:60:00
10,14/09/2016 15:50:00
11,14/09/2016 15:49:00
12,14/09/2016 15:20:00
12,13/09/2016 15:00:00
7,14/09/2016 15:35:00
8,14/09/2016 20:55:00
9,14/09/2016 20:60:00
10,14/09/2016 20:50:00
11,14/09/2016 20:49:00
12,14/09/2016 20:20:00
12,13/09/2016 20:00:00
];
Espero que tenha ajudado.
Vou testar mas, não consigo subir o qvw porque minha versão é a gratuita.
João,
Crie o script com o IN-Line que passei.
No DOc anexo tem as configurações que fiz no QVW de teste.
Espero que ajude.
Os calculos deram certos, só não estou conseguindo fazer com que mostre somente aqueles registros que estão com o valor abaixo de 15. Como posso fazer isso?
Joao,
A expressão =if(num#(interval(NOW()-Hora,'mm'),'#####')>15,0,num#(interval(NOW()-Hora,'mm'),'#####')) faz isso.