跳至内容
菜单
此问题已终结
3 回复
5254 查看

Hello my friends! 

In the contribution register qweb template, we would want to write the payslip number (from hr.payslip) for each line.

sd

Our PDF report is like this : (see ######)

We have this code in the file report_contributionregister.xml :

                    <table class="table table-condensed">
                        <thead>
                            <tr>
                                <th>Number</th>
                                <th>PaySlip name</th>
                                <th>Code</th>
                                <th>Name</th>
                                <th>Quantity</th>
                                <th>Amount</th>
                                <th>Total</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr t-foreach="get_payslip_lines(o)" t-as="r">
                                <td>
                                    <span>######</span>
                                    <span t-esc="r.get('number')"/>

                                </td>
                                <td><span t-esc="r.get('payslip_name')"/></td>
                                <td><span t-esc="r['code']"/></td>
                                <td><span t-esc="r['name']"/></td>
                                <td><span t-esc="formatLang(r['quantity'])"/></td>
                                <td><span t-esc="formatLang(r['amount'])"/></td>
                                <td><span t-esc=" formatLang(r['total'], currency_obj=o.company_id and o.company_id.currency_id)"/></td>
                            </tr>
                        </tbody>
                    </table>

Could we help please?

 

形象
丢弃
编写者

I have also tried . error.

编写者 最佳答案

Oh YEH!

In the file : .../addons/hr_payroll/report/report_contribution_register.py

In the method : _get_payslip_lines()

I have replaced :                

'total': line.total,

By :
             'total': line.total,

 'number': line.slip_id.number,

 

Now, i will create an override in my custom module.

形象
丢弃
最佳答案

you can use r.get('id')

形象
丢弃
编写者

Thanks. But you are not right. column is empty. I want the number (2014-PAY-00001) not the id.

最佳答案

My suggestion, you create own parser like this: https://www.odoo.com/forum/help-1/question/odoo8-reports-and-variables-transfering-71292#answer-72839

形象
丢弃
编写者

Not easy. Will see. Thanks

编写者

May be I could override the method : def _get_payslip_lines(self, obj): In the class : « class contribution_register_report(report_sxw.rml_parse): » In the file « .../addons/hr_payroll/report/report_contribution_register.py » ???

idea ok in old style api.

编写者

Where is the best documentation about this kind of parser?

相关帖文 回复 查看 活动
0
1月 21
804
2
4月 20
10468
0
5月 24
1978
2
5月 24
3818
3
2月 24
3288