Oh, well, somehow I missed that. If I understand what you mean, you want every different PHID to have a different color??? If so, I'd do it another way. See below. You can, of course, build the format list with a program.
cynthia
[pre]
** could build this format list dynamically from the data;
proc format;
value ph 1001='pink'
1002='yellow'
1003='cx66FFCC';
run;
ods listing close;
ods html file='c:\temp\alt_color1.html' style=sasweb;
proc report data=phid nowd;
title '1) With this Method, the N statistic is unnecessary';
column phid name address qty ;
define phid / order;
define testphid / computed noprint;
define name / order;
define address / order;
define qty / sum;
compute before phid;
** just grab and save the PHID value;
holdphid = phid;
endcomp;
compute testphid;
** create the TESTPHID which will be available on every ROW (but NOPRINT);
testphid = holdphid;
endcomp;
compute phid;
** use TESTPHID to set teh color of the STYVAL variable;
length styval $100;
styval = catt('style={background=',put(testphid,ph.),'}');
call define(_ROW_, 'style', styval);
endcomp;
run;
ods html close;
[/pre]