上一页|下一页

打开并创建程序

打开程序

您可以从导航窗格的服务器文件和文件夹部分打开 SAS 程序。要打开程序,请展开相应的文件夹,并双击您希望打开的程序,或将其拖至工作区域。系统将在工作区域的新选项卡中打开程序。

创建新程序

您可以从导航窗格的服务器文件和文件夹部分创建新的 SAS 程序。要创建新程序,点击 新建按钮,并选择 SAS 程序。此时,程序窗口将在工作区域的新选项卡中打开。
注: 您还可以点击主应用程序工具栏上的 “新选项”按钮,然后选择新建 SAS 程序

运行程序

当您编写完程序后,可通过点击 运行按钮 运行程序。
如果未发生错误,则系统将自动打开结果。如果发生错误,则系统将默认打开日志选项卡。您可展开错误警告注释部分查看消息。当您点击某一消息时,SAS Studio 将在日志中为您突出显示,因此您可准确查看消息在日志中的发生位置。
已展开并选定错误的日志
注: 由于您是在服务器环境中执行操作,因此,请勿在 SAS 程序中添加 ENDSAS 语句。若您运行了包含 ENDSAS 的程序,点击 其他应用程序选项按钮 并选择重置 SAS 会话以重置您的 SAS 会话。

使用自动完成功能

关于自动完成功能

代码编辑器中的自动完成或代码完成功能能够在您实际完全输入某条语句之前预测您希望输入的下一个单词。自动完成功能能够完成与 SAS 过程、语句、宏、函数、CALL 例程、格式、输入格式、宏变量、SAS 颜色、样式元素、样式特性、统计关键字和各种 SAS 语句和过程选项相关联的关键字。自动完成功能也可以完成逻辑库引用名和表名。
注: 自动完成功能仅在编辑 SAS 程序时可用。
下面的示例展示了当您在代码编辑器中输入 proc a 时显示的关键字和帮助。
示例:代码编辑器中的自动完成功能
在此示例中,您从过程列表中选择了 APPEND,因此代码编辑器中会显示 proc append。当您输入空格时,代码编辑器会显示 APPEND 过程的选项列表。
选择 APPEND 过程后可以使用的选项

如何使用自动完成功能

要使用自动完成功能,请执行以下操作:
  1. 自动完成列表的打开方式因您要添加的关键字而异。
    • 如果您要添加全局语句、DATA 步语句、CALL 例程、过程、宏语句或自动宏变量,请输入要使用的关键字的第一个或前几个字母。
      此时,系统会打开一个窗口,并在其中列出以这几个字母开头的建议关键字。
      在您输入内容时显示的选项
    • 如果您要指定颜色、输出格式、输入格式、宏函数、SAS 函数、统计量关键字、样式元素或样式特性,请将鼠标指针悬停在注释之上,然后按 Ctrl+空格键。要回滚选项列表,请按 Ctrl+Shift+空格键。
      注: 即使您已经取消选择了参数选择窗口中的启用自动完成选项,这些快捷方式也仍有效。详细信息,请参见自定义代码编辑器
      代码编辑器中的选项
  2. 您可以通过以下几种方式导航到要使用的关键字:
    • 继续输入,直到选择正确的关键字为止(因为在您输入内容的同时,匹配精确度也在提高)。
    • 使用向上和向下箭头键、Page Up 和 Page Down 键或鼠标滚动浏览列表。
  3. 可通过双击选定的关键字或按 Enter 键将关键字添加到程序中。

使用语法帮助

代码编辑器将在您编写和编辑程序时显示简要的 SAS 语法文档。您可以通过以下几种方式显示帮助:
  • 右击程序中的关键字,然后选择语法帮助
  • 首先输入有效的 SAS 关键字,然后点击自动完成窗口中的建议关键字。
  • 将鼠标指针悬停在程序中有效的 SAS 关键字之上。只有在“编辑器”参数选择中选择了启用提示选项时该功能才可用。详细信息,请参见自定义代码编辑器
SAS 产品文档提供了有关 SAS 语言更全面的使用信息,而代码编辑器中的语法帮助则通过语法提示或关键字简要说明让您初步了解 SAS 语言。您可以通过点击“语法帮助”窗口中的链接获得其他帮助,方法如下:
  • 点击窗口顶部的关键字链接,在 support.sas.com 网站中搜索此关键字。
    “语法帮助”窗口顶部显示关键字链接
  • 点击窗口底部的链接,在 SAS 产品文档、示例和 SAS 注释以及 SAS 技术文档中搜索此关键字。
    “语法帮助”窗口底部显示其他文档链接

添加表名和列名

