Commit Graph
29 Commits
Author SHA1 Message Date
Josse Colpaert 7a65ec28b9 [FIX] mrp: extra moves set correct quantity_done and product_uom_qty
Before, when we consumed 3 instead of 1 in a production order, it
gave a traceback.  It was because it created moves
with negative quantities.  So, something was wrong with
the quantity_done/product_uom_qty set when creating the extra moves

When creating an extra move because of the procurement,
but you still need to split afterwards (e.g. procurement 10, production order 12, you do 11),
then you should have a difference between quantity_done and product_uom_qty
in the extra move and not try to change it on the original.
That way, we make sure we pass the correct quantities.
2016-10-27 17:34:43 +02:00
Christophe Simonis dabf82870a [MERGE] forward port branch saas-11 up to 25e0b25 2016-10-24 13:07:46 +02:00
Josse Colpaert 153a6d0814 [FIX] mrp: correct interpretation of explode's quantity parameter
In previous versions, the quantity passed to the bom_explode was the number
of times you needed to count the BoM.  If the BoM was for 2 dozens and you pass
48 units, 2 was passed to the bom_explode method.  We are now doing the same
for the explode method and we check it is called this way everywhere.
2016-09-28 12:38:13 +02:00
Josse Colpaert fbab021a9b [FIX] mrp: extra move should split move lots also and take into account procurement
When you produce or consume more than foreseen in a production order,
the system creates extra moves.  Before, in case of tracking, it did this without
transferring the stock.move.lots resulting in a wrong stock.  That is why now,
when we split moves, we also split the stock.move.lots

For the finished move, it is also important to split between the quantities
of the original procurement and what is extra as the extra might use a push rule e.g.
2016-09-28 12:38:13 +02:00
Josse Colpaert 24a16f5db5 [FIX] mrp, mrp_byproduct: updating the quantity of production orders fixes
When updating quantity, it should take use a similar
method as for generating the moves, but with
the quantity already produced (and posted) deduced.
The parameters for these method needed to be changed.

When all the moves are posted,
we should create the necessary extra moves.
If the quantity is put back to the quantity posted, it
might also need to delete moves.
In byproduct, it should take into account the subproduct factor.

When the quantity produced  on the work orders has reached the quantity to do,
it should not allow anymore to use the "Done" button on work orders, but
rather use the Finish button instead.  With the Update button on the manufacturing order
it is possible to do more.
2016-09-28 12:38:13 +02:00
Josse Colpaert 3e95e4e58e [IMP] mrp: help message for the explaining the Next Operation field on the routing 2016-09-28 12:38:13 +02:00
Josse Colpaert 0239202be4 [FIX] mrp: problem with blocking times starting at server start time
The default of the date_start on the time records was a
result of the function fields.Datetime.now instead of the function itself
resulting in the start of each blocking time as the start of the server
2016-09-28 12:38:13 +02:00
Josse Colpaert ca7b15b58c [FIX] mrp: typo Produced Qty -> Quantity To Produce 2016-09-28 12:38:13 +02:00
Josse Colpaert 0efc835fa9 [FIX] mrp: correct workorder qty_producing onchange
When changing the quantity being produced on a work order and
serial numbers are consumed, we need to delete or add lines
for every serial number in function of the quantity through the onchange.

We changed the quantity_done to be set to quantity by default (automatically)
as otherwise we forgot to set it.  But for the onchange, it means
we need to take it into account otherwise the number of records
would not be diminished.
2016-09-28 12:38:13 +02:00
Josse Colpaert 777ea73f23 [FIX] mrp: make sure we see in mo from stat button when only one (was taking 2 domains) 2016-09-28 12:38:13 +02:00
Haresh Shyara 841c1c3adb [FIX] mrp:workcenter: blocked and productive time correction
The labels of the fields say that they store hours, but actually they store minutes. Correct the code to store hours.
Add digits to fload field for a better display in the webclient
2016-09-28 12:38:13 +02:00
Josse Colpaert 5043d77128 [IMP] mrp: mo view: date_planned_start, user_id and origin fields should be editable
date_planned_start should also be Start Deadline instead of Expected Start Date.
We don't want the Expected dates to function as a planning tool, but as
a priority for the planning of the workorders.
2016-09-28 12:38:13 +02:00
Josse Colpaert 31b3073d4b [IMP] stock,mrp: origin of scrap move
If the user has not filled in the origin in the scrap object,
we set it to be its associated picking or production order if any.
2016-09-28 12:38:13 +02:00
Josse Colpaert ea954e4a92 [IMP] mrp: active_move_lot_ids needed on stock_move as well, not just on workorder
As you open the lots in a raw material move in a production order,
you should not see the temporary stock move lots from the work order.
Also the quantity_done should not take into account those.  They will
when they press 'Done' on the workorder.

When posting inventory, the temporary stock move lots on the workorder,
should be transferred to the split move.

