BIRT PDF报告:固定表格高度?

BIRT PDF报告:固定表格高度?,pdf,reporting,birt,tabular,Pdf,Reporting,Birt,Tabular,我试图在一个A4固定布局页面中显示一个表来显示产品(行)。 我设法添加了一个带有页眉/详图/页脚部分的表格,但无法为详图部分设置最小高度(例如150mm)。 如果我在详图行上设置了150mm的高度,则每行将具有该150mm的高度。 然而,我希望每一行有一个最小的高度(如果某些列的内容被包装,那么可以在几行上) +---------+--------+--------------+ Tbl Hdr | col1 | col2 | col3| +---------+--------+--------

我试图在一个A4固定布局页面中显示一个表来显示产品(行)。 我设法添加了一个带有页眉/详图/页脚部分的表格,但无法为详图部分设置最小高度(例如150mm)。 如果我在详图行上设置了150mm的高度,则每行将具有该150mm的高度。 然而,我希望每一行有一个最小的高度(如果某些列的内容被包装,那么可以在几行上)

+---------+--------+--------------+
Tbl Hdr | col1 | col2 | col3|
+---------+--------+--------------+
Tbl Dtl |[val1]|[val2]|[val3]|
+---------+--------+--------------+

||BIRT报告使用自动布局引擎优化当前上下文的内容。这是为了使报告看起来尽可能好,而不管显示/屏幕如何。事实上,它的目的是尽量减少,如果不是消除你试图保留的所有白色空间


你可以考虑做的是添加第二个细节行。然后,您可以给这个细节行一个固定的高度,并让它使用剩余的空白。或者,在母版页的页脚中放置第二个表,该表将呈现所需的数据,并将其绑定到页面底部。这样做的好处是,无论页面类型(字母、A4等)如何,它都会附着在页面底部。

另一种选择是,如果有页脚,则不会剪切页脚:

我有一位客户,他想要固定的桌子尺寸和固定的行高。最后显示了10行

为了绕过自动格式化程序:

创建一个变量
var rowCount=0;
setGlobalVariable(“rowCount”,rowCount)
初始化
脚本中

在获取脚本中,添加
rowCount++恰好在
返回之前(true)。
然后,将
if(!lineDataSet.fetch())
语句更改为以下内容:

if(!lineDataSet.fetch()){
    if(rowCount % 10 >0){
        row["column1"] = "";
        rowCount++;
        return(true);
    }
    return(false);
}

在许多情况下,当您需要创建假数据来填充表格(例如,缺少日期)时,这非常方便。

谢谢您的回答。我同意你提出的第一个解决方案。我还必须使固定高度行仅在rownum大于3(任意值…)后可见,以避免不必要的分页符。不是很好的解决方案,但我不能再花更多的时间在这个。。。再次感谢你的帮助。
if(!lineDataSet.fetch()){
    if(rowCount % 10 >0){
        row["column1"] = "";
        rowCount++;
        return(true);
    }
    return(false);
}