Hi ,
I have been using the the following ods statement to output a histogram using proc sgplot. This code is contained within a macro which is placed in another large macro and is activated when certain conditions are met...i.e:
%macro example;
----------------------------------
-------------------------------
| ods listing gpath = "&out." ; | | | | | | / |
/* create PNG image file */
ods graphics on / reset=index imagename = "histogram" ;
proc sgplot data=out.&summary.;
histogram xyz;
xaxis thresholdmin=1 thresholdmax=1;
run;
%mend example;
Within the larger code there is a statement that says:
%macro largemacro;
several sas codes--------------------
-------------------
-------------------
if a in (1,2,3) then %example;
ods_all_close;
%mend largemacro;
I ran it for different examples of data and this is the first time I noticed this problem. I am able to get the dataset '&summary' and it has the variable xyz in it. I also tried removing the ods_all_close statement but it still doesn't work. I don't think the ods_all_close statement affects ods grahics ( It was placed to ensure all output destinations are closed for subsequent program runs ). There are several such ods_all_close statement in the entire code. As I mentioned it works for other examples. I would appreciate your help. Thanks !