Commit Graph
192 Commits
Author SHA1 Message Date
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
Christophe Simonis 60c9cac46b [MERGE] forward port of branch saas-9 up to 87a01c7 2016-02-17 18:07:21 +01:00
Christophe Simonis a6cf37e930 [MERGE] forward port of branch saas-6 up to 0a1362a 2016-02-15 14:46:27 +01:00
Denis Ledoux fcd10521e9 [MERGE] forward port of branch 8.0 up to 5401345 2016-02-15 11:37:27 +01:00
Denis Ledoux 5401345ce2 [MERGE] forward port of branch 7.0 up to ce38582 2016-02-15 11:36:02 +01:00
Denis Ledoux ce38582907 [FIX] mrp: update production quantity wizard factor
Use the same factor than the one used when
computing the products to consume at confirm.

Before, the quantity of products to consume was wrong
when using a different unit of measure in the BOM
than in the production order.

e.g.
 - BoM defined as:
   - 1 dozen of milk
   - BoM lines: 1 cow
 - Production order:
   - 1 unit of milk
   - BoM: The above one
At confirm, the quantity to consume is 0,083 cow (1 cow / 12, this is correct)
But, when updating the quantity to 2.0,
it updated the quantity of cow to 24.0, instead of 0,16.

opw-669447
2016-02-15 11:34:16 +01:00
Yannick Tivisse d5704262bd [IMP] Stock: Several improvement on locations and warehouses settings
- Separate group_stock_multiple_locations into 2 groups:
  o group_stock_multi_locations
  o group_stock_multi_warehouses
- Add a selection fields to manage the 3 levels of warehouses management complexity:
  o Manage 1 WH with 1 location
  o Manage 1 WH with multi locations
  o Manage multi WHs with multi locations
- Display the menuitems and fields accordingly
- On a company creation : Create a related Warehouse
- stock.location : Add a helper on the parent location
- stock.warehouse : Add a helper on the company_id field
2016-02-04 11:19:09 +01:00
Nicolas Martinelli 055f47ef41 [FIX] mrp: wizard
Removes unnecessary separator and newline which prevent the product
quantity to be displayed.

