Hi:
Assuming you did NOT write into SASHELP.TMPLMST, then before you run your code, you should ONLY need to do this:
ods path sashelp.tmplmst(read);
Do NOT put SASUSER.TEMPLAT into this path. What you're doing is removing the SASUSER item store from being searched when you use PROC FREQ. Assuming you only changed the template in SASUSER, then you should get the production PROC FREQ template with this statement in your code because you are telling ODS to ONLY search in SASHELP.
Let's keep our fingers crossed that you did NOT change SASHELP.TMPLMST, and when you use the ODS PATH statement, your PROC FREQ will be the default template. So then, when you want to use your changed template, you'd have to issue a new ODS PATH:
ods path sasuser.templat(update) sashelp.tmplmst(read);
Which should then cause the changed FREQ template to be found first. What you're doing with the ODS PATH statement is changing what is available to be searched for by ODS based on the templates used by the different procedures.
Now in the worst of cases, when you change the path to just SASHELP.TMPLMST and you do (unfortunately) still see the changed rejport, then you are sort of in Tech Support land. You should never, never, never, never, never, never, never, never, ever change SASHELP.TMPLMST to any access other than (READ). Depending on your platform, Tech Support may be able to just send you a copy of the item store for your version and maintenance level of SAS. In the ugly old days, if you accidentally wrote over a template in SASHELP.TMPLMST, you had to reinstall SAS to get the production templates back (guess how I know this). I don't think it's that way anymore, but I'm sending all good thoughts your way, that you only changed SASUSER.TEMPLAT.
Cynthia
... View more