İçereği Atla
Menü
Bu soru işaretlendi
3 Cevaplar
5259 Görünümler

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?

 

Avatar
Vazgeç
Üretici

I have also tried . error.

Üretici En İyi Yanıt

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.

Avatar
Vazgeç
En İyi Yanıt

you can use r.get('id')

Avatar
Vazgeç
Üretici

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

En İyi Yanıt

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

Avatar
Vazgeç
Üretici

Not easy. Will see. Thanks

Üretici

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.

Üretici

Where is the best documentation about this kind of parser?

İlgili Gönderiler Cevaplar Görünümler Aktivite
0
Oca 21
804
2
Nis 20
10492
0
May 24
1984
2
May 24
3826
3
Şub 24
3296