Code executed
|
Function performed
|
- %MACRO xset(xvar);
|
Start Macro definition with name and positional parameter xvar
|
- filename path pipe "set" lrecl = 2048;
|
Open source for text data of type pipe pointing to OS command
|
- data _NULL_;
|
Start datastep run group
|
- length xvar $256 xval $1024;
|
Declare variables xvar and xval by length in bytes
|
- infile path dlm = '=';
|
Utilize data stream from data source path
|
- input xvar $ xval $;
|
Define structure of data stream path with variables xvar and xval
|
- xvar = upcase(translate(xvar,'_','(-)'));
|
Remove unwanted characters from variable xvar
|
- %IF %LENGTH(&XVAR.) != 0 %THEN %DO;
|
Specify condition on macro parameter xvar for using code segment
|
- if trim(xvar) = "%UPCASE(&XVAR.)";
|
Conditionally executed code
|
- %END;
|
End condition on macro parameter xvar
|
- call symput(compress(xvar),compress(xval));
|
Transfer variable values to symbol table
|
- run;
|
End data step run group
|
- filename path clear;
|
Close source for text data
|
- %MEND xset;
|
End Macro definition with name
|