【问题标题】:Starting a SAS session with UTF-8 encoding on a user level在用户级别使用 UTF-8 编码启动 SAS 会话
【发布时间】:2019-10-10 17:56:25
【问题描述】:

在我的工作场所,我们在 Unix 服务器上使用 SAS v9.3。我需要在用户级别将 SAS 会话的编码更改为 UTF-8。为此,我在 /home 目录中创建了一个 sasv9.cfg 文件,并尝试将 ENCODING latin1 作为测试(默认为 latin9)。这工作正常。 但是,如果我输入 ENCODING UTF-8 它不起作用:在我启动 SAS EG 5.1 客户端后,没有与服务器的连接。详情如下:

Exception type:  SAS.EG.SDS.SDSException
SAS Message:     [Error] The launch of the server process failed because of a SAS kernel initialization failure.

Raw Message:     <?xml version="1.0" ?><Exceptions><Exception><SASMessage severity="Error">The launch of the server process failed because of a SAS kernel initialization failure.</SASMessage></Exception></Exceptions>
Source:          SAS.EG.SDS.Model
Target Site:     SASWorkspace

Stack Trace:
   à SAS.EG.SDS.Model.Server.SASWorkspace()
   à SAS.EG.SDS.Views.View.DoPopulate(DisplayOperation& op)

从我在这里读到的内容,它通过指向 bin/sas_fr 的符号链接 /[sashome]/SASFoundation/9.3/sas 产生一个会话

但我需要转而通过 /[sashome]/SASFoundation/9.3/sas_dbcs(仅适用于我的用户帐户)。我怎样才能做到这一点?

除非有其他解决方案!

感谢您的帮助。

【问题讨论】:

  • 您是否正在尝试使用企业指南?还是只运行 SAS?另外你为什么使用这么旧版本的 SAS?
  • 我使用 SAS EG 5.1 客户端连接到运行 SAS 9.3 的服务器。我们很快就会使用 SAS 9.4 服务器迁移到 SAS EG 8.1,但问题几乎相同。
  • 为什么不让他们创建两个应用服务器。一种使用 UTF-8。然后每个 EG 用户可以决定连接到哪个。
  • 我已经把这个想法提交给技术团队,他们正在考虑。但现在我正试图让它在用户级别上工作以进行紧急测试。为此,我的客户端连接需要以某种方式调用 /[sashome]/SASFoundation/9.3/sas_dbcs 而不是 /[sashome]/SASFoundation/9.3/sas。
  • 另一种可能性是尝试在不使用 EG 的情况下直接在服务器上运行您的 SAS 代码。这会容易得多,因为您尝试在命令行上设置一些选项。

标签: encoding sas


【解决方案1】:

得到了 SAS 技术支持的答复:

“您看到的内核错误是由启动 SBCS(单字节字符集)SAS 并尝试指定双字节编码(例如 UTF-8)引起的。”

运行此命令后: cd [SAS 配置路径]/Lev1/AppSAS-prod/WorkspaceServer 回声“结束;” | bash -x ./WorkspaceServer.sh -verbose -nodms -oplist -stdio > /tmp/launchSAS.txt 2>&1

并检查了 launchSAS 文件,他们得出的结论是问题出在 SAS 中 PATH 选项的处理上。我的会话中的有效价值是: 路径 !SASROOT/sasexe /[SUDAAN HOME]/SUDAAN/v11.0.3/Linux64/SASCallable /usr/local/lib !SASROOT/dbcs/sasexe !SASROOT/sasexe

!SASROOT/sasexe 出现在 !SASROOT/dbcs/sasexe 之前。这就是我启动 SBCS SAS 会话的原因。

我们的三个配置文件中有 PATH 选项的设置,但需要修复的是 /[SASHOME]/SASFoundation/x.x/sasv9_local.cfg

!SASROOT/sasexe 已从 PATH 中删除。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-02
    • 2021-03-22
    • 2017-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多