Commit Graph
4112 Commits
Author SHA1 Message Date
Odoo Translation Bot e0ff2840a5 [I18N] Update translation terms from Transifex 2017-04-30 04:31:05 +02:00
Xavier Morel 0550da4d88 [FIX] mrp: public/rpc methods not returning any value
XML-RPC can't serialize None, as a result methods callable over RPC
must return something (True, False, an actual value) otherwise an
error is generated when their result is serialized and sent back to
the client. It happens that JSON-RPC has different limitations and can
serialize None, so MRP had multiple button/action methods which could
be called over JSON-RPC but would break when called in XML-RPC for no
reason.

Fix them by returning `True` or result of `write`.

OPW-728844
2017-04-25 15:41:31 +02:00
Odoo Translation Bot 07c563e075 [I18N] Update translation terms from Transifex 2017-04-23 04:30:51 +02:00
Pierre Masereel 93714790c1 [FIX] stock,mrp: copy move when push rules
When you have push rules on move having a 'production_id', the
'production_id' is copied on the generated moves. So it generate a
traceback when we check the tracking method of 'product_id' on
produce_move.

This issue is caused because we get multiple produce_move instead of
one.

To fix this issue, we don't copy the production_id anymore on moves
generated by push rules.
2017-04-19 14:44:22 +02:00
Odoo Translation Bot c043db5e3b [I18N] Update translation terms from Transifex 2017-04-16 04:29:59 +02:00
Nicolas Martinelli 471115b06a [FIX] mrp: lose traceability
- Create 3 products (A, B & C) with tracking set to 'serial'
- Create a BOM: A consumes 1 unit of B and C
- Create a MO for A, create the lot A1 for the finished product
- Create another MO for A, use the existing lot A1 for the finished
  product
- Try to mark the MO as done => you get an error
- In the finished products tab, change manually the lot, for example by
  creating A2
- Mark the MO as done
- Open the Upstream Traceability => under the MO, there is nothing, the
  traceability is lost.

The `check_finished_move_lots` method takes care of setting the
`lot_produced_id` on the `move_raw_ids`. However, when changing manually
the finished product lot, this modification is not propagated.
Therefore, when posting the inventory (`post_inventory`), the line:
```
move_raw.move_lot_ids.filtered(lambda x: x.lot_produced_id.id == lot)...
```
doesn't return any lot. Consequently, `consumed_quant_ids` is empty, and
the traceability is lost.

opw-724944
2017-04-13 12:30:42 +02:00
Odoo Translation Bot 69b45530dc [I18N] Update translation terms from Transifex 2017-04-11 10:37:54 +02:00
Nicolas Martinelli 48aefe61f0 [FIX] mrp: warning for lot
Complement of commit 85132f68d2

opw-727679
2017-04-06 08:35:43 +02:00
Wolfgang Taferner bf781cf740 [FIX] mrp: BoM count detection in case it is a single variant
In case a product is a single variant we should not leave it with a BoM
of zero as soon there is a BoM for its template. This would for example
hide the `compute_price` object button which relies on the `bom_count`to
be visible.

BoM is not found for a single variant product and compute price not
possible from the `product.product` view although it is implemented
actually there.

Closes #16237
2017-04-05 12:00:39 +02:00
Nicolas Martinelli 85132f68d2 [FIX] mrp: warning for lot
The constraint should only check for move lots with a lot number already
filled in. Indeed, in case we use work orders, we can potentially create
move lots without S/N, and fill in the S/N later.

opw-727679
2017-04-05 09:47:54 +02:00
Odoo Translation Bot 48bf1bc863 [I18N] Update translation terms from Transifex 2017-04-02 04:32:01 +02:00
Nicolas Martinelli ee8fbcbeae [FIX] mrp: same unique SN
- Create a product with unique SN, create a BOM for this product
- Create a MO to produce 2 units
- Produce the first unit, create a lot number
- Produce the second unit, use the previously created lot number

Nothing prevents the user to do this. However, the user won't be able to
set the MO as "Done", but it is better to prevent the issue as soon as
possible.

opw-724944
2017-03-27 18:13:26 +02:00
Nicolas Martinelli 92d25e7f08 [FIX] mrp: BOM count
- Create a product with 2 variants
- Create a BOM specific for each variant
- Go in the product variant page

