sas字段有html脚本,sas - SAS存储过程STP网站:如何为_webout而不是put语句引用html文件? - 堆栈内存溢出...

因此,我已经看到了许多页面,这些页面可以通知SAS存储过程用户创建存储过程网页的方式,例如:

data _null_;

file _webout;

put '';

put '

Hello World!';

put '

';

put '

Hello World!

';

put '';

put '';

run;

put HTML语句是一种很好的方法,也是一种将HTML获取到页面的快速方法,但是我注意到使用put的HTML变得非常混乱且不可维护。

我该如何引用外部HTML文件呢? 我的确在HTML put语句中引用了一些SAS宏,因此我不确定它们是否会在外部html中解析,但是仍然有兴趣查看在存储过程中引用外部HTML文件的有效示例。

更新-我的示例程序

在这个放置HTML的程序中,我只是向网页写一个表单,并在下拉列表中填充一些数据。 我只是想从外部HTML文件中将其称为原始html,同时仍要像宏变量引用一样解析嵌入在HTML中的SAS代码。

%macro test;

proc sql;

create table eqmtid_name as

select distinct EQMT_ID

from library.joined_data;

%let neqmtid = &sqlobs;

quit;

data _null_;

set eqmtid_name;

suffix=put(_n_,8.);

call symput(cats('EQMTID',suffix), EQMT_ID);

run;

data _null_;

file _webout;

put '';

put '';

put '

';

put '

put 'document.addEventListener("DOMContentLoaded", function initialize() {';

put ' var svgs = document.getElementsByTagName("svg");';

put ' for (i = 0; i < svgs.length; ++i) {';

put ' e = svgs[i];';

put ' e.removeAttribute("height");';

put ' e.removeAttribute("width");';

put ' e.setAttribute("width","80%");';

put ' }';

put ' ';

put '});';

put '';

put '';

put '

';

put '';

put '

put '

';

put '

';

put '

Header Text
';

put '

';

put '

';

put '

';

put '';

put '

';

put '';

put 'Show SAS Log
';

put '

put '

';

put '

';

put 'Equipment ID:';

put '

';

put '

';

put '' /

'' /

%do i = 1 %to &neqmtid; /

"&&EQMTID&i" /

%end; /

'';

put '

';

put '

';

put '
';

put '

put '

';

put '

';

put '
';

put '

';

put '';

put '

';

put '';

put '

';

put '
';

put '

';

put '

';

put '

';

put '

';

put '';

put '';

run;

%mend;

%test;

已解决的更新

感谢下面概述的示例Joe,这是我必须编写代码才能使此工作...的SAS代码:

filename htmlfile "/sasdata/IT/APP/file.html";

proc stream outfile=_webout;

begin

&streamdelim; %include htmlfile;

;;;;

run;

注意:在html文件中,如果您有宏语句(如%DO循环),则可能会收到诸如“错误:%DO语句在开放代码中无效”之类的错误。 为了解决该错误,我在该语句周围的html文件中添加了一个宏包装,如下所示:

%macro doeqmt;

%do i = 1 %to &neqmtid;

"&&EQMTID&i"

%end;

%mend;

%doeqmt;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值