Hi everyone,
I create a variable to store the file directory in it in order to modify the path easier in the futur but when i run the sas code I get this error "ERROR: Physical file does not exist." It works perfectly when i refer the path in the Infile statement.
I begin my code with :
%let path=H:\database\SAS\Txt_file\Database.txt;
then I import my txt file.
DATA MyDB;
LENGTH
...
FORMAT
...
INFORMAT
...
INFILE '&path'
LRECL=584
ENCODING="WLATIN1"
DLM=';'
MISSOVER
DSD
firstobs=2;
INPUT
...
RUN;
thank u in advance
Hi,
Why not just put it in a filename statement rather than juming through macro loops?:
filename dbfile 'h:\database\sas\txt_file\database.txt'; data mydb; length ...; format ...; informat ...; infile dbfile lrecl encoding="wlatin1" dlm=";" missover dsd firstobs=2; input ...; run;
Also, considering coding in lower case, it makes code easier to read.
Macro variable references do not resolve withing single quotes when called within a string literal.
Try
INFILE "&path"
Macro variables are not resolved when enclosed by single quotes. Use double quotes in your infile statement.
Hi,
Why not just put it in a filename statement rather than juming through macro loops?:
filename dbfile 'h:\database\sas\txt_file\database.txt'; data mydb; length ...; format ...; informat ...; infile dbfile lrecl encoding="wlatin1" dlm=";" missover dsd firstobs=2; input ...; run;
Also, considering coding in lower case, it makes code easier to read.
Because i didn't know the statement. Now I know :-D.
Thanks and sorry for upper case.
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.