对不起英语技能!
SAS version 9.3
有必要自动化获取Job
源代码的过程。我知道部署/重新部署的方式,但它不适合创建部署元数据。
通过宏:
data job_source_code;
length uri source_uri $256.;
length text $1000.;
_rc = metadata_getnobj("omsobj:Job?@Name='JOB_NAME'", 1, uri);
_rc = METADATA_GETNASN(uri, 'SourceCode', 1, source_uri);
_rc = METADATA_GETATTR(source_uri, 'StoredText', text);
run;
但是字段text
始终为空。
我做错了什么?有没有其他方法可以自动化获取Job
的源代码的过程?
答案 0 :(得分:1)
我知道回答这个问题为时已晚。最近,在尝试在Web上进行搜索以查看是否可以获得任何代码之前,我有相同的请求。但是找不到任何东西,幸运的是,我找到了您的代码,并完成了剩下的部分。谢谢。
data server_details_in_smc_1;
length uri $256 Name PublicType TransId_uri $100 text f_Direct SourceCode_Location $1000.;
nobj=1;
n=1;
do while(nobj >= 0);
n=n+1;
nobj=metadata_getnobj("omsobj:Job?@Id contains '.'",n,uri);
if (nobj > 0) then
do;
arc=metadata_getattr(uri,"Name",Name);
arc=metadata_getattr(uri,"PublicType",PublicType);
TransId_obj=metadata_getnasn(uri,'SourceCode',1,TransId_uri);
arc = metadata_getnasn(TransId_uri,"Directories",1,f_Direct);
arc = metadata_getattr(f_Direct,"DirectoryName",SourceCode_Location);
output ;
end;
end;
keep Name PublicType SourceCode_Location ;
run;
答案 1 :(得分:0)
您可以使用批处理文件从命令行部署作业。
我从未这样做过。但您可以在DI Stuio用户指南中找到此过程的说明: http://support.sas.com/documentation/cdl/en/etlug/65807/HTML/default/viewer.htm#p1jxhqhaz10gj2n1pyr0hbzozv2f.htm