Hi guys,
I have a computed column I'm using with a query builder in SAS EG 7.1 that takes the amount of days between my field called t2.MODIFIEDDATE and today.
It currently reads as follows and works fine:
DATDIF( t2.MODIFIEDDATE,DATE(),'ALT/ALT')
However, I would like to be able to have today's date replaced with a date that is a variable that can be typed in via prompt so I can "backdate" it to act as if it were to be run yesterday, for example.
Do you know how I can go about this?
Thanks,
Chris
Oh, missed that the date will come in standard SAS notation. Add double quotes and a d:
(DATDIF( t2.MODIFIEDDATE,"&mydate."d,'ALT/ALT'))
In Enterprise Guide, add a User Prompt (icon right next to the server list, blue circle with digits 1,2,3). Define it as a date prompt. In the code, you have access to the result via a macro variable that has the same name as the prompt.
eg if you named your prompt "mydate", your code will then look like
DATDIF( t2.MODIFIEDDATE,&mydate.,'ALT/ALT')
Thanks Kurt, however it is returning the following SYNTAX error:
(DATDIF( t2.MODIFIEDDATE,&mydate.,'ALT/ALT')) LABEL="DAYSSINCELASTDECISION" AS DAYSSINCELASTDECISION,
ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted string, a numeric constant, a datetime constant, a missing value, ), BTRIM, INPUT, PUT, SUBSTRING, USER. ERROR 22-322: Syntax error, expecting one of the following: a name, *.
Oh, missed that the date will come in standard SAS notation. Add double quotes and a d:
(DATDIF( t2.MODIFIEDDATE,"&mydate."d,'ALT/ALT'))
Looks like we're nearly there but I've got an error as follows:
((DATDIF( t2.MODIFIEDDATE,"&mydate."d,'ALT/ALT'))) LABEL="DAYSSINCELASTDECISION" AS DAYSSINCELASTDECISION, WARNING: Apparent symbolic reference MYDATE not resolved. ERROR: Invalid date/time/datetime constant "&mydate."d.
After you define a prompt, you have to attach it to the project node in question via the Properties context menu.
School boy stuff, thanks a lot Kurt.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.