我在OpenVMS 8.3平台上运行SAS 8.1版。我尝试了两种不同的方法来导入csv数据文件,似乎无法让它们中的任何一个正常工作。如果有人对我可能做错了什么有任何想法,那将是很棒的。这似乎是一件相当简单的事情。
CSV文件
SSID,FIELD1,......(等等)
AA9999999,043844,.......(等)
方法A - 这似乎“几乎”有效。
DATA JU2_DAT;
INFILE STD_JU2 DSD LRECL=1024 TRUNCOVER FIRSTOBS=2;
INPUT ID $
field1 $
由于某种原因,ID字段的最后一个字符被切断了...而不是获得9个字符,我只得到8个。
方法B
PROC IMPORT DATAFILE = STD_JU2 OUT = JU2_DAT DBMS = CSV; GETNAMES = YES;
这种方法似乎根本没有运行。它将CPU固定在100%,当我终止进程时,我在LOG中有以下错误。这个让我感到困惑,因为我没有在任何窗口环境中运行它。
错误:无法打开X显示。检查显示名称/服务器访问权限。
+错误:无法打开X显示。检查显示名称/服务器访问权限。
+错误:无法打开X显示。检查显示名称/服务器访问权限。
+
+
错误:设备不支持全屏。
+错误:设备不支持全屏。
+错误:设备不支持全屏。
错误:列表中找不到命名项目。
+错误:列表中找不到命名项目。
+错误:列表中找不到命名项目。
答案 0 :(得分:5)
我会尝试在输入语句中添加一个信息。默认长度为8个字符。使用冒号修饰符将导致SAS读取:$ X. chars OR,直到遇到分隔符。
INFILE STD_JU2 DSD LRECL=1024 TRUNCOVER FIRSTOBS=2;
INPUT ID :$9.
field1 $
答案 1 :(得分:0)
我从未使用OpenVMS,但我看到了错误消息:
ERROR: Cannot open X display. Check display name/server access authorization.
在没有X服务器的情况下运行时,在Unix下运行类似的东西。解决方案是使用-nodms
(或可能-nodmr
)命令行选项调用SAS。