Online File

How to use this page


Rick Aster: Professional SAS Programming Shortcuts: Contents

Chapter 55
Program
Visual calendar


DATA WORK.YM / VIEW=WORK.YM;
   SET CORP.CALENDAR;
   BY DATE;
   YEAR = YEAR(DATE);
   MONTH = MONTH(DATE);
RUN;

DATA WORK.MONTH (KEEP=YEAR MONTH DAYS1-DAYS42 FLAG1-FLAG42);
   SET WORK.YM;
   BY YEAR MONTH;
   ARRAY DAYS{6, 7} $ 2;
   ARRAY FLAG{6, 7} $ 1;
   RETAIN DAYS '  ' FLAG ' ' WEEK 1;

   WEEKDAY = WEEKDAY(DATE);
   IF FIRST.MONTH THEN DO;
      DO W = 1 TO 6;
         DO D = 1 TO 7;
            DAYS{W, D} = '  ';
            FLAG{W, D} = ' ';
            END;
         END;
      WEEK = 1;
      END;
   ELSE IF WEEKDAY = 1 THEN WEEK + 1;

   DAYS{WEEK, WEEKDAY} = PUT(DAY(DATE), F2.);
   FLAG{WEEK, WEEKDAY} = OPENDAY;

   IF LAST.MONTH THEN OUTPUT;
RUN;

 O /\

Global
Statements

RICK ASTER

SAS

BOOKS

Tech | Dictionary

Download | Rastinate

Rick Aster

Professional SAS Programming Shortcuts

Contents/Online Files

Corrections

Catalog Page