← Back to team overview

openerp-india team mailing list archive

[Bug 1020977] [NEW] [6.1] workorder planned end date calculated incorrectly (timezone issue)

 

Public bug reported:

OpenERP 6.1
Ubuntu 10.04

Steps to reproduce:
- create OpenERP 6.1 database with mrp, mrp_operations modules installed with demo data
- client timezone UTC +0200
- create a manufacturing order with a workorder for the Assembly Workshop
- the Assembly Workshop has a Working Time of 45 hrs/week (monday-friday 2 shifts: morning 08:00-12:00, evening 13:00-18:00)
- set workorder Nbr of hours to 03:00
- set workorder Scheduled Date to start at 08:00 on a weekday

Observed behaviour:
- End Date (planned) = 13:00

Expected behaviour:
- End Date (planned) = 11:00 (08:00 for morning start time + 03:00 production hours)

Suspected cause:
The planned end date is calculated by the interval_get_multi method of the resource_calendar object. This method calculates uses the planned start date in UTC  and the Working Time to calculate a planned end date. This returned planned end date is still in UTC. When presenting the planned end date on screen the planned end date is converted to UTC +0200. The bug is caused by the assumption that the Working Time is in UTC. This is not the case. The Working Time is in localtime, which for me is UTC +0200. I think the interval_get_multi method of the resource_calendar object should somehow consider the local timezone in the scheduled end date calculations.

Note that when working in UTC -0500 my example would lead to a planned
end date of 06:00 while the planned start is 08:00!

Jeroen Mollers

** Affects: openobject-addons
     Importance: Undecided
         Status: New

** Description changed:

  OpenERP 6.1
  Ubuntu 10.04
  
  Steps to reproduce:
  - create OpenERP 6.1 database with mrp, mrp_operations modules installed with demo data
  - client timezone UTC +0200
  - create a manufacturing order with a workorder for the Assembly Workshop
  - the Assembly Workshop has a Working Time of 45 hrs/week (monday-friday 2 shifts: morning 08:00-12:00, evening 13:00-18:00)
  - set workorder Nbr of hours to 03:00
  - set workorder Scheduled Date to start at 08:00 on a weekday
  
  Observed behaviour:
- - End Date (planned) = 11:00 (08:00 for morning start time + 03:00 production hours)
+ - End Date (planned) = 13:00
  
  Expected behaviour:
- - End Date (planned) = 13:00
+ - End Date (planned) = 11:00 (08:00 for morning start time + 03:00 production hours)
  
  Suspected cause:
  The planned end date is calculated by the interval_get_multi method of the resource_calendar object. This method calculates uses the planned start date in UTC  and the Working Time to calculate a planned end date. This returned planned end date is still in UTC. When presenting the planned end date on screen the planned end date is converted to UTC +0200. The bug is caused by the assumption that the Working Time is in UTC. This is not the case. The Working Time is in localtime, which for me is UTC +0200. I think the interval_get_multi method of the resource_calendar object should somehow consider the local timezone in the scheduled end date calculations.
  
  Note that when working in UTC -0500 my example would lead to a planned
  end date of 06:00 while the planned start is 08:00!
  
  Jeroen Mollers

** Summary changed:

- [6.1] workorder planned end date calculated incorrectly
+ [6.1] workorder planned end date calculated incorrectly (timezone issue)

-- 
You received this bug notification because you are a member of OpenERP
Indian Team, which is subscribed to OpenERP Addons.
https://bugs.launchpad.net/bugs/1020977

Title:
  [6.1] workorder planned end date calculated incorrectly (timezone
  issue)

Status in OpenERP Addons (modules):
  New

Bug description:
  OpenERP 6.1
  Ubuntu 10.04

  Steps to reproduce:
  - create OpenERP 6.1 database with mrp, mrp_operations modules installed with demo data
  - client timezone UTC +0200
  - create a manufacturing order with a workorder for the Assembly Workshop
  - the Assembly Workshop has a Working Time of 45 hrs/week (monday-friday 2 shifts: morning 08:00-12:00, evening 13:00-18:00)
  - set workorder Nbr of hours to 03:00
  - set workorder Scheduled Date to start at 08:00 on a weekday

  Observed behaviour:
  - End Date (planned) = 13:00

  Expected behaviour:
  - End Date (planned) = 11:00 (08:00 for morning start time + 03:00 production hours)

  Suspected cause:
  The planned end date is calculated by the interval_get_multi method of the resource_calendar object. This method calculates uses the planned start date in UTC  and the Working Time to calculate a planned end date. This returned planned end date is still in UTC. When presenting the planned end date on screen the planned end date is converted to UTC +0200. The bug is caused by the assumption that the Working Time is in UTC. This is not the case. The Working Time is in localtime, which for me is UTC +0200. I think the interval_get_multi method of the resource_calendar object should somehow consider the local timezone in the scheduled end date calculations.

  Note that when working in UTC -0500 my example would lead to a planned
  end date of 06:00 while the planned start is 08:00!

  Jeroen Mollers

To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/1020977/+subscriptions


Follow ups

References