the stat button indicates 2 BOMs instead of one.

opw-725126
2017-03-27 08:31:51 +02:00
Odoo Translation Bot a18c453dd5 [I18N] Update translation terms from Transifex 2017-03-26 04:30:35 +02:00
Nicolas Martinelli 906bde20c8 [FIX] mrp: "Unreserve" visibility
- Create a MO, components needed are 1 unit of Prod A and 1 unit of Prod
  B.
- Click on "Check Availability"

The button "Unreserve" does not appear unless all components are
available.

opw-724940
2017-03-24 15:51:42 +01:00
David Tran bfb2771d63 [FIX] mrp: mrp.message security
The security policy did not allow mrp manager to create mrp alert
message

Closes #14675
2017-03-23 10:27:06 +01:00
Goffin Simon b957fa76b7 [FIX] mrp: Wrong domain filter for mrp.production
When clicking on smart button "Manufacturing" for a variant, the action
"act_product_mrp_production" was called to apply the default filter on
product_id = active_id to select the right mrp.production. But the field
product_id was also called "Raw material" and a wrong domain was applied
each the action was triggered from a variant.

opw:725050
2017-03-21 16:44:08 +01:00
Odoo Translation Bot 6e363a5756 [I18N] Update translation terms from Transifex 2017-03-19 04:33:46 +01:00
Nicolas Martinelli 27f656a23e [FIX] mrp: duplicated raw materials
- Create Product A with a BOM which depends on a product with tracking
  "By Unique Serial Number" (Product B).
- Create a MO for Product A
- In the "Register lots" wizard, add two lines for "Product B", with the
  same serial number.

Nothing prevents the user to do it, even when the inventory is posted.

opw-709888
2017-03-15 14:01:04 +01:00
Odoo Translation Bot 00435d6384 [I18N] Update translation terms from Transifex 2017-03-12 04:31:45 +01:00
Denis Ledoux 04bb06fcb3 [FIX] mrp: Do not ask for to provide a lot if there is no finished product.
If `product_move` is an empty browse record
`produce_move.product_id.tracking` is `False`, not `none`,
and therefore
`produce_move.product_id.tracking != 'none'` returns True,
and it therefore asked to provide a lot for no reason.

opw-710748
2017-03-07 12:50:34 +01:00
Odoo Translation Bot c0f0d49542 [I18N] Update translation terms from Transifex 2017-03-05 04:32:11 +01:00
Odoo Translation Bot c224df04a5 [I18N] Update translation terms from Transifex 2017-02-26 04:31:11 +01:00
Odoo Translation Bot 2ab080bcae [I18N] Update translation terms from Transifex 2017-02-19 04:30:24 +01:00
Pratima Gupta c1c519a056 [FIX] mrp: attrs lot_id required in produce wizard
Commit b2cf955e made the lot_id always required in the
produce wizard of the manufacturing order (without work orders).

It should only be required when the finished product is tracked by lot.
2017-02-14 17:12:16 +01:00
Nicolas Martinelli b5b4979dd1 [FIX] mrp: cancel raw materials procurements
To reproduce:
- Create a product A with the routes Manufacturing & Make to Order
- Create a product B with the routes Make to Order & a custom one "Move
  from Shelf 1" (see screenshot for the configuration detail)
- Create a BoM for product A which contains the component product B
- Sell product A in a SO and confirm it
- It creates a delivery order for product A, a manufacturing order for
  Product A & B and an internal transfer for product B
- The move for product B from WH/Stock/Shelf 1 to WH/Stock is indeed
  linked to the move for product B from WH/Stock to Virtual Location/Production
- Cancel the sales order
- All stock moves are cancelled, except the one related to the internal
  transfer (WH/Stock/Shelf 1 to WH/Stock)

When the manufacturing order is canceled, raw material as well as
finished moves are canceled. All procurements with finished moves as
"Destination Move" are canceled as well. However, in this use case, a
procurement has been created for a raw material.

The solution is to cancel procurements for raw materials as well, so it
cancels the internal transfer.

