An example that creates a report of similar structure using a SAS supplied data set you should be able to use:
proc tabulate data=sashelp.class;
class sex age;
tables age,
sex=''*n='' all=''*(n='Total' pctn='%')
/misstext=' '
;
run;
The ='' bits are suppressing default labels.
Sex is basically the same as your Gender variable for role, Age as grade.
There are many appearance options available.