从导航窗格的逻辑库部分中,您可使用拖放操作将表名和列名移到 SAS 代码中。例如,您可将 Sashelp.Cars 表移到 PRINT 过程的 DATA 选项中。当您松开鼠标时,代码中将出现该表的完全限定名。
完成的 PRINT 过程

编辑任务代码

您可编辑运行任务时自动生成的代码,然后使用这些修改来运行该任务。当您编辑代码时,SAS Studio 将在一个单独的程序窗口中将其打开。该代码不再与原始任务相关联。
要编辑任务所生成的程序,请执行以下操作:
  1. 在工作区域的相应任务选项卡中,点击代码以显示与该任务相关联的代码。
    注: 要编辑与任务相关联的代码,您必须首先显示包含该任务的代码。如果任务代码未显示,则点击 其他应用程序选项按钮,并选择参数选择。点击任务,然后选择显示任务代码
  2. 在工具栏上点击编辑。代码将在新程序窗口中打开。
    选定了编辑按钮的任务代码窗口

创建 SAS 程序包

SAS 程序包是一个文件,其中包含 SAS 程序的快照及其日志和 HTML 结果。您可以使用已编写的代码以及在您运行任务时自动生成的代码创建程序包。在 SAS Studio 中打开程序包时,您不必再次运行相应的程序即可访问代码、日志和结果。如果您更改代码并重新运行,程序包不会自动更新。您必须再次保存包才能保存更改。
注: 程序包不包括 PDF 或 RTF 结果。如果您是在交互模式中运行程序,则无法创建程序包。
要创建程序包文件,打开您要使用的代码并点击 另存为按钮。指定文件位置和名称,然后选择 SAS 程序包作为另存为类型选项。
注: 如果您要单独保存各个程序或日志,或者以 HTML、PDF 或 RTF 文件格式下载结果,则您必须在打开程序包文件后重新提交相应的程序。

创建程序汇总

您可以为您已编写的代码以及在您运行任务时自动生成的代码创建汇总页。“程序汇总”页是在单独的浏览器选项卡中打开的 HTML 文件,其中包括有关程序执行、完整 SAS 源代码、完整 SAS 日志和结果的信息。要查看程序的程序汇总页,点击 程序汇总按钮
注: 只有在您已运行程序后,“程序汇总”页才可用。
您也可以点击 另存为按钮,并选择SAS 程序汇总作为另存为类型选项以将程序汇总文件保存至指定文件夹。“程序汇总”页另存为 HTML 文件。

使用宏变量

宏变量可以用于添加运行程序或任务时获取的信息,例如应用程序的名称和版本号。您可以通过在其前面添加“&”以在代码、标题或脚注中引用这些项。
例如,您可以在脚注中使用宏,如下所示:
Generated with &_CLIENTAPP &_CLIENTAPPVERSION
注: 除了下列宏变量之外,您还可以在代码中使用 SAS 宏函数和变量。有关 SAS 宏函数和变量的信息,请参见 SAS 宏语言参考
宏变量
说明
_CLIENTAPP
应用程序名称。
_CLIENTAPPVERSION
应用程序版本号。
_SASPROGRAMFILE
当前正在运行的 SAS 程序的完整路径和文件名。仅当保存 SAS 程序文件的服务器与 SAS Studio 代码正在运行的服务器相同时,宏变量才可用。

使用提交历史

SAS Studio 维护有一份日志文件,其中记录了每次运行程序或任务的条目。您可使用此日志或提交历史来访问您所提交代码的此前版本。要查看提交历史,点击程序或任务窗口中的代码选项卡。在工具栏中,点击 提交历史按钮,并选择您希望打开的版本。此前版本的程序将在新窗口中打开,您可在此窗口中根据需要复制和粘贴代码。
注: 提交历史将在您从 SAS Studio 注销时清除。

自动格式化 SAS 代码

您可使用代码编辑器来自动格式化代码,进而让您的程序更易于阅读。当您自动格式化代码时,系统将添加换行符,而且每一行将根据其嵌套级别正确缩进。要在代码编辑器中格式化代码,点击 格式化代码按钮
例如,由于缺乏缩进和逻辑换行符,以下代码较难阅读:
data topn;
length rank 8; label rank="Rank";
set topn; by &category descending &measure;
if first.&category then rank=0; rank+1;
if rank le &n then output;
run;
在您使用自动格式化代码功能后,此程序如下所示:
data topn;
    length rank 8;
    label rank="Rank";
    set topn;
    by &category descending &measure;

    if first.&category then
        rank=0;
    rank+1;

    if rank le &n then
        output;
run;

使用交互模式

什么是交互模式?

