Your task might be easier or more flexible by transforming the data so you have
Year Diagnosis where Diagnosis takes the values of Cancer, AIDS and Diabetes.
You also need something other than a count variable to create a box plot though. Something that makes sense to plot the mean/median and quartiles such as person'ts medical expense, length of stay in hospital, time between diagnosis and some other event or a biometric such as cholesterol level.
The procedure would be SGPANEL with code something like
proc sgpanel data=have;
panelby year diagnosis /layout lattice;
vbox <measure>; /* or hbox depending on how you want your boxes to run*/
or
panelby year ;
vbox <measure> /category=diagnosis;
run;