Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estou usando essa expressão para mostrar a Permanência dos funcionário na empresa mostrando dias meses e anos.
Só que não esta batendo com a data atual do dia de hoje por exemplo. Com os exemplos abaixo nenhum bate certo.
Alguém poderia me ajudar?
=if( Round(floor((IF(ISNULL(DATA_EXCLUSAO_USUARIO), today(),DATA_EXCLUSAO_USUARIO) - date(date#(DATA_INCLUSAO_USUARIO,'DD/MM/YYYY')))/365))>0,
Round(floor((IF(ISNULL(DATA_EXCLUSAO_USUARIO), today(),DATA_EXCLUSAO_USUARIO) - date(date#(DATA_INCLUSAO_USUARIO,'DD/MM/YYYY')))/365)) & ' Ano(s) ' )
&
if(Round(floor(Frac((IF(ISNULL(DATA_EXCLUSAO_USUARIO), today(),DATA_EXCLUSAO_USUARIO) - date(date#(DATA_INCLUSAO_USUARIO,'DD/MM/YYYY')))/365) *12))>0,
Round(floor(Frac((IF(ISNULL(DATA_EXCLUSAO_USUARIO), today(),DATA_EXCLUSAO_USUARIO) - date(date#(DATA_INCLUSAO_USUARIO,'DD/MM/YYYY')))/365) *12)) & ' Mes(es) ')
&
if(Round(FLOOR(FRAC(Frac((IF(ISNULL(DATA_EXCLUSAO_USUARIO), today(),DATA_EXCLUSAO_USUARIO) - date(date#(DATA_INCLUSAO_USUARIO,'DD/MM/YYYY')))/365) *12)*24))>0,
Round(FLOOR(FRAC(Frac((IF(ISNULL(DATA_EXCLUSAO_USUARIO), today(),DATA_EXCLUSAO_USUARIO) - date(date#(DATA_INCLUSAO_USUARIO,'DD/MM/YYYY')))/365) *12)*24)) & ' Dia(s)' )
Guilherme, da uma olhada nesse post: How Do I Get the Number of Months Between Two Dates?
Oi Guilherme,
Acho que seria mais facil voce utilizar os comandos Month, Day, Year pra poder fazer essas contas ao inves de utilizar divisão por 365.
If(Isnull(Data_Exclusao),Year(Today()) - Year(Data_Inclusao) ,Year(Data_Exclusao) - Year(Data_Inclusao) AS ANO
If(Isnull(Data_Exclusao),Month(Today()) - Month(Data_Inclusao) ,Month(Data_Exclusao) - Month(Data_Inclusao) AS MES
If(Isnull(Data_Exclusao),DAY(Today()) - DAY(Data_Inclusao) ,DAY(Data_Exclusao) - DAY(Data_Inclusao) AS ANO
Faça algumas validações tranquilas como no caso do dia e pronto
Eu pensaria isso com interval, calculado no script e concatenado os campos na apresentação
Obrigado pela solução, vou tentar agora.