一些 SAS 过程具有交互性,这意味着它们将在您提交 QUIT 语句或提交新的 PROC 或 DATA 步之前保持活动状态。在 SAS Studio 中,可使用代码编辑器来以交互模式运行这些过程,以及一些其他 SAS 过程。
通过使用交互模式,您可从 SAS 程序中运行选定的代码行,并使用结果来确定后续步骤。例如,SAS/OR 中的 OPTMODEL 过程就可让您建模,以及求解数学编程模型。通过交互的方式运行此过程,您可在不运行整个程序的情况下,快速检查部分程序的结果,并确定您是否需要进行任何修改。
注: 交互模式仅在您运行 SAS 9.4 或更新版本的首个维护版本时可用。

在交互模式下运行程序

要在交互模式中运行程序,请点击工具栏上的 “切换至交互式”按钮。要关闭交互模式,再次点击 切换至交互式按钮。如果您在程序打开时更改模式,则该程序的日志和结果将被清除。您也可以点击相应工具栏的 清除日志或清除结果按钮 以手动清除日志和结果。
以交互模式运行程序时,SAS Studio 将不会向您的程序添加任何自动生成的代码,如 ODS 和 %LET 语句。此外,所生成的结果仅以 HTML 形式呈现。在交互模式中,日志和结果将被附加到现有日志和结果中。此前提交的代码将在您终止其前保持活动状态。
例如,假设您有如下程序:
proc sql;
  select * from sashelp.cars;
  
  select * from sashelp.class;
  quit;
在非交互模式中,如果您选择代码的前两行并将其提交,那么代码将成功运行。如果您之后选择代码的最后两行并将其提交,那么代码将因为缺失 PROC SQL 语句而失败。
如果您切换至交互模式并遵循相同的步骤,则代码的最后两行将因为 PROC SQL 语句仍处于活动状态而成功运行。
注: 有关特定过程的文档,请参见 support.sas.com 中的 SAS Programmer’s Bookshelf。

关于交互模式下的逻辑库

使用交互模式时,您将会创建新的工作区服务器会话,它拥有自己的逻辑库列表并且仅在该会话中可用。如果您在交互模式中分配新逻辑库,则在关闭交互模式后,此逻辑库将不可用。要在交互模式和非交互模式之间共享逻辑库中的数据,该逻辑库必须包含在 autoexec.sas 文件之中,以便每次使用 SAS Studio 时都能对其进行分配。详细信息,请参见编辑 Autoexec 文件
Webwork 是交互模式下的默认输出逻辑库。如果您在没有指定逻辑库引用名和表名的情况下引用表,则 SAS Studio 会假定将它保存在 Webwork 逻辑库中。Webwork 逻辑库将在交互模式和非交互模式之间共享。您在一种模式下的 Webwork 逻辑库中创建的任何数据都可以在另一种模式中访问。
注: 如果您在交互模式下运行创建输出数据的程序,并且该数据保存于在交互和非交互模式下都可用的逻辑库中(例如 Webwork 逻辑库),则必须刷新导航窗格的逻辑库部分以查看用户界面的新数据。
Work 逻辑库不能在交互模式和非交互模式之间共享。每个工作区服务器会话都有自己独立的 Work 逻辑库,并且数据不能共享。保存至交互模式下的 Work 逻辑库中的任何数据都不能从非交互模式下的 Work 逻辑库中访问。此外,如果数据是在交互模式下创建的,则您不能从导航窗格中逻辑库部分的 Work 逻辑库中查看数据。不过,您可以在交互模式下通过编程方式访问数据。

使用交互模式时的特殊注意事项

以下列表汇总了一些在使用交互模式时的特殊注意事项:
  • 如果您在交互模式下运行创建输出数据的程序,则必须刷新导航窗格的逻辑库部分以查看新数据。
  • 在导航窗格的逻辑库部分中,不能查看交互模式下 Work 逻辑库中创建的任何数据。不过,可以通过编程方式访问数据。
  • 因为交互模式会创建新的工作区服务器会话,因此任何选项、宏和宏变量以及工作区服务器会话特定的其他数据都不能在交互模式和非交互模式间共享。
  • 在交互模式下运行程序时,仅生成 HTML 格式的结果。
  • 通过点击 “交互模式”按钮,可以为单个程序选项卡打开或关闭交互模式。交互模式打开时,该按钮将会在工具栏上突出显示。如果您需要为所有程序选项卡使用交互模式,点击 “更多应用程序选项”按钮并选择参数选择。点击常规,然后选择在交互模式下启动新程序。如果您未选择该选项,则在每次使用时必须打开交互模式。
上一页|下一页|页首