我需要我的表是这样的:假设它有两行 . 第一行有六列,第二行有两列(但当然整行长度相同) . 我需要这个,因为我需要在下面放置一个产品的描述,它需要比其他列更多的空间所以图形上它看起来像这样:
1col|2col|3col|4col|5col|6col|
1col |2col |
正在使用报告标记语言来编写此表 .
现在这个表看起来像这样:
<para style="terp_default_1">[[repeatIn(o.order_line,'line')]]</para>
<blockTable colWidths="180.0,70.0,80.0,70.0,50.0,85.0" style="Table5">
<tr>
<td>
<para style="terp_default_9">[[ line.name ]] </para>
</td>
<td>
<para style="terp_default_Centre_9">[[ ', '.join(map(lambda x: x.name, line.tax_id)) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line.product_uos and line.product_uos_qty or line.product_uom_qty) ]] [[ line.product_uos and line.product_uos.name or line.product_uom.name ]]$
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line.price_unit) ]]</para>
</td>
<td>
<para style="terp_default_Centre_9">[[ formatLang(line.discount, digits=get_digits(dp='Sale Price')) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line.price_subtotal, digits=get_digits(dp='Sale Price')) ]] [[ o.pricelist_id.currency_id.symbol ]]</para>
</td>
</tr>
<tr>
<td>
<para style="terp_default_9">[[ line.product_id.product_tmpl_id.description ]]</para>
</td>
</tr>
</blockTable>
我想应该有一种方法来定义特定行(tr标签)以具有特定数量的列 . 就像现在一样,列长度和数字在'blockTable'标签中定义 . 或者最好的方法是将1和2组合成一列3,4,5和6列到第二列 .
更新:我添加了html标签,因为它可能与rml类似 .
1 回答
我设法以此为例解决了这个问题:reportlab: setting colspan for td in rml
我需要指定:
这意味着从第二列开始到最后一列的第二行将合并为一行 .