Какой календарь вы используете с 31 сентября?
L oop до тех пор, пока вы не перейдете на месяц, не являющийся выходным днем.
Пример:
%let start=09/01/2020;
%let end=09/30/2020;
data want;
call streaminit(123);
do month = input("&start",MMDDYY10.) to input("&end",MMDDYY10.);
next = intnx('month', month, 1);
do until (weekday (date) not in (1,7));
date = intnx('day', month, rand('integer', 0, next-month-1));
end;
output;
month = next;
end;
format month date9. date weekdatx.;
keep month date;
run;