Skip to Content
Menú
This question has been flagged
1 Respondre
8960 Vistes

I have defined a function to calculate the number of tickets, in which it needs to check whether employee took a one-way ticket or two-way ticket. if one-way, tickets should multiply by 0.5 and for two-way, it should be 1.

this is my code,


def get_no_of_tickets_used(self,cr,uid,data) 

employee_id = data.get('employee_id',False)

tkts = 0

if employee_id:

tkts_obj=self.pool['od.airfare.encashments'].search(cr,uid,[('employee_id','=',employee_id),('state','!=','refused'),('one_way','=',True)])

tkts += len(tkts_obj * 0.5 

tkts_obj=self.pool['od.airfare.encashments'].search(cr,uid,[('employee_id','=',employee_id),('state','!=','refused'),('one_way','=',False)])

tkts += len(tkts_obj * 1)

return tkts



getting an error as

File "/home/shaffaf/Documents/Client_Projects/Pizza/orchid_addons/orchid_pizza/hr/wizard/provision_xls.py", line 375, in get_no_of_tickets_used

tkts += len(tkts_obj * 0.5)

TypeError: can't multiply sequence by non-int of type 'float'


how to fix this issue?

Avatar
Descartar
Best Answer

Hi,

If this is your original code, there seems some mistakes in it, please update it and see whether you are getting the issue or not.

In this line ,

 tkts += len(tkts_obj * 0.5 

change it to,

tkts += len(tkts_obj) * 0.5 

Then,

change this,

tkts += len(tkts_obj * 1)

to,

tkts += len(tkts_obj) * 1

Thanks

Avatar
Descartar
Autor

@Niyas raphy thankyou, it's working.

Related Posts Respostes Vistes Activitat
1
de maig 21
3786
4
d’oct. 19
9605
1
de febr. 17
4954
0
de gen. 17
4154
0
de des. 16
2824