SAS PROC EXPORT and DBMS=CSV. ERROR: Export unsuccessful. See SAS Log for details
SAS PROC EXPORT and DBMS=CSV. ERROR: Export unsuccessful. See SAS Log for details
我想使用 SAS 9.4 将多个 SAS 数据集导出为 CSV 文件(而不是 xlsx 文件)。将代码用于任何数据集时:
proc export data = dataset
outfile = "C:\MBorg\dataset.csv"
dbms = csv replace;
run;
我收到此错误消息:
ERROR: Export unsuccessful. See SAS Log for details.
NOTE: The SAS System stopped processing this step because of errors.
NOTE: PROCEDURE EXPORT used (Total process time):
real time 0.06 seconds
cpu time 0.01 seconds
与错误消息所暗示的相反,SAS 日志没有提供额外的详细信息。
文件夹权限或 Excel 关闭或打开时 运行 根据 , or using an empty dataset, makes no difference. The SAS website 的代码提到当使用 PROC EXPORT with DBMS=CSV 时可能会发生此错误,并且它可以通过使用名称文字语法来避免。但是,按照下面的方式使用它没有任何区别。
proc export data = work.'dataset'n
outfile = "C:\MBorg\dataset.csv"
dbms = csv replace;
run;
奇怪的是,我能找到解决问题的唯一方法是重置 SAS。 options obs=max
没有区别。不确定是什么原因导致此消息。这发生在 SAS 9.4 M0 和 M7 上。
在不重置 SAS 的情况下导出 CSV 文件的任何帮助都会有所帮助。
尝试编写您自己的步骤来编写文本文件,而不是让 PROC EXPORT 为您生成一个。这至少应该使错误消息更清楚。
* Get list of variables names ;
proc transpose data=DATASET(obs=0) out=_names_; var _all_; run;
* Write header row ;
data _null_;
file "C:\MBorg\dataset.csv" dsd lrecl=2000000 ;
set _names_;
put _name_ @ ;
run;
* Write data rows ;
data _null_;
file "C:\MBorg\dataset.csv" dsd lrecl=2000000 mod;
set DATASET;
put (_all_) (+0) ;
run;
我想使用 SAS 9.4 将多个 SAS 数据集导出为 CSV 文件(而不是 xlsx 文件)。将代码用于任何数据集时:
proc export data = dataset
outfile = "C:\MBorg\dataset.csv"
dbms = csv replace;
run;
我收到此错误消息:
ERROR: Export unsuccessful. See SAS Log for details.
NOTE: The SAS System stopped processing this step because of errors.
NOTE: PROCEDURE EXPORT used (Total process time):
real time 0.06 seconds
cpu time 0.01 seconds
与错误消息所暗示的相反,SAS 日志没有提供额外的详细信息。
文件夹权限或 Excel 关闭或打开时 运行 根据
proc export data = work.'dataset'n
outfile = "C:\MBorg\dataset.csv"
dbms = csv replace;
run;
奇怪的是,我能找到解决问题的唯一方法是重置 SAS。 options obs=max
没有区别。不确定是什么原因导致此消息。这发生在 SAS 9.4 M0 和 M7 上。
在不重置 SAS 的情况下导出 CSV 文件的任何帮助都会有所帮助。
尝试编写您自己的步骤来编写文本文件,而不是让 PROC EXPORT 为您生成一个。这至少应该使错误消息更清楚。
* Get list of variables names ;
proc transpose data=DATASET(obs=0) out=_names_; var _all_; run;
* Write header row ;
data _null_;
file "C:\MBorg\dataset.csv" dsd lrecl=2000000 ;
set _names_;
put _name_ @ ;
run;
* Write data rows ;
data _null_;
file "C:\MBorg\dataset.csv" dsd lrecl=2000000 mod;
set DATASET;
put (_all_) (+0) ;
run;