SAS ODS PDF插入链接

时间:2013-09-20 19:39:34

标签: pdf hyperlink sas sas-ods

我正在尝试做一些我认为很简单的事情。我想将一个xls工作簿的链接插入到GPLOT中生成的图表上的标题中,并通过ODS作为PDF输出。

我试过了:

ods escapechar="^";
TITLE2 '^S={URL="\\it4\Project_Data\Daily_Detail.xlsx"} To go to the source data Click Here';

这只是显示文字。

然后我尝试了:

title2 link="\\it4\Project_Data\Daily_Detail.xlsx" "Click here to view table";

有了这个我得到一个链接,但它不起作用。它被认为是PDF中的链接。我可以将鼠标悬停在它上面并查看地址,但地址显示为“file:/// it4 / Project_Data / \ Daily_Detail.xlsx”,点击它时没有任何内容出现。

我错过了什么?

2 个答案:

答案 0 :(得分:1)

这适用于我的机器:

ods pdf file="c:\temp\test.pdf";
   ods escapechar="^";
 title "^S={URL='c:\'}PROC PRINT";
 proc print data=sashelp.class;
 run;
 ods pdf close;

我得到一个标题周围有一个蓝色框的PDF,如果我点击标题,我会被问到是否要打开c:\。

要在GPLOT中使用此功能,您可能需要设置NOGTITLE以使标题不显示在图像中:

ods pdf file="filename.pdf" nogtitle;

这应该使它们显示为文本,然后应该以类似的方式工作。

答案 1 :(得分:1)

以前我曾经:

ods escapechar="^";
TITLE 'Daily Report';
TITLE2 '^S={URL="\\it4\Project_Data\Daily_Detail.xlsx"} For source data Click Here';
options orientation=landscape;
axis1 order=(&mindate to &maxdate by week)
  offset=(3,3)
  label=none
  major=(height=1 width=1)
  minor=(number=6 height=.5 width=1)
  width=1;
PROC GPLOT DATA = Letters_Summary;
BY Category;
PLOT Number_Sent*date_sent=Category / haxis = axis1;
symbol interpol=join l=1 w=3;
WHERE category NE "Miscellaneous"
    AND category NE "Verification";
RUN;

这不起作用。看来label和label2语句需要紧接在GPLOT之前。现在我有:

options orientation=landscape;
axis1 order=(&mindate to &maxdate by week)
  offset=(3,3)
  label=none
  major=(height=1 width=1)
  minor=(number=6 height=.5 width=1)
  width=1;
ods escapechar="^";
TITLE 'Daily Report';
TITLE2 '^S={URL="\\it4\Project_Data\Daily_Detail.xlsx"} For source data Click Here';
PROC GPLOT DATA = Letters_Summary;
BY Category;
PLOT Number_Sent*date_sent=Category / haxis = axis1;
symbol interpol=join l=1 w=3;
WHERE category NE "Miscellaneous"
    AND category NE "Verification";
RUN;

现在它有效。我不确定为什么选项或轴语句会干扰将标题作为链接。