30% OFF para compra e renovaÇÃo. Comprar agora

Autor Tópico: Macro sc_date_dif  (Lida 364 vezes)

gabriel Henrique pilar da

  • Novato
  • *
  • Mensagens: 26
  • Feliz é aquele que não é triste!
    • Email
Macro sc_date_dif
« Online: Fevereiro 27, 2018, 01:29:44 pm »
Boa tarde pessoal !

Veja se alguem pode me ajudar! Já procurei alguns tópicos relacionados com o assunto e o que encontrei não ajudou muito

Estou querendo fazer o calculo de duas datas para retornar a quantidade de dias, fiz o teste com uma data proxima da outra e funcionou , blz, mas ai fui fazer o teste com datas um pouco mais distantes por exemplo 01/12/2017 e 25/02/2018, me retornou  24, ou quando não dependendo da data , com uma diferença de 3 meses , o sistema me retorna um valor tipo 380

{dias_consumo}=sc_date_dif({dt_leit_atual}, "dd/mm/aaaa", {dt_leit_anterior}, "dd/mm/aaaa");

alguma sugestão ?



Gabriel Henrique Pilar da Silva

Haroldo

  • Expert
  • *****
  • Mensagens: 8265
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Macro sc_date_dif
« Responder #1 Online: Fevereiro 27, 2018, 02:07:14 pm »
será que o formato interno dos campos  {dt_leit_atual} e {dt_leit_anterior} em sua aplicação  é dd/mm/aaaa??

Costuma ser aaaa-mm-dd.



Boa tarde pessoal !

Veja se alguem pode me ajudar! Já procurei alguns tópicos relacionados com o assunto e o que encontrei não ajudou muito

Estou querendo fazer o calculo de duas datas para retornar a quantidade de dias, fiz o teste com uma data proxima da outra e funcionou , blz, mas ai fui fazer o teste com datas um pouco mais distantes por exemplo 01/12/2017 e 25/02/2018, me retornou  24, ou quando não dependendo da data , com uma diferença de 3 meses , o sistema me retorna um valor tipo 380

{dias_consumo}=sc_date_dif({dt_leit_atual}, "dd/mm/aaaa", {dt_leit_anterior}, "dd/mm/aaaa");

alguma sugestão ?





gabriel Henrique pilar da

  • Novato
  • *
  • Mensagens: 26
  • Feliz é aquele que não é triste!
    • Email
Re:Macro sc_date_dif
« Responder #2 Online: Fevereiro 27, 2018, 03:25:47 pm »
Boa tarde Haroldo !

Antes estava, ai os resultados estavam gerando valores absurdos , então acertei  para o formato correto. Mas mesmo assim após essa alteração os resultados gerados foram esses que descrevi abaixo .

exemplos dos calculos que estou fazendo :

Data Leitura Atual:22/02/2018   
Data Leitura Anterior:01/02/2018
Resultado: -21

Data Leitura Atual:25/02/2018   
Data Leitura Anterior:01/12/2017
Resultado: -389

Data Leitura Atual:27/02/2018
Data Leitura Anterior:10/01/2018
Resultado: 48

Data Leitura Atual:13/04/2017
Data Leitura Anterior:20/01/2017
Resultado: 24
Gabriel Henrique Pilar da Silva

Haroldo

  • Expert
  • *****
  • Mensagens: 8265
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Macro sc_date_dif
« Responder #3 Online: Fevereiro 27, 2018, 03:33:55 pm »
Tenta alterar os formatos internos dos dois campos para aaaa-mm-dd e use essa mascara na macro.


Boa tarde Haroldo !

Antes estava, ai os resultados estavam gerando valores absurdos , então acertei  para o formato correto. Mas mesmo assim após essa alteração os resultados gerados foram esses que descrevi abaixo .

exemplos dos calculos que estou fazendo :

Data Leitura Atual:22/02/2018   
Data Leitura Anterior:01/02/2018
Resultado: -21

Data Leitura Atual:25/02/2018   
Data Leitura Anterior:01/12/2017
Resultado: -389

Data Leitura Atual:27/02/2018
Data Leitura Anterior:10/01/2018
Resultado: 48

Data Leitura Atual:13/04/2017
Data Leitura Anterior:20/01/2017
Resultado: 24


Jocimar de Oliveira

  • Expert
  • *****
  • Mensagens: 741
    • ERP Uirapuru
Re:Macro sc_date_dif
« Responder #4 Online: Fevereiro 27, 2018, 04:06:50 pm »
Boa tarde Haroldo !

Antes estava, ai os resultados estavam gerando valores absurdos , então acertei  para o formato correto. Mas mesmo assim após essa alteração os resultados gerados foram esses que descrevi abaixo .

exemplos dos calculos que estou fazendo :

Data Leitura Atual:22/02/2018   
Data Leitura Anterior:01/02/2018
Resultado: -21

Data Leitura Atual:25/02/2018   
Data Leitura Anterior:01/12/2017
Resultado: -389

Data Leitura Atual:27/02/2018
Data Leitura Anterior:10/01/2018
Resultado: 48

