ODS输入报表格式控制的一些技巧

来源:互联网 时间:2016-01-03

我们知道,利用SAS系统的输出控制系统可以控制输出RTF格式的报表,可以直接用于word排版和印刷。但是在海量报表处理时,如何准确控制报表的输出格式呢,如我们常用的统计表都是三线表,表头要大写,顶线和底线要加粗,如何精确控制这些输出呢。下面我们以这个统计表为例,简单总结一些ODS的输出技巧:

(1)定义报表模板,并应用报表模板

通过定义模板,在输出报表时,可以引用这一模板,如我们符合我们统计学规范的报表模板可以代码可以这样写(如果你看不懂,直接拷贝过去直接用就行):

 

proc template;

define style Styles.mystyle;

parent = Styles.RTF;

replace fonts /

'TitleFont' = ("宋体",13pt,Bold )

'headingFont' = ("宋体 ",10pt,Bold)

'docFont' = ("宋体 ",10.5pt)

'footFont' = ("宋体 ",10.5pt);

replace Body from Document /

bottommargin = 0.25in

topmargin = 0.25in

rightmargin = 0.25in

leftmargin = 0.25in;

replace Table from Output /

frame = hsides

rules = groups

cellpadding = 3pt

cellspacing = 2pt

borderwidth = 2pt;

end;

run;

在输出报表时,引用我们刚才定义的报表样式,就可以控制输出格式:

ods rtf file=’c:\sample.rtf style=mystyle bodytitle;

技巧2:不要把表格标题输出到页眉;

当我们用word打开sas输出的报表时,我们会看到表格的标题常常是灰色的,原因是表格的标题部分(title)输出到了页眉,给我们编辑带来麻烦,下面还有一个讨厌的回车,怎么去掉它,且让标题输出到表格上呢,非常简单在输出选项上增加一个bodytitle选项就可以了,代码如下:

ods rtf file=’c:\sample.rtf style= mystyle bodytitle;

技巧3:解决分页的问题

当我们有多个表要输出时,SAS系统会自动把多个表输出到不同的页,给我们排版带来麻烦,使用startpage=neve选项可以改变其默认设置:

ods rtf startpage=never;利用以上技巧,你就可以直接输出符合你们老板要求的直接可用的报表了,当然还要灵活应用制表、report及ods select等语句了。

相关阅读:
Top