Commit Graph

1226 Commits

Author SHA1 Message Date
Alexis de Lattre fc11b58239 [FIX] stock: service lines duplication when grouping DO invoices
This is possible that changes happen
during the loop in the multiple pickings:
an update in a picking could update another
picking. The browse must therefore be done
inside the loop to update the pickings with
the latest changes.

Fixes #4201
2015-09-25 12:25:52 +02:00
Laetitia Gangloff 607114ff00 [FIX] stock: Scheduled / Max. Expected date change on picking when changed in its moves
When changing the min_date / max_date in a move,
the date change wasn't propagated to its picking.

The use of store triggers is needed in such a case,
`store=True` isn't enough

Fixes #1862
Closes #3278
2015-08-17 18:04:13 +02:00
Nicolas Martinelli 9fa7624e25 [FIX] stock: onchange_quantity and onchange_uos_quantity use rounding
It is necessary to round the quantities with the appropriate precision. Indeed,
since onchange_quantity and onchange_uos_quantity trigger each other indirectly,
it is quite easy to fall in an infinite loop if the uom and uos precisions are
different.

Follows commit 6e346f0adb

opw-643651
2015-07-07 11:25:19 +02:00
Loïc BELLIER 34b9f43011 [FIX] stock: add location in context on prodlot search
To be consistant with the results of _get_stock. Otherwise search made on
stock_available may not display results with the same value than the search
criteria.
Fixes #3976
2015-07-06 14:41:56 +02:00
Nicolas Martinelli 6e346f0adb [FIX] stock: product_uos_qty must have the precision of Product UoS
If 'Product UoS' has a higher precision than 'Product Unit of Measure', the
method onchange_uos_quantity will be called over and over by an infinite loop
if 'product_uos_qty' doesn't have the sufficient number of decimals.

opw-643651
2015-07-03 16:42:34 +02:00
Nicolas Martinelli ba896aabe7 [FIX] stock: if cost_method of a product is 'average' do not round the currency conversion
This prevents rounding errors if product decimal precision is different from
currency precision.

Fixes #6547
opw-634390

Do not fowardport since already done in v8.0:
https://github.com/odoo/odoo/blob/8.0/addons/stock_account/stock_account.py#L310
2015-05-20 17:00:37 +02:00
Nicolas Martinelli 335a8afe79 [FIX] stock: remove state modifiers for field note in stock.picking
Remove the state modifiers for field note in stock.picking in order to have a
behavior which is consistent with sales orders or invoices.

opw-639956
2015-05-18 14:52:06 +02:00
Martin Trigaux 0b2bc27adc [FIX] stock: use unit of measure for manual receptions
When using the manual reception wizard, if a quantity in a different unit of
measure was set, the unit was ignored. opw 617336
2015-04-20 17:16:22 +02:00
rmu-odoo 3f7d168130 [FIX] sotck: correctly set reference on internal move
When creating a chained picking, the first move has no sequence, this is because
there is no sequence for stock.picking.internal.
Set the sequence before the chained move so that the sequences are in the right
order. opw 621261
2015-04-15 15:23:26 +02:00
Akash Balar 4ba72fbacb [FIX] stock: reset date_done field at duplication
As the state is reset to draft, makes no sense to keep date of completion.
2015-04-09 14:12:51 +02:00
Denis Ledoux 764be06f44 [FIX] stock: obvious distraction error of previous rev. 8ff7d299f5 2015-02-05 15:09:06 +01:00
Denis Ledoux 8ff7d299f5 [FIX] stock: picking, Set date of reception if not set by user previously
If the date_done field of the model stock.picking is already filled in
it means the user do wanted to have this date of reception date
instead of the moment when the user clicked the receive button.

opw-627219
2015-02-05 15:04:58 +01:00
Martin Trigaux f406847613 [FIX] delivery: reset delivery info on duplicate/backorder
The tracking reference and other delivery references are not relevant to
duplicated pickings. Overwrite copy to remove carrier_tracking_ref, volume and
number_of_packages.

Add fallback on stock.picking.in and out to use copy method of stock.picking.