opw-706100
2017-02-13 09:01:10 +01:00
Odoo Translation Bot 4669c103cc [I18N] Update translation terms from Transifex 2017-02-12 04:30:17 +01:00
Nicolas Martinelli 3f16ed9ef7 [FIX] mrp: crash onchange
In a MO, change a product in "Consumed Materials" by clicking on "Search
more...". It crashes.

Clicking on "Search more..." triggers the onchange since it empties the
line. Since there is no product on the line anymore, it crashes.

opw-705644
2017-02-09 15:51:08 +01:00
Nicolas Martinelli 88af7c9392 [FIX] mrp: expected date
When a MO is created with a deadline start date in the future, the
scheduled date of the stock move is still the creation date.

opw-707396
2017-02-07 17:18:28 +01:00
Odoo Translation Bot 17f3185994 [I18N] Update translation terms from Transifex
after API rate limit reached
2017-02-07 17:01:49 +01:00
Nicolas Martinelli c1047e9adf [FIX] mrp: quantity_available depends 2017-02-07 16:33:46 +01:00
Nicolas Martinelli 364036017b [FIX] mrp: UoM of quantity available
The field `quantity_available` can be computed in two different ways:
- equal to `product_uom_qty`
- equal to `reserved_availability`

However, `product_uom_qty` is in the UoM of the move, while
`reserved_availability` is in the UoM of the product.

We convert into the UoM of the move, because `quantity_available` is
supposed to be in the same UoM than `product_uom_qty` ("To Consume").

opw-704775
2017-02-07 16:33:46 +01:00
Goffin Simon b2cf9559d6 [FIX] mrp: The field "lot_id" is required in MRP Product Produce
When producing in the view "MRP Product Produce", if the field "lot_id"
is empty, it raised a UserError. So the field is required.

opw:705143
2017-02-07 16:19:10 +01:00
Odoo Translation Bot 6a7c05112b [I18N] Update translation terms from Transifex 2017-01-29 04:30:19 +01:00
Josse Colpaert 347f140fe6 [FIX] mrp: rounding issues and efficiency replacement
Before, when you would put a quantity in a BoM line that was not rounded
to its UoM (e.g. use 0.3 piece with rounding 1.0) it would not round this
quantity in the MO also (when exploding the BoM), and the user could also
enter a not rounded quantity himself for the quantity produced or
consumed.

The moves were split with the exact quantities, but the moves were validated
taking into account rounded quantities. This resulted in either moving 2
pieces instead of 1 (entering 0.7 or 1 piece) or raising an error telling
you can not process moves with 0 quantity (0.3 piece).

As product_efficiency and product_rounding was removed from the BoM/BoM
line in v10, if the rounding is correctly handled, the feature could work
like in v9, by e.g. putting 1.03 in the bom line (97% efficiency) and
rounding up when exploding the BoM (e.g. producing 10 pieces would put
it to 11).

When "producing", we round the produced qty to the product uom (it does
not make sense to produce 1.32 if your uom rounding is 1.0). The user
might now change the produced quantity, that's why we round-up when
validating the move: indeed, if the user slightly increase the produced
value (below the uom unit), it actually means he produced more.

This way, instead of not rounding anything and doing rounding behind the
scenes, leading to errors, we round everything and the user sees the
result directly.
2017-01-27 19:22:02 +01:00
Josse Colpaert 1bf2173240 [IMP] mrp: ensure_one in cal_price
We want to ensure not to mix the price calculation
of multiple MOs when posting inventory.
2017-01-25 12:11:55 +01:00
Odoo Translation Bot b164b56ebf [I18N] Update translation terms from Transifex
Interrupted during pull API limit rate
2017-01-23 16:44:17 +01:00
Goffin Simon 672d00f782 [FIX] mrp: Print BOM Structure
When using different UOM category in a BOM, printing the BOM structure
raised an error.

Linked to this commit:7fc1a3ca7b5b2616e9610b3e62975f6eb3c36267

opw:705471
2017-01-23 14:53:24 +01:00
Odoo Translation Bot c7679dde25 [I18N] Update translation terms from Transifex 2017-01-22 04:30:26 +01:00
Josse Colpaert c453358c88 [FIX] mrp: intermediate post inventory during a MO
When posting inventory during a manufacturing order,
all raw material and finished product moves are used,
also those done from a previous post inventory.

