It is doing what you asked it to do. Since you did not attach any format to the new variable DATE2 it is just showing you the raw number of days since 1960. 21,564 is the value for the 15th date of January in the year 2019.
1119 data _null_;
1120 date='15JAN2019'd ;
1121 put date= comma10.;
1122 run;
date=21,564
Tell SAS how you want the number of days displayed by attaching a format.
proc sql;
create table example2 as
select put(&YYMM.,Z4.) as YYMM
, Acct_No
, sum(Balance) as BalAmt
, avg(Balance) as Avg_Bal_Amt
, avg(Mon_Var) as Month
, catx('/',calculated Month,15,substr(calculated YYMM,1,2)) as Date
, input(catx('/',calculated Month,15,substr(calculated YYMM,1,2)),mmddyy10.)
as Date2 format=date9.
from example1
;
quit;
PS DO NOT USE ONLY TWO DIGITS FOR YEAR!!!!
... View more