So I have this code I'm working on to validate dates
proc format fmtlib;
value drange
'01JAN1900'd - '31DEC1909'd = '1900s'
'01JAN1910'd - '31DEC1919'd = '1910s'
'01JAN1920'd - '31DEC1929'd = '1920s'
'01JAN1930'd - '31DEC1939'd = '1930s'
'01JAN1940'd - '31DEC1949'd = '1940s'
'01JAN1950'd - '31DEC1959'd = '1950s'
'01JAN1960'd - '31DEC1969'd = '1960s'
'01JAN1970'd - '31DEC1979'd = '1970s'
'01JAN1980'd - '31DEC1989'd = '1980s'
'01JAN1990'd - '31DEC1999'd = '1990s'
'01JAN2000'd - '31DEC2009'd = '2000s'
'01JAN2010'd - '31DEC2019'd = '2010s'
'01JAN2020'd - '31DEC2020'd = '2020'
'01JAN2021'd - %sysfunc(today()) = '2021'
%sysfunc(today())- HIGH ='FUTURE?!'
;
run;
proc freq data=dm.dm;
format brthdat drange.;
table brthdat/missing list nopercent;
title "CHECK DATE OF BIRTH";
run;
However it isn't working like I'd want it to instead of the 1990s, 1980s etc it is displaying the number only. Can any eagle-eyed programmers figure out what the issue is?. I feel like it's something very simple that I'm just missing