opw-658281
2015-12-10 10:22:36 +01:00
Olivier Dony af4a60b941 [MERGE] Forward-port 8.0 up to rev. 26d0fe6d9f 2015-09-30 02:53:59 +02:00
Stefan Rijnhart 5f79cbd029 [FIX] mrp: display lot_id in production wizard if full tracking
Show lot_id on production wizard
if product is fully tracked
(but not marked specifically for production tracking

Closes #4223
2015-09-28 14:19:57 +02:00
Nicolas Martinelli 3d9e2a6cb7 [IMP] mrp*: adaptation due to the new Sale module
Major changes:
- No use of UoS anymore

Reason: complete rewrite of the Sale module.

Responsible: fp, dbo, nim
2015-08-27 18:10:19 +02:00
Ronak Baxi 393f136509 [IMP] *: Uniformize all modal footers
The main button has classnames btn btn-primary.
Other buttons have classnames btn btn-default.
No more 'or' between the buttons.
2015-08-19 08:10:45 +02:00
Christophe Simonis 2cf91d16a5 [MERGE] forward port of branch saas-6 up to 63e92cb 2015-07-22 16:17:54 +02:00
Christophe Simonis 63e92cbc96 [MERGE] forward port of branch 8.0 up to 9abf868 2015-07-22 14:09:00 +02:00
Jay Patel 521c21bf7f [IMP] MRP: Press green arrow to consume product qty more than before consumed create new line
Avoid creating negative stock move and do basically the same
as would have been done when using the Produce wizard
2015-07-16 18:06:46 +02:00
Josse Colpaert d2b4b3909e [IMP] stock: Improve lots with serial numbers, define lot tracking by picking type and convert stock with lot False to a lot when necessary
Instead of having only outgoing, manufacturing, incoming, all... traceability on the product,
we can define on the product if there is no tracking, lot tracking or unique serial number tracking.
On the picking type we can define whether we will only create lots for the picking type or use existing lots.

The lots are required when the product and the picking type demand it.

The option for serial number will check that each piece (quantity 1) has its
own serial number.

A lot splitting wizard is added on the pack operations in the picking form.

We want to be able to handle the case where we receive a lot of iPads e.g. and we
only assign a serial number when the product is delivered.  For this, when the product is
delivered, we see that we only have products with no lots.  When we see that we take something
without lot for something that needed one, we assign the lot to that piece of stock.

For negative quants: a positive quant with no lot can reconcile with a negative quant with/without lot,
a positive quant with lot, will preferably reconcile with a negative quant with the same lot, afterwards
with that without lot.
2015-07-03 17:50:35 +02:00
Olivier Dony 0bd4545348 [LEGAL] Use global LICENSE/COPYRIGHT files, remove boilerplate text
- Preserved explicit 3rd-party copyright notices
- Explicit boilerplate should not be necessary - copyright law applies
  automatically in all countries thanks to Berne Convention + WTO rules,
  and a reference to the applicable license is clear enough.
2015-06-02 03:16:04 +02:00
Christophe Simonis 0a65947499 [MERGE] forward port of branch saas-6 up to 648a558 2015-03-10 19:25:43 +01:00
fka-odoo 4da3faa5b7 [REM] base,mrp: remove deprecated XSL reports 2015-03-09 21:52:32 +01:00
Christophe Simonis 449f601f8e [MERGE] forward port of branch 8.0 up to 948befb 2015-03-09 12:40:57 +01:00
Denis Ledoux 948befbb34 [FIX] mrp: set decimal precsion on qty field for produce wizard
In manufacturing bom lines, digits_compute is set
to the precision 'Product Unit of Measure'.

It should be the case as well in the produce wizard,
otherwise you won't be able to change the quantity
within this wizard to the according product quantity precision

opw-629657
2015-03-09 12:23:14 +01:00
Simon Lejeune 07849e43fc [REM] mrp: remove workcenter load report 2015-01-21 15:22:23 +01:00
Goffin Simon 0fd773a486 [IMP] Cleanup and refactoring of exception handling
Unify and refactor exception handling in framework and addons.

The generic `except_osv` is now deprecated, and replaced by more specialized exception subtypes:
 - `UserError` (renamed from Warning, as it conflicts with the built-in `Warning`) raised when a non-technical error occurs during a business operation. It could be a missing information in the data provided by the user, or a misconfiguration.
 - `AccessError`: raised when any operation is denied because the user conducting it does not have the required access rights.
 - `AccessDenied`: raised when an operation that requires authenticated access is attempted via an unauthenticated request.
 - `MissingError`: raised when an operation is attempted on a record that does not exist.
 - `ValidationError`: raised when an operation violates a SQL or Python constraint.
 - All other exceptions are internal errors due to a system problem or bug, and raised untouched to the client-side, which should display a traceback.

All exceptions take a single message argument.

The `test_exceptions` module has been updated to showcase both new and old (deprecated) exceptions.

A great many old `except_osv` had a useless title with "Error!" or "Warning", those have been removed, as this is handled by the client-side widget that displays the messages.

This commit introduces a more consistent policy for logging errors and warnings:
 - All messages that do not require administrator attention should be logged at INFO level or lower. This includes all errors that are notified to the user in a friendly manner, even for access right problems or validation errors during business operations.
 - All messages that indicate a likely misconfiguration or malicious use by the users should be logged at WARNING level, as they typically require administrator attention.
 - All other unhandled internal errors cannot typically be handled by the user and should be logged at ERROR or higher level, as they require immediate administrator attention.
2015-01-16 17:15:18 +01:00
Leonardo Donelli 4a0b13ed92 [REF] remove vim modelines and resulting trailing blank lines
Let 2015 be a year without modelines!
cf #4174
2014-12-31 15:52:13 +01:00
Géry Debongnie 1f5a323f2f [FIX] add missing descriptions to many fields 2014-10-31 13:57:16 +01:00
Josse Colpaert 884a8ad4a5 [IMP] UoM corrections + Adapt tables in stock doc
[IMP] Float_compare before splitting moves in mrp
2014-09-30 10:31:33 +02:00
Josse Colpaert 25d2ed6d4b [IMP] Update module descriptions of procurement and product_extended + _bom_find and properties
Module description of procurement was deprecated (talking about mrp, ...) and in product_extended
it described things not implemented in the module.

In _bom_find, we passed a UoM which was not used in Saas-4 and it would not be logical that you
need to select a BoM that matches the UoM, so I removed it.

In the demo data, there was still a push rule which triggered a move from output to pack.  The copy=False
is correct for production_id when you would have these push rules.

For the properties: we want to allow to take a bom which has no properties, but only when there is no other
BoM matching the properties we pass.

Update module descriptions

[IMP] production_id copy + no round

[IMP] _bom_find without uom, property correction
2014-09-30 10:31:33 +02:00
Josse Colpaert 3dcb020373 [IMP] Change documentation + new action_consume/qty/origin corrections
Simplify the action_consume of the consumption lines after the corrections
by Kevin Wang.  Also the UoMs are revised as the action_consume uses the default UoM
of the product.

We have to avoid circular boms where a child bom should not contain the product that
represents the parent bom, but it is possible for example to use another product of the parent bom in
the child bom.

As the consume line move has no procurement rule, its origin will have no description.  So, when there is
none it will also check the description of the previous move (when passed to procurement for example) This way
the chained moves or purchase order for example will have the MO-number as origin and not nothing.

[IMP] Change assignation

[IMP] UoM changes continuation

[IMP] Make sure we can use 2 times the same product in a BoM

[IMP] Source document for consume lines to procurement
2014-09-30 10:31:33 +02:00
Josse Colpaert ae2eb43e30 [IMP] Implement comments on pull request 2014-09-12 13:49:42 +02:00
Josse Colpaert 6b63d40145 [MERGE] Merge from master and resolve conflict 2014-06-17 16:23:44 +02:00
Josse Colpaert f71addb14d [IMP] no label on consume lines in wizard 2014-06-17 11:47:53 +02:00
Fabien Meghazi faa09da325 Removed version="7.0" from form views 2014-06-12 09:09:59 +02:00
Josse Colpaert ac943b0307 [IMP] Change mrp lots to depend on lots and not on packing 2014-06-03 09:21:57 +02:00
Christophe Matthieu 43977deb71 [IMP] product: refactoring of product variant. The main view became the view of product template and the product product (or product variant) are created with the variant values combinaison. Bom is splitted into bom and bom line and can use the variant combinaison. 2014-05-27 09:42:52 +02:00
Olivier Dony 083108a624 [IMP] delivery,stock,mrp: minor cleanup/spellchecking/nit-picking while reviewing
bzr revid: odo@openerp.com-20140507165951-th4iqsrp6l67dvve
2014-05-07 18:59:51 +02:00
Quentin (OpenERP) c4ea48fd68 [FIX] mrp: produced lines weren't linked to the MO + used the quantities entered in wizard as real quantities to consume
bzr revid: qdp-launchpad@openerp.com-20140423150503-n14hk4cvgdxvlrjp
2014-04-23 17:05:03 +02:00
Quentin (OpenERP) 0afb7076d4 [REF] mrp, stock: refactoring made during code review
bzr revid: qdp-launchpad@openerp.com-20140205104324-5h5hu0fv71omhigf
2014-02-05 11:43:24 +01:00
Quentin (OpenERP) 2c101e9432 [REF] mrp: code refactoring + removal of a useless and confusing part of a yaml test
bzr revid: qdp-launchpad@openerp.com-20140205093411-2xqnn5l3gyw6hmw5
2014-02-05 10:34:11 +01:00
Josse Colpaert 7848349e53 [ADD] Add files now needed in mrp instead of stock
bzr revid: jco@openerp.com-20140129085303-war5qlk5pqkf3gfg
2014-01-29 09:53:03 +01:00
Josse Colpaert 8ec0968f8d [WIP] Reorganise action_consume wizard to start from mrp and clean op inventory wizards
bzr revid: jco@openerp.com-20140128151834-ni90kny7b2y6sr36
2014-01-28 16:18:34 +01:00
Josse Colpaert da22ca89bb [FIX] Make sure the tests for mrp.product.produce do the onchange for consume_lines
bzr revid: jco@openerp.com-20140122092921-rjgehregzpqfreyg
2014-01-22 10:29:21 +01:00
Josse Colpaert 72b0c03b96 [IMP] Change the action_produce to be able to take into account wizard or not
bzr revid: jco@openerp.com-20140121133909-0xzgqmzhs4mhgqtp
2014-01-21 14:39:09 +01:00
Josse Colpaert 056bfc00a9 [IMP] Make sure the wizard does not take negative quants and refactor a little bit not to have duplicate code
bzr revid: jco@openerp.com-20140121104051-87ihs7fnz72i0b9z
2014-01-21 11:40:51 +01:00
Josse Colpaert 24f6ed8973 [WIP] Give warnings when not possible to do traceability and needed, group by quants
bzr revid: jco@openerp.com-20140120162828-6xgxshtkc44tlesi
2014-01-20 17:28:28 +01:00
Josse Colpaert b50247109c [IMP] Basic version working with lots
bzr revid: jco@openerp.com-20140117164232-8gu0bb8qbbk67yrx
2014-01-17 17:42:32 +01:00
Josse Colpaert 338013803d [WIP] Extending wizard with consume lines
bzr revid: jco@openerp.com-20140116174800-kap083m5jvacsbh6
2014-01-16 18:48:00 +01:00
Josse Colpaert 9494290cb1 [FIX] Try to fix mrp tests and mrp
bzr revid: jco@openerp.com-20130918135612-n8d1qqbxh0rbgtcw
2013-09-18 15:56:12 +02:00
Quentin (OpenERP) a992a789e7 [MERGE] fix: setting product_uom_qty instead of product_qty
bzr revid: qdp-launchpad@openerp.com-20130806155211-jjd6q1hocjhgccaf
2013-08-06 17:52:11 +02:00