Bom tarde pessoal.
Bom esse é o meu primeiro post aqui no fórum e é até bastante simples minha dúvida
Preciso realizar criar um campo no relatório que me traga '1' se o funcionário for maior que 18 anos e '2' se for menor.
Achei uma sentença aqui no fórum que me traz a data de nascimento e a idade já calculada criei uma fórmula que chama a sentença com o execsql e diz se for => 1 senão 2
Até ai acho que esta tudo correto porém a fórmula não esta conseguindo trazer a idade do candango e esta trazendo '0' segue a sentença para o Srs. analisarem.
SELECT PPESSOA.DTNASCIMENTO,
CASE WHEN
DATEPART(MONTH,PPESSOA.DTNASCIMENTO)< DATEPART(MONTH,GETDATE()) OR
(DATEPART(DAY,PPESSOA.DTNASCIMENTO)>= DATEPART(DAY,GETDATE()) AND DATEPART(MONTH,PPESSOA.DTNASCIMENTO)<= DATEPART(MONTH,GETDATE()))
THEN
(DATEDIFF(YEAR,PPESSOA.DTNASCIMENTO,GETDATE()))
ELSE
(DATEDIFF(YEAR,PPESSOA.DTNASCIMENTO,GETDATE()))- 1
END AS IDADEATUAL
FROM PPESSOA