Estou tentando simbolizar um mapa com base no tempo decorrido entre um campo "DATE_ISSUE" e a data de hoje (ou seja, Today()), de modo que, se o ponto tiver menos de 6 meses, seja "ativo"; se tiver mais de um ano, seja "expirado"; se estiver entre 6 meses e um ano, seja "antigo"; e, se nenhuma data tiver sido inserida em "DATE_ISSUE", seja "pendente"
Tenho um registro de teste com 67 pontos. 24 não têm uma data de emissão, 1 ponto é de 8 de dezembro de 2016 (518 dias), 1 é de 8 de setembro de 2017 (244 dias), 1 é de 12 de maio de 2017 (363 dias), e os demais são de janeiro de 2018 em diante.
Até agora, tenho isto:
var pDate = Date(Today());
var rDate = Date($feature["DATE_ISSUE"]);
var age = DateDiff(pDate, rDate, 'days');
if (age < 182.5){
"ATIVO"
}
else if(age >= 182.5 && age <355){
"ANTIGO"
}
else if (age >= 365 && age < 10000){
"EXPIRADO"
}
else if (age > 10000){
"PENDENTE"
}
Esta última cláusula else if é resultado de um campo "DATE_ISSUE" em branco, que é calculado na função DateDiff como 17.661,33
Isso me dá 40 "Ativos", 24 "Pendentes", e os três objetos com mais de 182,5 dias simplesmente desapareceram. Literalmente. Minha tabela de atributos mostra todos os 67. Minhas opções de simbologia mostram um total de 64 pontos e 0 em "outros". Quando marco "outros", os 3 aparecem, embora a contagem seja 0.
Quando verifico a função DateDiff, não há valores gerados acima de 126 dias, com exceção do valor mencionado anteriormente, 17.661,33.
Só quero destacar visualmente os pontos expirados ou antigos para que a equipe do escritório não precise procurá-los