For partial delivery, the duplicated picking is the delivered order and
the existing picking is the backorder of the delivery (why so much hate?).
This means we have to switch the delivery info between the backorder and
the delivered picking.
Combo opw 615593 and 618802
2015-01-14 17:44:37 +01:00
Julien Legros bfadcdd5d6 [FIX] stock: compute average price on action_done
The average price computation is now deduplicated and moved to
a separate function called in stock_move action_done.
This makes sure it is always called when a stock.move is
processed, even without going through the partial picking wizard.

Fixes #2991
Closes #3949
OPW-615491
2014-12-02 19:32:49 +01:00
Mohammad Alhashash 2461baa0dd [FIX] stock: prevent serial number deletion on stock.move
prodlot_id field may be required due to constraint `_check_tracking`.
When a stock.production.lot is deleted, the constraint on linked stock.move is
not checked. To avoid inconsistency, restrict the suppression.
To allow the modification of existing stock.move, remove the states attribute on
the field definition.

As removal of serial may impact the traceability, it makes sense on buisness
point of view to force the modification of previous stock.move, even if the
constraint would not have been violated.
The list of linked stock.move is present on the serial form view making
the operation easier.

Fixes #3560, lp:1176912
2014-11-27 12:47:41 +01:00
Martin Trigaux cf488682c8 [FIX] stock: multicompany reception
When a picking is confirmed, the generated account.move(.line) should take the
company, accounts, journals and period with the same company as the picking,
not the one of the current user.

This was problematic if a user in a company confirm a picking linked to
a purchase order done in another company.
For real time valuations, the generated accounting entries were mixing both
companies.

Fixes #3466
2014-11-14 12:24:40 +01:00
Mohammad Alhashash 8af9fdfa06 [FIX] stock: more tolerant copy method
Allow setting origin/backorder when copying new stock.picking
Fixes #379, lp:1098557
2014-10-31 14:09:25 +01:00
Martin Trigaux aed71f3962 [IMP] stock: avoid errors with picking without quantity
When a line is not present in the partial delivery wizard, computation variables are initialized with generic values (zero quantity, zero price,...). Instead of setting the uom to False, keep the quantity of the move.
This makes a difference only when the quantity of the move is 0. That means that the move will be marked as complete and can be processed.
This avoids trying to update the stock.move with a uom at False. opw 616844
2014-10-31 12:32:08 +01:00
Mohammad Alhashash 43db7267c5 [FIX] stock: UoS quantity in stock.picking
Implements the UoS TODO items on stock.picking.do_partial() to fix #1432.
Add a new method _compute_uos_qty() on product.product to computes
product's invoicing quantity in UoS from quantity in UoM.

The created invoice will use the product_uos of the stock.move, meaning keeping
the quantity specified on the partial picking and the unit of measure of the
original stock.move (e.g. recieving 1 dozen from a 12 unit picking should either
get uos=dozen, uos_qty=1 or uos=unit, uos_qty=12, not a mix of both)

Fixes #1432, opw 611479
2014-10-29 10:10:50 +01:00
Guewen Baconnier b5c8ced8ec [IMP] stock: Optimize stock_move.setlast_tracking()
When setlast_tracking is called on a large number of moves in a picking
(e.g.  when splitting moves in a picking), the time to complete grows
exponentially.  The reason is that it loops over all the moves of
a picking, even if it keeps only the last tracking.

The method now uses a search() with a limit so it doesn't need to browse
all the moves.

