FAQ:在SAS中如何获得当前正在运行的批作业或者交互式作业的文件名?
来源:互联网 发布:刷q币钓鱼网站源码 编辑:程序博客网 时间:2024/06/13 00:33
问:在SAS中如何获得当前正在运行的批作业或者交互式作业的文件名?
答:
如果你运行一个批作业,你可在当前程序中写入如下代码
%put The current program is %sysfunc(getoption(sysin));
如果你交互式运行作业,那么你可以使用下面代码来获得当前程序的文件名
/*注: 如果多个编辑窗口被打开,则需要注释掉 STOP语句, SASHELP.VEXTFL 为每一个打开的编辑窗口都建立一个唯一的文件引用 ,删除STOP语句可以让我们接收到最后被打开的文件 */
%macro pname;
%global pgmname;
%let pgmname=;
data _null_;
set sashelp.vextfl;
if (substr(fileref,1,3)='_LN' or substr
(fileref,1,3)='#LN' or substr(fileref,1,3)='SYS') and
index(upcase(xpath),'.SAS')>0 then do;
call symput("pgmname",trim(xpath));
stop;
end;
run;
%mend pname;
%pname;
%put pgmname=&pgmname;
上面代码在SAS9中不是必须的,在SAS9中为增强型编辑器提供了一个新的环境变量,命名为 SAS_EXECFILENAME,你可以在你的当前程序中使用下面代码来接收当前运行的程序名:
%put %sysget(SAS_EXECFILENAME);
同时,与之相应的还有一个命名为 SAS_EXECFILEPATH 的环境变量用于保存当前运行程序的全路径(含有文件名)
%put %sysget(SAS_EXECFILEPATH);
原文来自:http://support.sas.com/faq/042/FAQ04296.html
- FAQ:在SAS中如何获得当前正在运行的批作业或者交互式作业的文件名?
- 在vi中如何显示当前正在编辑的文件名(包括路径
- Spark提交作业的流程以及作业是如何被触发在集群中运行的
- 如何获得当前正在展示的activity
- android-如何获得当前正在运行的activity的相关信息
- android-如何获得当前正在运行的activity的相关信息
- android-如何获得当前正在运行的activity的相关信息
- Android-如何获得当前正在运行的activity和进程的相关信息
- 如何让你的作业在Hadoop集群中真正实现分布式运行?
- 如何让你的作业在 Hadoop集群中真正实现分布式运行
- Android -- 获得当前正在运行的activity信息
- Android获得当前正在运行的Activity及相关信息
- PackageManager获得当前手机正在运行的应用程序
- VC++中如何获得一个当前进程的运行目录
- VC++中如何获得一个当前进程的运行目录
- C++中获得在App或者Doc中获得当前View的指针
- 如何在Linux中查看所有正在运行的进程
- 如何在Linux中查看所有正在运行的进程
- javascrpit删除确认取消提示框代码
- ASP.NET系统用户权限设计与实现
- 2006-8-14 集合类
- 一月杂记
- 汉字转化拼音
- FAQ:在SAS中如何获得当前正在运行的批作业或者交互式作业的文件名?
- IIS不能解析.asp的文件解决办法
- 查询数据库的实例
- T-SQL高级查询和视图
- 图片切换-CSS滤镜revealTrans的应用
- the other project of http://www.qs.sh.cn/
- Java对象及其引用
- Delphi中动态链接库(DLL)的建立和使用
- 显示器与眼睛