如何在 SAS 数据步骤中创建嵌入式超链接

How to Create an Embedded Hyperlink in a SAS Data Step

案例是: 目标 URL 例如是“https://whosebug.com/”。 我有一个带有 ID 的数据集。 如果我输入“https://whosebug.com/”+"ID",它就是最终的超链接,指向最终的网页。

如何使用 URLs 创建列表 id 超链接(数据步骤),其中每个单元格的名称将为 "ID"(在 proc 打印之后),当我单击超链接时,它告诉我 “https://whosebug.com/3453456”谢谢!

这是我的代码:

%let url = https://whosebug.com/;

Data final_table;
set table_id;
Link='<A' || compress("HREF=""&url||">(ID) </A>;run;

但它伴随着错误

** 我确实像 Dompazz 所说的那样,这是结果:

我不确定你有什么错误,但是你在构建 URL 时语法有一些问题。请参阅下面的工作代码,该代码针对此问题生成一个包含 URL 的列表:

%LET url=http://whosebug.com/questions/; 
data test;
ID = "34266798"; 
Url_Link = '<A '|| compress("HREF=&url")||ID||'> ID </A>'; 
RUN; 

PROC SQL;
    CREATE VIEW WORK.SORTTempTableSorted AS
        SELECT T.Url_Link
    FROM WORK.TEST as T
;QUIT;

PROC PRINT DATA=WORK.SORTTempTableSorted
    OBS="Row number"
    LABEL
    ;
    VAR Url_Link;
RUN;

这取决于输出位置。 HTML,这行得通,将 link 放在 table.

data test;
link = "<a href='http://www.google.com'>Google</a>";
run;

ods html body="c:\temp\test.htm";
proc print data=test;
run;
ods html close;

但它在 PDF 中失败,只显示 link.

的文本
ods pdf body="c:\temp\test.pdf";
proc print data=test;
run;
ods pdf close;

对于 PDF,代码是 URL=...。所以这会生成一个 PDF,我可以在其中单击 Google 并打开 http://www.google.com

ods escapechar="^";
data test;
link = "^S={URL='http://www.google.com'}Google";
run;

ods pdf body="c:\temp\test2.pdf";
proc print data=test;
run;
ods pdf close;