Added test to check the behaviour of setlast_tracking
Fixes #2448
2014-09-24 16:41:29 +02:00
Martin Trigaux 933d098e7d [IMP] stock: do not generate empty backorders
If every line of a partial delivery is at zero, do not generate empty backorders (opw 608680)
2014-09-24 15:16:38 +02:00
Martin Trigaux 6b9b948a3c [IMP] stock: display translated selection value in message
When a user tried to delete a done or canceled picking, the error messages used to display the key of the selection field ('done' or 'cancel') which was surprising in other languages than English. This patch takes the string value of the selection field, keeping the context to get the translated value (opw 613068)
2014-09-19 11:34:47 +02:00
Rifakat Husen bc4217ced2 [FIX] stock: onchange method should take the description
The onchange_product_id method used to only change the description if the stock.move is not saved yet. That does not make much sense.
opw 607347, bug lp:1314700
2014-08-06 08:54:31 +02:00
Lionel Sausin (Numérigraphe) dd4d72d710 [FIX] stock: partial deliveries switch on delivered picking
Users don't care for the backorder picking precisely because they can't process it, whereas they may have to do some more things on the picking they processed: invoice it, print delivery orders or transportation stickers..
Refresh the browse record after changing the name to avoid the need to rebrowse.
Fixes #1372
2014-07-29 16:15:20 +02:00
Denis Ledoux a5531c1d29 [FIX] stock: do not set user_id on prepare_invoice_group
The user_id is already set by the prepare_invoice method, which is called before the prepare_invoice_group (the user_id is already set, thus)
Besides, _prepare_invoice is overriden in sale_stock, to set the picking sale order salesman as user_id, and, without this correct, grouping invoicse by partner re-set the user_id to uid, which is wrong.
2014-07-24 20:42:21 +02:00
Hardik Ansodariya 9a20018166 [FIX] stock: allow same serial number for different products
Bug lp:1222289, opw 597639
2014-07-23 10:03:40 +02:00
Lionel Sausin (Numérigraphe) e80014eae3 [FIX] Fixes #273: avoid double-warning when changing the quantity of a stock move 2014-07-02 15:28:50 +02:00
Martin Trigaux 81ae6cdeeb [IMP] stock: when checking the state of the product, do not recompute the quantity on every move but only the one currently browsing (optiomisation) 2014-06-05 18:38:19 +02:00
Martin Trigaux 841e47a46a [FIX] stock: use correct vals in grouped invoice (opw 606535)
When creating a grouped invoice, the invoice_vals value is used to create the invoice line.
The value was not reset for grouped invoice and we reused the values of previous line.
2014-06-04 10:42:43 +02:00
Martin Trigaux 41c5ceb8eb [FIX] stock: clean previous commit 2014-05-27 17:56:30 +02:00
Anaël Closson f96a03247b [FIX] stock: auto_validate move not set to done when multiple parent move set to done at the same time - opw 607970 2014-05-22 09:26:40 +02:00
Martin Trigaux 37c41f9c78 [FIX] stock: when delivering a product in average cost, make sure the price_unit on the stock.move is up to date (opw 607272)
bzr revid: mat@openerp.com-20140429145332-s3c22w47aihdsfub
2014-04-29 16:53:32 +02:00
Martin Trigaux acc784cc99 [FIX] stock: pass the geven limit attribute in read_group call, courtesy of Guewen Baconnier
bzr revid: mat@openerp.com-20140423150621-rjiae83nxh5tqyau
2014-04-23 17:06:21 +02:00
Martin Trigaux f613774606 [MERGE] [FIX] stock: fix error when executing a read_group on stock.picking.in and out, courtesy of Yannick Vaucher (Camptocamp)
bzr revid: mat@openerp.com-20140423132552-hpnr2skutqranvsj
2014-04-23 15:25:52 +02:00
Martin Trigaux aac1a81999 [MERGE] [FIX] stock: when duplicating a stock.move, remove serial number and tracking information in every cases instead of specific to duplication of invocies, courtesy of Guewen Baconnier
bzr revid: mat@openerp.com-20140422140337-ymq7x133eicy6rpa
2014-04-22 16:03:37 +02:00
Yannick Vaucher 229f48bb2d Fix group by access error on stock.picking.in/out in multi company by ensuring the good ir rules are applied, this is done by calling read_group using stock.picking intead of stock.picking.in/out.
lp bug: https://launchpad.net/bugs/1309105 fixed

bzr revid: yannick.vaucher@camptocamp.com-20140417164953-7bjuggmhktv7mfwx
2014-04-17 18:49:53 +02:00
Denis Ledoux f658a55e4e [FIX] stock: before creating chained pickings, regroup moves by chained auto packing
Before, all moves issued from a same purchase order were put in the same chained picking, and, therefore, the moves were all treated with the same behavior (manually, automaticaly, ...)

bzr revid: dle@openerp.com-20140415160331-kzgib87qabvpc86p
2014-04-15 18:03:31 +02:00
Lionel Sausin 8ee8e3668c [FIX] Add missing context to some calls
lp bug: https://launchpad.net/bugs/1291874 fixed

