0
SAS .xptファイルを出力するSASスクリプトがあります。私は現在、これを生成するPROC COPYメソッドを使用しています。なぜなら、必要な名前にダッシュが含まれていて、8文字より長いからです(これはxportを使用するときの名前の制限です)。.xptファイル名にタイムスタンプを含めるにはどうしたらいいですか?
次のように私のコードは、大きく次のとおりです。私は最近、出力ファイル名にタイムスタンプを含めるように要求されている
LIBNAME TempSrc "C:\Temp";
LIBNAME xportout xport 'C:\Temp\1234-AB-FileOut_Name_.xpt';
PROC IMPORT datafile="C:\Temp\FileIn.csv"
out=mydata
dbms=dlm replace;
DELIMITER= ",";
getnames=yes;
options ExtendObsCounter=no;
RUN;
DATA TempSrc.SasFile;
set work.mydata
RUN;
PROC COPY in=TempSrc out=xportout memtype=data;
select stdy7673;
RUN;
。
私は、必要に応じて、日付と時刻を生成するために、これらのマクロを持っている:
%let today=%sysfunc(date(), date9.);
%let now=%sysfunc(time(), time5.);
%let now=%sysfunc(compress(&now, :));
私も、任意の成功を収めてLIBNAMEに組み込むことができませんでした。
どちらも次のが働いています
LIBNAME xportout xport 'C:\Temp\1234-AB-File_Name_&today.&now..xpt';
LIBNAME xportout xport 'C:\Temp\1234-AB-File_Name_' || &today. || &now. '.xpt';
どのように私は.xptファイル名に日時を含めることができますか?
私は、xportステートメントが二重ではなく一重引用符を必要とすることを示したsasサポートサイトで何かを読んでいました。それにかかわらず、これは意図どおり正確に動作します。 –