Here is one more idea... you can use a macro to conditionally run your PROC SQL code based on whether the current date is either the 1st Wednesday or the 3rd Wednesday of each month. Something similar to the following:
%macro abc;
%let td=%sysfunc(today()); /* today's date */ %let first=%sysfunc(nwkdom(1,4,%sysfunc(month(&td)),%sysfunc(year(&td)))); /* first wednesday of month */ %let third=%sysfunc(nwkdom(3,4,%sysfunc(month(&td)),%sysfunc(year(&td)))); /* third wednesday of month */
%if &td=&first %then %do;
proc sql; create table want as select * from have where date between '16AUG2018:0:0:0'dt and '30AUG2018:0:0:0'dt; quit; %end;
%else %if &td=&third %then %do;
proc sql; create table want as select * from have where date between '1SEP2018:0:0:0'dt and '16SEP2018:0:0:0'dt; quit; %end;
%mend;
%abc
... View more