Hi, I have a macro that is compiled "somewhere" once SAS does AUTOEXEC.
I know the macro's name: "%UPDD" - but I don't know where is the code that compile it.
I tried several options such as : MAUTOLOCDISPLAY, and others and it doesn't work.
I made a test, I created a a macrotest.sas file located in C:/TMP with a macro called %macrotest. THen in another program editor, in the same session using all those options, still in the log its not displayed the location: C:/TMP/macrotest.sas which I am looking for.
Please help
THanks
In SAS EG the view sashelp.vextfl contains all paths that have been added to SASAUTOS. If MAUTOLOCDISPLAY doesn't display the path to the file containing the definition of the macro is not in SASAUTOS.
Why can't you look at the files used during session start?
Thank you for the answer.
I guess I should be more accurate... the macro is executed on SCL frame ---- I guess. Is there a code available in order to help me on this?
THanks again
@danweifis wrote:
Thank you for the answer.
I guess I should be more accurate... the macro is executed on SCL frame ---- I guess. Is there a code available in order to help me on this?
THanks again
That likely means that the code is in a catalog that the SCL is using, possibly as an SLIST entry (IIRC). Maybe.
So try to determine the catalogs used.
Then search the contents.
Or talk to the SAS admin about where that SCL source is. May be easier.
thank you for the answer, seems this table stores macro values... what I am looking for is where is located the macro code: path + filename
Then most likely it is NOT an autocall macro. When the macro is not compiled via autocall then it does not display an locaiton with that option.
Example:
3258 %macro updd; 3259 %put Note: Running &sysmacroname.; 3260 %mend updd; 3261 option mautolocdisplay; 3262 %updd; Note: Running UPDD 3263 %put %tslit(xxx); MAUTOLOCDISPLAY(TSLIT): This macro was compiled from the autocall file C:\Program Files\SASHome\SASFoundation\9.4\core\sasmacro\tslit.sas 'xxx'
So you need to look at your AUTOEXEC setting and the code it is running.
If you are using some tool like Enterprise Guide or SAS/Studio to send your code to SAS then you need to also look at what macros those tools have defined in your environment.
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.