bzr revid: ls@numerigraphe.com-20140313095054-3506f3tan8eyqc61
2014-03-13 10:50:54 +01:00
Guewen Baconnier 0ff86218f6 Use setdefault to allow a copy with one of this field with a value
bzr revid: guewen.baconnier@camptocamp.com-20140224090354-wcsnd4wzs91w553e
2014-02-24 10:03:54 +01:00
Guewen Baconnier 1daeaed376 [FIX] use copy_data rather than doing a write after that the moves are created
lp bug: https://launchpad.net/bugs/1281558 fixed

bzr revid: guewen.baconnier@camptocamp.com-20140218123211-3l3bvi3at1s91lfi
2014-02-18 13:32:11 +01:00
Denis Ledoux d69ecb8d8f [FIX] mrp, stock: avoid float rounding errors using float_compare
bzr revid: dle@openerp.com-20140122133822-fkt5gqanpptlx9jx
2014-01-22 14:38:22 +01:00
Martin Trigaux 9542ae89aa [FIX] stock: switch ids new - old picking in the message informing the back order was created (opw 594402)
Post on delivered picking that the backorder was created. Was inconsitent with the field 'Back order of'

bzr revid: mat@openerp.com-20131128145059-p3mw969z3lotkn26
2013-11-28 15:50:59 +01:00
Olivier Dony 17144e9914 [FIX] stock.picking.in: typo in default_get implementation
bzr revid: odo@openerp.com-20131121153230-keie85rmes2zh2o8
2013-11-21 16:32:30 +01:00
Martin Trigaux b6b86f34f4 [MERGE] [FIX] stock: correctly recount quantity when split on multiple locations for product reservations (opw 600277)
bzr revid: mat@openerp.com-20131121112321-fdttljrrogsbihf2
2013-11-21 12:23:21 +01:00
Christophe Simonis 82da5541e2 [MERGE] remove warnings
bzr revid: chs@openerp.com-20131120161051-pk7n0itjcxx06uwm
2013-11-20 17:10:51 +01:00
Olivier Dony f638bc39e4 [FIX] stock: stock.picking.in/out (technical models used to separate several picking types) should also apply _defaults from stock.picking
bzr revid: odo@openerp.com-20131112170133-7o607q6uq2nmuia5
2013-11-12 18:01:33 +01:00
Olivier Dony 520cc1306f [REVERT] stock: commit 9557/OPW 600078 assumes that production lot are guaranteed to be set on each relevant move
This assumption is incorrect in OpenERP v7. The WMS
design in OpenERP 7 and previous versions only permits
tracking production lots (aka serial numbers) on
incoming moves, outgoing moves and production moves.
You can specify production lots on internal moves too,
but the system will also generate internal moves for
many reasons, and nothing guarantees that they will
have the right lots assigned.
This is a design decision, and this means that we
must never enforce the availability of specific
production lots.

This features will be available in OpenERP 8 through
the use of an extra concept called "Quants", that
will make this kind of tracking possible.

bzr revid: odo@openerp.com-20131112153925-1s2b8f2eo568wpxh
2013-11-12 16:39:25 +01:00
Christophe Simonis 4166baa1ba [FIX] stock: mute orm logger before checking access rules
bzr revid: chs@openerp.com-20131108224724-3u72ec3molct34he
2013-11-08 23:47:24 +01:00
Dhruti Shastri (OpenERP) 36b4236e1c [stock] : Wrong Invoice generated due to product_uos_qty not updated (case ref:600277)
bzr revid: dhs@tinyerp.com-20131107113547-d6o11hiu7d8y8g4g
2013-11-07 17:05:47 +05:30
Olivier Dony 05e067415d [FIX] stock: chained location type `Customers` was not working at all for pickings without partner
This can create inconsistencies in the warehouse inventory
in case delivery orders are not customer-specific, e.g.
when using the POS.
When there is no destination customer we can still use
the default Customers locations.

bzr revid: odo@openerp.com-20131107105302-hf8lublc1x3qc87h
2013-11-07 11:53:02 +01:00