This is no problem for the moving of quants because
a filtering is done in the move_validate method,
but it is a problem for the price calculation in
mrp_account and for linking the consumed/produced_quant_ids
of the quants of the raw and finished moves.

Before this fix, it would calculate already consumed materials
a second time in the price of the finished products and would
link quants produced with previously consumed quants (and vice versa)
when doing a second post inventory.

We add a test to show the issue.
2017-01-19 16:21:27 +01:00
Josse Colpaert ffe13756f5 [FIX] mrp: manufacturing vignette in inventory dashboard
When clicking on the "manufacturing" vignette in the inventory
dashboard, the records were not filtered correctly (example: add a new
warehouse, a new "manufacturing" vignette appears for this warehouse in
the inventory dashboard, clicking on it would display the MO of all the
warehouses).

With this fix, as with the pickings, it will only show the count of MO
filtered to that specific picking type in the vignette, and clicking on
it will displayed the filtered ones.

We implementent the method of the compute field the same way the similar
method for the picking is implemented.

fixes #15008
2017-01-17 14:43:06 +01:00
Odoo Translation Bot 4d4e0484d1 [I18N] Update translation terms from Transifex 2017-01-15 04:31:44 +01:00
Josse Colpaert ff098a7ad4 [FIX] mrp: procurement creation for raw materials
According to the routes set on the products of the raw materials, a
procurement may have to be created for the consumed lines of the MO.

A route may also be set on a product category. Before this patch, we
only look for procurement rules for the routes defined on the products
and on its category, ignoring the inherited route of the parent category.

Fortunetaly, we have a computed field on the product model returning
all the routes from the current category, so we use this one in the
search for procurement rules.

A test has been added to show the failure.
2017-01-10 18:42:37 +01:00
Josse Colpaert 2f66e7abde [FIX] mrp: handle the case of empty routings
Before, when the routing of a production order was empty (no operations),
it got into an inconsistent state (you click on "plan" and nothing happens).

Empty routings were used before to do subcontracting or 2-steps inventeory
(we did not set any operations on the routing but we set a location).

Here, we change the related routing field on the production order into a
calculated field which becomes empty when the routing has no operations.
This way, the "produce" button is displayed (as for production orders
without routing) and working/

This is a temporary patch to workaround the issuein a stable release.
In master, we might remove the location on routing and place it on the
workcenters and put a constraint that does not allow an empty routing.
2017-01-10 18:37:53 +01:00
Josse Colpaert c2040da0ba [REF] mrp: inventory post when last work order is finished
Before this patch, the inventory was automatically posted when you click
on "done" on the last planned work order. This behavior was preventing
the user from correcting, for example, the consumed quantity on the raw
materials move on the manufacturing order if it was different from the
theoretical quantity. Note that finishing anyone but the last work order
still let you edit the consumed quantity. Same with changing the lot.

Now you have to click on "mark as done" on the manufacturing order to
post the inventory. Note that this is the same behavior when working
without work order (produce > mark as done will post).

We adapt the tests to reflect this change.
2017-01-10 15:32:14 +01:00
Ravi Gohil 23d07478e3 [FIX] mrp: fix migration issue using recordset instead of record in loop 2017-01-10 09:44:35 +01:00
Odoo Translation Bot 5f6e3f4686 [I18N] Update translation terms from Transifex 2017-01-09 12:00:30 +01:00
Odoo Translation Bot 854ab68902 [I18N] Update translation terms from Transifex 2017-01-08 04:43:31 +01:00
Martin Trigaux b7bad9dbc4 [I18N] followup of 5284c43be5
Previous commit was cleaning the orphan and fuzzy translations of all main translations.
This commit does the same for all regional languages (that are not on Transifex).
To keep these files small, keep only the translated strings.
Fixes #14937
2017-01-06 10:40:39 +01:00
Martin Trigaux 5284c43be5 [I18N] generate and clean orphan translations
Some languages were published on Transifex in v9 but no longer in v10.
These languages were still using the outdated .po files
In some of these po, there were some fuzzy translations that were incorrect
(e.g. 'POS Order %s' - 'Kassa ostud', missing '%s')
These were not erased as still using the old translations.
Regenerate a correct .po file based on the new .pot and remove fuzzy
translations.

Fixes similar issue than raised at #14937
2017-01-05 12:01:27 +01:00