Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
4 Antwoorden
6145 Weergaven

Hello all,

I have a query which needs a solution.

I have defined two float fields and assigned widget='float_time' as in xml. I need to subtract these two fields and need to get value in float.

For example:

start_time = 14:30 and end_time = 15:00

Now if i deduct i get value as 0.50 mins, But its wrong right?. So i need to value as 0.30 mins. How to achieve this?


Avatar
Annuleer
Auteur

Anyone knows please reply?

Please add your code as well

Auteur

class LostTimeDetails(models.Model):

_name = 'lost.time.details'

_description = "Lost Time Details"

odometer_id = fields.Many2one('production.odometer', 'Production Odometer')

lost_time = fields.Char('Lost Time Activity')

start_time = fields.Float('Start Time')

end_time = fields.Float('End Time')

<field name="lost_time_ids" nolabel="1" attrs="{'readonly': [('state', '=', 'confirm')]}">

<tree editable="bottom">

<field name="lost_time"/>

<field name="start_time" widget="float_time"/>

<field name="end_time" widget="float_time"/>

</tree>

</field>

function for subtracting float_time fields:

@api.multi

def calc_button(self):

lost_time = 0.0

for line in self.lost_time_ids:

lost_time += line.end_time - line.start_time

line.lost_time = str(lost_time)

return

Beste antwoord

Hi,

You can try this code,

difference_time = self.end_time - self.start_time
duration = '{0:02.0f}:{1:02.0f}'.format(*divmod(difference_time * 60, 60))

In the duration variable you will get it correctly.

Thanks

Avatar
Annuleer
Auteur

Thanks It worked.

Gerelateerde posts Antwoorden Weergaven Activiteit
5
okt. 24
12579
3
okt. 24
34212
1
apr. 20
15999
1
sep. 19
13172
2
jul. 19
3804