%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 !!
CFC_SAS_Communities_400x225.jpg
It's your turn to help shape SAS Innovate 2027. Share your expertise and inspire the SAS community.
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.