*hand7.txt; DATA TRAVEL; INFILE 'A:\TRAVEL.TXT'; LENGTH DEST $12.; INPUT AIR REGION DEST $ & NAME $ HOTEL; PROC FORMAT; VALUE REGFMT 1='NORTH AMERICA' 2='PACIFIC RIM' 3='EUROPE'; PROC REPORT HEADLINE HEADSKIP NOWD LS=64; COLUMN REGION DEST AIR HOTEL TOTAL; DEFINE REGION / GROUP FORMAT=REGFMT. LEFT WIDTH=13 'REGION'; DEFINE DEST / GROUP 'DESTINATION'; DEFINE AIR / SUM NOPRINT; DEFINE HOTEL / SUM NOPRINT; DEFINE TOTAL / COMPUTED F=DOLLAR9. 'TOTAL/EXPENCES'; COMPUTE TOTAL; TOTAL=AIR.SUM+HOTEL.SUM; ENDCOMP; BREAK BEFORE REGION /; COMPUTE BEFORE REGION; LINE ' '; LINE @12 53*'-'; LINE @18 'Total expenses for ' region regfmt. ' are ' total dollar7. ; LINE @18 'Breakdown by destination is as follows'; LINE @12 53*'-'; LINE ' '; ENDCOMP; TITLE 'TRAVEL EXPENCES'; RUN; DATA TRAVEL; INFILE 'A:\TRAVEL.TXT'; LENGTH DEST $12.; INPUT AIR REGION DEST $ & NAME $ HOTEL; PROC FORMAT; VALUE REGFMT 1='NORTH AMERICA' 2='PACIFIC RIM' 3='EUROPE'; PROC REPORT HEADLINE HEADSKIP NOWD LS=64; COLUMN REGION DEST AIR HOTEL TOTAL; DEFINE REGION / GROUP FORMAT=REGFMT. LEFT WIDTH=13 'REGION'; DEFINE DEST / GROUP 'DESTINATION'; DEFINE AIR / SUM NOPRINT; DEFINE HOTEL / SUM NOPRINT; DEFINE TOTAL / COMPUTED F=DOLLAR9. 'TOTAL/EXPENCES'; COMPUTE TOTAL; TOTAL=AIR.SUM+HOTEL.SUM; ENDCOMP; BREAK BEFORE REGION /; COMPUTE BEFORE REGION; REGWORD=PUT(REGION,REGFMT.); LEN=LENGTH(REGWORD); LINE ' '; LINE @12 53*'-'; LINE @18 'Total expenses for ' regword $varying. len ' are ' total dollar7. ; LINE @18 'Breakdown by destination is as follows'; LINE @12 53*'-'; LINE ' '; ENDCOMP; TITLE 'TRAVEL EXPENCES'; RUN;