%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 !!
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.