Type : EXTERNE
La macro lee datos de archivos externos identificados por los filerefs pasados como parámetro (argumento 'fileRefs').
| 1 | %macro dsc_echofile_tolog(fileRefs=); |
| 2 | |
| 3 | /* echo the file contents to log if file exists */ |
| 4 | %IF %LENGTH(&fileRefs) > 0 %THEN |
| 5 | %DO; |
| 6 | %let i=1; |
| 7 | %DO %while (%scan(&fileRefs,&i,' ') ne ); |
| 8 | %let fileRef=%scan(&fileRefs,&i); |
| 9 | /* if the fileref & its associated file exists? */ |
| 10 | %IF %sysfunc(fileref(&fileRef)) = 0 %THEN |
| 11 | %DO; |
| 12 | DATA _null_; |
| 13 | LENGTH linetxt $32767; |
| 14 | IF _n_ = 1 THEN |
| 15 | DO; |
| 16 | /* fileHeader=sasmsg("&msg_dset","_cxa_norm_19_note","noquote","&fileRef");*/ |
| 17 | /* put fileHeader;*/ |
| 18 | END; |
| 19 | INFILE &fileRef. LENGTH=reclen ; |
| 20 | INPUT linetxt $varying32767. reclen ; |
| 21 | put linetxt; |
| 22 | RUN; |
| 23 | %END; |
| 24 | %let i=%eval(&i+1); |
| 25 | %END;/* %do %while */ |
| 26 | %END;/*%if %length(&fileRefs)*/ |
| 27 | %mend; |