SAS Studio中ODS PDF无输出且文件未生成问题求助
SAS Studio中ODS PDF无输出问题的解决
问题原因
你的测试代码里只有TITLE语句和RUN指令,但**TITLE仅用于设置输出的标题文本,本身不会生成任何可被ODS PDF捕获的实质输出内容**。ODS需要有实际的输出过程(比如PROC步、DATA步的输出操作)才能将内容写入PDF文件,没有实质输出时就会提示NOTE: ODS PDF printed no output.,且不会生成空PDF文件。
另外补充:代码里ODS PDF的Title=参数是设置PDF文档的元数据标题(在文件属性里显示),和SAS语句TITLE "Bonjour";设置的输出内容标题是两个不同的概念,这个参数不影响输出是否生成,但核心问题还是缺少实质输出。
解决方案
在ODS PDF打开和关闭之间,添加能产生输出的SAS步骤即可。以下是两种可行的修正示例:
示例1:用PROC PRINT生成空表输出(仅显示标题)
ODS PDF file= '/home/u59673531/SASII/Rapport_F1.pdf' Title= 'Rapport GP F1' author='Mathéo FERRER'; OPTIONS NODATE NONUMBER; ODS ESCAPECHAR='^'; ODS PDF STARTPAGE=NO; TITLE "Bonjour"; /* 添加PROC PRINT步骤,打印空数据集以触发输出 */ PROC PRINT DATA=sashelp.class(OBS=0); RUN; ODS PDF CLOSE;
示例2:用DATA _NULL_生成文本输出
ODS PDF file= '/home/u59673531/SASII/Rapport_F1.pdf' Title= 'Rapport GP F1' author='Mathéo FERRER'; OPTIONS NODATE NONUMBER; ODS ESCAPECHAR='^'; ODS PDF STARTPAGE=NO; TITLE "Bonjour"; /* 用DATA _NULL_配合FILE PRINT生成文本输出 */ DATA _NULL_; FILE PRINT; PUT "这是PDF里的内容"; RUN; ODS PDF CLOSE;
执行修正后的代码后,就能在指定路径下生成包含内容的PDF文件了。
内容的提问来源于stack exchange,提问作者mat47
相关产品推荐
相关产品推荐

