You can use PROC LOGISTIC (or PROC GLMMOD) to create the dummy variables for you as discussed in this usage note:
http://support.sas.com/kb/23217 . The answers to many questions can be found in the Samples and SAS Notes in our searchable knowledgebase,
http://support.sas.com/kb. You can use the search engine there to find the answers you need.
Below is an example. Note that you should use the OUTDESIGN= and OUTDESIGNONLY options in PROC LOGISTIC since you only want it to create a data set, not try to fit a model, You also need the PARAM=GLM option to use the same dummy coding as PROC GLM.
data test;
do a=1,2; do b=1 to 4; do rep=1,2;
y=rannor(2342); output;
end; end; end;
run;
proc glm data=test;
class a b;
model y=a|b / solution;
output out=outglm p=yhat;
run;
proc print data=outglm;
var a b y yhat;
run;
proc logistic data=test outdesign=od outdesignonly;
class a b / param=glm;
model y=a|b;
run;
proc reg data=od outest=oe;
yhat: model y=a1--a2b4;
run;
proc score data=od score=oe out=preds type=parms;
var a1--a2b4;
run;
proc print data=preds;
var y yhat;
run;