在qweb报告中添加总和

时间:2017-02-01 08:13:40

标签: openerp odoo-9 qweb

如何在没有.py文件和函数的表上添加SUM等id字段底部?

                    <table class="table table-condensed">
                        <thead>
                            <tr>
                                <th>ID</th>
                                <th>Name</th>
                                <th>Quantity</th>
                            </tr>
                        </thead>
                        <tr>
                            <t t-foreach="docs" t-as="o">
                                <tr>
                                    <td><t t-esc="o.id"/></td>
                                    <td><t t-esc="o.name"/></td>
                                    <td><t t-esc="o.quantity"/></td>
                                </tr>
                            </t>
                        </tr>
                        <tr>
                            <td colspan="3" class="text-right"> SUM (o.quantity) </td>
                        </tr>
                    </table>  

在这种情况下是否可能?

2 个答案:

答案 0 :(得分:2)

您可以在每次循环迭代中创建一个变量和总和数量,并最后打印它。

所以你应该尝试如下:

<table class="table table-condensed">
    <t t-set="qty" t-value="0">
    <thead>
        <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Quantity</th>
        </tr>
    </thead>
        <tr>
            <t t-foreach="docs" t-as="o">
            <tr>
                <td><t t-esc="o.id"/></td>
                <td><t t-esc="o.name"/></td>
                <td><t t-esc="o.quantity"/></td>
                <t t-set="qty" t-value="qty + o.quantity"/>
            </tr>
            </t>
            </tr>
            <tr>
                <td colspan="3" class="text-right"> <span t-esc="qty"></span> </td>
            </tr>
</table>

答案 1 :(得分:2)

尝试以下代码

 <table class="table table-condensed">
                    <thead>
                        <tr>
                            <th>ID</th>
                            <th>Name</th>
                            <th>Quantity</th>
                        </tr>
                    </thead>
                    <tr>
                        <t t-foreach="docs" t-as="o">
                            <tr>
                                <td><t t-esc="o.id"/></td>
                                <td><t t-esc="o.name"/></td>
                                <td><t t-esc="o.quantity"/></td>
                            </tr>

                        </t>
                    </tr>
                    <tr>
                        <span t-esc="sum(line.quantity for line in docs)"/>
                    </tr>
                </table>