This is what I have right now: %let month=199 187 175 163 151; %let year=16 15 14 13 12; %macro my_table(month, year); proc sql; create table WANT as select t2.var1, t2.var2, t2.var3 from TABLE2 t2 inner join TABLE1 t1 on ((input(t2.var3,z10.0)) = t1.var3) where t2.mnth = &month and t2.var3 ne 0; quit; proc sql; create table WANT_&year as select t1.var1, t1.var2, t1.var3, (intck('year',(datepart(t2.var4)), (datepart(t2.var5)), 'c')) as yrs_&year, calculated yrs_&year + (intck('month',intnx('year', datepart(t2.var6), calculated yrs_&year, 's'), (datepart(t2.var7)), 'c')/12) as ttm_&year from work.TABLE4 t1 inner join work.TABLE3 t2 on (t1.var8=t2.var8 and t1.var9=t2.var9); quit; %mend my_table; %macro preparation_table; %let k=1; %let t=1; %let ti=%scan(&month,&k); %let pi=%scan(&year,&t); %do %while (&ti < 5); %my_table(&ti, &pi); %let k=%eval(&k+1); %let t=%eval(&t+1); %let ti=%scan(&month,&k); %let pi=%scan(&year,&t); %end; %mend preparation_table; %preparation_table; With added options mlogic mprint symbolgen source source2; I get following: MLOGIC(_EG_RESTORENOTESANDSOURCE): Beginning execution. MLOGIC(_EG_RESTORENOTESANDSOURCE): %GLOBAL _EGNOTES MLOGIC(_EG_RESTORENOTESANDSOURCE): %GLOBAL _EGSOURCE SYMBOLGEN: Macro variable _EGNOTES resolves to NOTES MPRINT(_EG_RESTORENOTESANDSOURCE): options NOTES; SYMBOLGEN: Macro variable _EGSOURCE resolves to SOURCE MPRINT(_EG_RESTORENOTESANDSOURCE): options SOURCE; MLOGIC(_EG_RESTORENOTESANDSOURCE): Ending execution. 118 119 120 %_eg_hidenotesandsource; MLOGIC(_EG_HIDENOTESANDSOURCE): Beginning execution. MLOGIC(_EG_HIDENOTESANDSOURCE): %GLOBAL _EGNOTES MLOGIC(_EG_HIDENOTESANDSOURCE): %GLOBAL _EGSOURCE MLOGIC(_EG_HIDENOTESANDSOURCE): %LET (variable name is _EGNOTES) MPRINT(_EG_HIDENOTESANDSOURCE): options nonotes; MLOGIC(_EG_HIDENOTESANDSOURCE): %LET (variable name is _EGSOURCE) MPRINT(_EG_HIDENOTESANDSOURCE): options nosource; MLOGIC(_EG_HIDENOTESANDSOURCE): Ending execution. MLOGIC(_EG_RESTORENOTESANDSOURCE): Beginning execution. MLOGIC(_EG_RESTORENOTESANDSOURCE): %GLOBAL _EGNOTES MLOGIC(_EG_RESTORENOTESANDSOURCE): %GLOBAL _EGSOURCE SYMBOLGEN: Macro variable _EGNOTES resolves to NOTES MPRINT(_EG_RESTORENOTESANDSOURCE): options NOTES; SYMBOLGEN: Macro variable _EGSOURCE resolves to SOURCE MPRINT(_EG_RESTORENOTESANDSOURCE): options SOURCE; MLOGIC(_EG_RESTORENOTESANDSOURCE): Ending execution.
... View more