Data Leitura Atual:13/04/2017
Data Leitura Anterior:20/01/2017
Resultado: 24


Para verificar o conteúdo das variáveis utilize echo {variavel};

gabriel Henrique pilar da

  • Novato
  • *
  • Mensagens: 26
  • Feliz é aquele que não é triste!
    • Email
Re:Macro sc_date_dif
« Responder #5 Online: Fevereiro 27, 2018, 04:48:50 pm »
Seguinte Haroldo,

Mesmo fazendo essa alteração não deu certo...mas observei o seguinte quando as datas estão com o Mês  com apenas "um" digito, por exemplo atual: 25/09/2018 e anterior:27/02/2018, está calculando corretamente testei do mês 01 até o mês 09 sem erros, mas quando altero as datas com mês com "dois" digitos comparado com o mês com "um " dígito  exemplo atual: 28/12/2018 e anterior :21/09/2018 a diferença dos dias foi para -206.
Gabriel Henrique Pilar da Silva

gabriel Henrique pilar da

  • Novato
  • *
  • Mensagens: 26
  • Feliz é aquele que não é triste!
    • Email
[Resolvido] Re:Macro sc_date_dif
« Responder #6 Online: Fevereiro 27, 2018, 05:13:06 pm »
Josimar  e Haroldo!

Seguinte, o formato interno do campo data do scriptcase  está orientando a usar os formatos a seguir "Utilizado quando é um campo de data, hora ou data-hora que esteja definido fora dos padrões do SQL.

Citar
Exemplo 1: Uma data guardada em um campo SQL definido como char(8) onde a posição 1 a 4 representa o ano, a posição 5 e 6 o mês e a posição 7 e 8 o dia, preencha este campo com a seguinte informação:
AAAAMMDD ou aaaammdd

Exemplo 2: Uma hora guardada em um campo SQL definido como char(6) onde d posição 1 a 2 representa a hora, a posição 3 e 4 os minutos e a posição 5 e 6 os segundos, preencha este campo com a seguinte informação:
HHIISS ou hhiiss

Exemplo 3: Campo SQL numérico guardando o número de segundos e que você queira transformar em formato dias e/ou horas e/ou minutos, preencha este campo com a seguinte informação:
SEC ou sec

Exemplo 4: Campo SQL numérico guardando o número de minutos e que você queira transformar em formato dias e/ou horas, preencha este campo com a seguinte informação:
MIN ou min

Exemplo 5: Campo SQL numérico guardando o número de horas e que você queira transformar em formato dias, preencha este campo com a seguinte informação:
HOR ou hor

Você pode ter outros tipos de formação, veja outros exemplos:

DDMMAAAA
HHII
MMAAAA
AAAA
MMDD
DD
HH"

sem traços ou barras, ao colocar o echo {variavel} retornou o dia 16/02 como 1602.
Alterei o formato para  dd-mm-aaaa adicionando manualmente os traços e deu certo !

Obrigado pela Ajuda!
Gabriel Henrique Pilar da Silva

Haroldo

  • Expert
  • *****
  • Mensagens: 8265
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Macro sc_date_dif
« Responder #7 Online: Fevereiro 27, 2018, 05:15:47 pm »
Será que voltou o bug na sc_date_diff?

Seguiu a orientação do Jocimar?  Deu um echo nas duas datas?

Você conhece new DateTime();

$DT = new DateTime('2018-09-25');
 
$diff = $DT->diff( new DateTime( '2018-08-2018' ) );
 
echo "Diferença de:
" . $diff->days . " dias
" . $diff->m . " meses
" . $diff->y . " anos
" . $diff->h . " horas
" . $diff->i . " minutos
" . $diff->s . " segundos
";

Seguinte Haroldo,

Mesmo fazendo essa alteração não deu certo...mas observei o seguinte quando as datas estão com o Mês  com apenas "um" digito, por exemplo atual: 25/09/2018 e anterior:27/02/2018, está calculando corretamente testei do mês 01 até o mês 09 sem erros, mas quando altero as datas com mês com "dois" digitos comparado com o mês com "um " dígito  exemplo atual: 28/12/2018 e anterior :21/09/2018 a diferença dos dias foi para -206.

Haroldo

  • Expert
  • *****
  • Mensagens: 8265
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Macro sc_date_dif
« Responder #8 Online: Fevereiro 27, 2018, 05:17:03 pm »
Ops.. chegou atrasada minha última resposta, mas fica aí a dica.

gabriel Henrique pilar da

  • Novato
  • *
  • Mensagens: 26
  • Feliz é aquele que não é triste!
    • Email
Re:Macro sc_date_dif
« Responder #9 Online: Fevereiro 27, 2018, 06:02:26 pm »
Que isso Haroldo valeu, eu que agradeço a ajuda sua e do Josimar!

o acho acendeu a luz no fim do túnel pois identifiquei o formato que estava puxando a data  !

Mais uma vez obrigado  a todos!
Gabriel Henrique Pilar da Silva