在SAS中的PROC EXPORT中使用IP ADDRESS

时间:2018-05-23 15:08:20

标签: file-io sas export-to-excel

我正在使用SAS的PROC EXPORT将xlsx格式的信息导出到我网络中的共享文件夹中。当我在输出文件的路径中使用servername时,一切都运行良好。当我更改服务器的IP地址时,出现以下错误:

错误:连接:Microsoft Access数据库引擎无法打开或写入文件'\\ 123.12.12.12 \ PUBLIC \ TEST1.xlsx'。它已由其他用户专门打开,或者您需要获得查看和写入其数据的权限。

这是我的代码:

proc export 
data=WORK.TABLE1
DBMS=EXCEL
outfile="\\123.12.12.12\PUBLIC\TEST1.xlsx"
REPLACE;
SHEET='A';
run;

您知道PROC EXPORT是否支持IP ADDRESS格式?如果没有,在输出文件的路径中使用IP ADDRESS存在在SAS中导出的其他方法?我必须使用IP ADDRESS的方法,因为服务器名称会不时更改,我有一堆预定的SAS项目。

谢谢你, 丹

1 个答案:

答案 0 :(得分:1)

该错误来自文件系统。 SAS正在使用文件系统来获取您指定的任何路径,因此在Windows中,您所拥有的应该可以工作。

可能出现的问题:

  1. 其他人打开了文件。

  2. 另一个进程锁定了该文件。

  3. 您(用户SAS运行方式)对该文件没有写入权限 或目录。

  4. 测试#3
    data _null_;
    file "\\123.12.12.12\PUBLIC\TEST1.txt";
    put "Hi";
    run;
    

    这将确认您在目录中具有写入权限。如果SAS正在服务器上运行,请按照调用其他程序的方式执行此操作。

    如果成功,请尝试从Windows中删除XLSX文件。如果失败,您没有权限或有人打开了文件。你需要调试它。

    如果成功,则重新运行您的程序。希望它会创建文件。