%let YTD_START = %sysfunc(intnx(year.11, &LASTFRI, 0),yymmdd10.);
this above gives me YTD_START='2023-11-01' beginning of fiscal year but when i am trying to get the date 6 months prior to fiscal year (below)
%let back_6months= %sysfunc(intnx(month,&YTD_START,-6),yymmdd10.);
i am getting back_6months=1965-01-01. What do i have wrong here?
Remove the format from the %let YTD_START = statement.
%let YTD_START = %sysfunc(intnx(year.11, &LASTFRI, 0));
Why? Because to do arithmetic or logical operations on macro variables whose values are dates or time or date/times, the value in the macro variable must be unformatted. See Maxim 28.
Remove the format from the %let YTD_START = statement.
%let YTD_START = %sysfunc(intnx(year.11, &LASTFRI, 0));
Why? Because to do arithmetic or logical operations on macro variables whose values are dates or time or date/times, the value in the macro variable must be unformatted. See Maxim 28.
Thank you !!
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.