Hi - I'm using an INFILE statement in a macro, and the message I am getting is, ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric operand is required. The condition was: last Where "last" is being invoked is here as part of the INFILE statement (END = last). Any ideas what I'm doing wrong? This is simplified code to test the usage of "last." Thanks %macro countfil(dsn);
data &dsn; length fil2read $1000;
INFILE output TRUNCOVER ;
INPUT name $1000.;/*Pull pipe in*/
fil2read=name;
INFILE dummy FILEVAR=fil2read DSD END=last missover FIRSTOBS=9 LENGTH=len ;
%if last %then %do;
output;
%end;
run;
%mend countfil; filename output pipe 'ls -a /mypath/*.csv' ; %countfil(datasetname);
... View more