تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
1 الرد
5466 أدوات العرض

hi in my odoo report for pay slip i want to count total allowance and total deduction in that 

i try with 


 <t t-set="allowance_tot" t-if="p.category_id.name == 'Indemnite' and p.total != ''" t-value="allowance_tot+p.total"/> <t t-set="deduction_tot" t-if="p.category_id.name == 'Deduction' and p.total != ''" t-value="deduction_tot+p.total"/>


and then display as 


<td><t t-esc="deduction_tot or ' '"/></td>

<td><t t-esc="allowance_tot or ' '"/></td>


it gives error like 

TypeError: unsupported operand type(s) for +: 'NoneType' and 'float'


i check value for all but not a single value in blank still it gives error

الصورة الرمزية
إهمال
أفضل إجابة

Hi,

<t t-set="allowance_tot" t-if="p.category_id.name == 'Indemnite' and p.total != ''" t-value="allowance_tot+p.total"/>

here you are adding None+float, allowance_tot has no value.

If you need to set allowance , try these steps:-

<t t-set="allowance" t-value="get_allowance() or 0"/> try to put this code before your loop starts .

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
1
ديسمبر 18
2928
1
يناير 18
5956
2
أغسطس 17
7477
0
يوليو 17
4793
0
مايو 17
2658