- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hi
I have a very basic code which I try to use to map the date ranges , yet majority of the time I get a symbolic reference error.
below is the code and i have added a screen shot on the error ,
Data check_1;
dateformob=(put(intnx('mon',"&SYSDATE."D,-1,'e'), date9.));
call symput('dateformob',put(intnx('mon',"&SYSDATE."D,-1,'e'), date9.));
rfd_dt=%SYSFUNC(today());
format rfd_dt date9.;
call symput('rfd_dt',%SYSFUNC(today()));
TIME_RANGE=intnx('month',today(),-6,'s');
call symput('TIME_RANGE',intnx('month',today(),-6,'s'));
format TIME_RANGE date9.;
YYMM=(put(intnx('mon',today(),-1,'e'), yymmn4.));
call symput('YYMM',put(intnx('mon',today(),-1,'e'), yymmn4.));
dt_=%SYSFUNC(today())-1;
format dt_ YYMMDDN8.;
dt= putn( dt_,vformat(dt_));
run;
%put &rfd_dt &TIME_RANGE &dateformob &YYMM &dt ;
If someone can help me resolve this would be great !!
Thanks!!
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Your %put statement refers to &dt. But the code you posted never creates &dt. It must come from other code not shown here that sometimes runs and sometimes doesn't run.
Also note, you use today() both with and without %SYSFUNC. Since all uses are in DATA step statements, omit %SYSFUNC when using today().
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Your %put statement refers to &dt. But the code you posted never creates &dt. It must come from other code not shown here that sometimes runs and sometimes doesn't run.
Also note, you use today() both with and without %SYSFUNC. Since all uses are in DATA step statements, omit %SYSFUNC when using today().
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
In the code you show, &dt is never defined.
Paige Miller