For splitting and unreserving, some optimizations are done.
2016-09-01 15:34:21 +02:00
Josse Colpaert 104ef28a8d [IMP] mrp: unbuild should only show lot when product does lot/serial number tracking 2016-08-30 14:16:09 +02:00
Josse Colpaert 17be15fd61 [IMP] mrp: routing of phantom boms in bom
When the routing of the phantom bom is the same as the parent BoM,
the phantom BoM should not recreate the work orders, but use the same
work orders as the parent BoM.  That way, you can create one master
routing and the "consumed in operation" of the phantom bom can be used
linking to the master routing.

If the phantom bom has no routing or the same, it can also use
the "consumed in operation" of his parent bom line if none is defined.
2016-08-30 13:59:53 +02:00
Josse Colpaert d985fa796e [IMP] mrp: Put back field 'priority' to avoid migration problems 2016-08-30 13:59:53 +02:00
Fabien Pinckaers 8765353fa7 [FIX] mrp: allows to select the BOM on workorder messages 2016-08-26 11:48:06 +02:00
Fabien Pinckaers 2b2351a644 [FIX] mrp: empty list message on product attachments 2016-08-26 11:48:06 +02:00
Josse Colpaert 4f9af6838f [FIX] mrp: use unit_factor when generating lots in work orders and make sure to generate lots when necessary
When (re)generating the stock.move.lots in the workorder,
it should use the unit_factor on the move like everywhere else.
This makes sure we do well with the explosion of phantom boms too.

It is also important that if there is no operation_id given
explicitly in the "consumed in operation" on the bom line,
that it still generates the necessary stock.move.lots in the last work order.

Also, in the work order it is better to set the quantities done already.
That way we don't forget to consume them.
2016-08-26 11:45:44 +02:00
Josse Colpaert c3665fb5c9 [FIX] mrp_mps, product: we need to be able to calculate stock in the past for the MPS
When calculating the stock quantity fields, we can put a
from/to_date in the context.  This should work in the past too.
We see the to_date as the date in the past to calculate and calculate
backwards from the stock now to the date in the past.
This is done by doing an extra read_group on the stock moves,
with a similar domain except that it takes the moves done from
date_to.
2016-08-19 17:16:18 +02:00
Thibault Delavallée 838a6f2000 [FIX] varioius: fix digits_compute attribute changed to digits in new API 2016-08-09 11:00:10 +02:00
Josse Colpaert 415773505c [FIX] mrp: added recursion constraint on BoM and improved error message on bom explosion 2016-08-02 11:28:51 +02:00
Josse Colpaert a64deb4dd0 [IMP] mps: MPS module should not be an application, but a setting 2016-07-29 15:35:22 +02:00
Josse Colpaert 91e2dca945 [FIX] mrp: working_state should depend on time_ids when we just add one, OEE: efficiency -> effectiveness 2016-07-25 12:35:44 +02:00
cod-odoo 7dcb518567 [FIX] mrp: Fixed traceback on print BoM Structure and single method for work order counts 2016-07-07 10:11:51 +02:00
Josse Colpaert 2ddc35a530 [REF][NEWPIE] mrp: new MRP
This commit contains the core of the new MRP. It contains a whole refactoring
of the MRP application, with improved and new features, written in new API.
Among other here are the main manufacturing workflow improvements :

 - Picking type not only for pickings but also for manufacturing orders
 - Properties replaced by picking type
 - BoM can only be produced with its routing (no other)
 - Either produce without routing with only production orders, or produce with
   routing
 - By default, there is an order in the work orders (serially), but you can
   override it to be able to work in parallel
 - Time clocking on work orders and block time on work centers with reporting
   on OEE, performance, losses, ...
 - Real-time adaptation of timings on operations
 - Lots/serial numbers can be inputted like in the pickings on manufacturing
   orders.  It is also possible to input them in the work orders.
 - Material availability independent of production order state (possibility to
   start production when only part of it is there)
 - Work sheets on work orders
 - Put messages on work orders to make your workers pay attention to something
 - Full traceability link to see for each produced piece of stock, the
   consumed pieces, ...
 - Separate scrap object (a scrap is not done based on an original move
   anymore)
 - Separate unbuild system (if you want to unbuild into its original
   components)

Thanks to all people that helped during this development, notably but not
limited to Chirag A Dodiya (cod@odoo.com), Gaurav Panchal (gan@odoo.com),
Jignesh Rathod (jir@odoo.com), Mansi Trivedi (mtr@odoo.com), Pariket Trivedi
(ptr@odoo.com).
2016-07-04 16:22:37 +02:00
Dhaval Panchal 30850f99f8 [MIGR] mrp: new API except mrp_production
MRP module is migrated to the new API. It excludes mrp models that will change
quit a lot during the new MRP conversion. Actually most of the code is not
migrated, but at least side models and their methods are already migrated.
This should lessen the diff when writing the new MRP.
2016-07-04 16:22:35 +02:00
Dhaval Panchal c8a39e734f [MOV] mrp: move and split
Split files and move them according to the new API guidelines. Containing

 - mrp splitted into its main models and files
 - stock code moved into its own models and files
 - various renaming
2016-07-04 16:22:35 +02:00