我正在为多个科目创建单独的表格。有些科目没有任何数据。如果他们不这样做,我希望能够为具有相同列标题但没有行的主题创建相同的表。在没有行的情况下,我希望能够有一行“无数据”。
例如,以下内容将生成一个包含空数据行的表和下面的注释:
data dat;
Visit='';
Age=.;
Height=.;
Weight=.;
run;
proc report nowd data=dat;
column ('Visit Information' Visit Age Height Weight);
compute after / style=[just=c];
line 'No Data';
endcomp;
run;
我想要的是与上面生成的内容相同的表,中间没有空数据行,但是列标题和说明“无数据”。显然,当我使用限制where visit ne '';
时,它根本不产生任何表。有什么想法吗?
答案 0 :(得分:2)
我在下面做的是有条件地将行高设置为零,并设置可能导致行高非零的所有各种事物为零或不存在(边框,填充/边距,字体大小)。 / p>
在HTML中,这非常有效;在RTF中它几乎完美地工作,可能需要额外的样式选项,或者不可能完全消除RTF中的行。
data dat;
Visit='';
Age=.;
Height=.;
Weight=.;
run;
ods rtf file="c:\temp\test.rtf";
proc report nowd data=dat;
column ('Visit Information' Visit Age Height Weight);
compute visit;
if missing(visit) then do;
call define(_row_,'style','style={height=0px fontsize=0pt margin=0px padding=0px borderstyle=none}');
end;
endcomp;
compute after _page_ / style=[just=c];
line 'No Data';
endcomp;
run;
ods rtf close;
这当然只有在您可以在响应者缺少的数据中存在一行时才有效(或者至少有一个值可以调整,缺少并不是必需的)。