Commit Graph
50 Commits
Author SHA1 Message Date
Touati Djamel (otd) f203edd374 [FIX] stock_picking_batch: compute the state of all the batches
Steps to reproduce the bug:
- Create two batches, one with picking and one without
- Try to compute their state together with an RPC call

Problem:
If the first has no picking, the second batch does not compute state because we use `”return”` instead of `”continue”`

opw-2725988

closes odoo/odoo#82671

X-original-commit: 0242fcee2618425bd87846d818cffcd368c25121
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Djamel Touati (otd) <otd@odoo.com>
2022-01-13 09:30:52 +00:00
Yannick TivisseandVictor Feyens 18952cdc76 [IMP] *: Convert single create method into multi
Taskid: 2703085
Part-of: odoo/odoo#80824
Co-authored-by: Victor Feyens <vfe@odoo.com>
2021-12-14 19:13:18 +00:00
William Henrotin 56e7bcf0cb [REF] *{stock,mrp}*: rename reserved fields
This commit rename product_uom_qty into reserved_uom_qty and product_qty
into reserved_qty on stock move line to stop mistake them with the stock
move quantities fields.

Task: 2648449
Part-of: odoo/odoo#80434
2021-12-07 16:20:06 +00:00
yhu-odoo a9d9a258e4 [IMP] stock(_picking_batch): improve set/clear qty button
Add a "clear qty" button to revert the change by "set qty" button in
(batch) picking.
On the move, Whenever the qty_done != reserved, we consider it a
manual change from the user. "set/clear qty" buttons won't change the
line with manual change.
Show "set qty" button when there are moves with 0 qty_done and non-zero
reserved. Show "clear qty" button when we don't show "set qty" button
and there are moves with qty done == reserved but the number is not 0.

Task-2659233

closes odoo/odoo#78737

Signed-off-by: Steve Van Essche <svs@odoo.com>
2021-12-07 11:50:45 +00:00
Tiffany Chang (tic) a44dda1a90 [IMP] stock: conditionally show "Allocation" (reception report) button
Simplify user workflow by not showing the "Allocation" button in the
(batch) picking form view if there is nothing to allocate (i.e. when
reception report is enabled).

Also:
- fix the location search condition for the outgoing moves that can
  be allocated to (i.e. the same logic used in show_allocation field
  compute logic is also used in reception report generation/auto-opening)
- replace ['stock.location'].search() with ._search() for better
  performance.

Part of Task: 2632884
ENT PR (for barcode equivalent): odoo/enterprise#20805

X-original-commit: 11ffb85fe7398854e4aefa4f9d0cfbc3b88aad8a
Part-of: odoo/odoo#79408
2021-11-05 13:48:51 +00:00
William Henrotin 3a1473c75c [REF] *stock*: rename move_lines into move_ids in stock.picking
closes odoo/odoo#78732

Task: 2673000
Related: odoo/enterprise#21815
Related: odoo/upgrade#2956
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
2021-10-27 15:48:51 +00:00
William Henrotin eb4d8e452c [FIX] prpduct,stock: fixes on product labels
This commit fix some issue introduced with d9f45ba694.

X-original-commit: e4b9dab45665b0ba83d84c52ecc4638472ad454f
Part-of: odoo/odoo#76503
2021-09-15 07:48:12 +00:00
William Henrotin 9850a3ac9b [FIX] stock_picking_batch: split move for wave
Before this commit. The move splitting was not considering _split return
a list of values.
This commit also add a bunche of missing tests

Task : 2411102

closes odoo/odoo#76371

X-original-commit: 49164aa65f4eea0e46fff207c841beb94154f636
Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-09-13 10:38:47 +00:00
William Henrotin 90beedf036 [FIX] stock_picking_batch: pass owner id to wave transfer.
X-original-commit: 03055045d227398e8cfda54ff9281319fc5e9e1d
Part-of: odoo/odoo#76294
2021-09-10 08:49:22 +00:00
William Henrotin eb0ebc077a [FIX] stock_picking_batch: remove empty pickings
If a picking is totally empty (no move line with quantity recorded) in a
batch at validation. This one will be ignored by the immediate transfer
mechanism as well as the backorder creation. It is simply remove from
the batch.

closes odoo/odoo#63291

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2021-09-02 14:14:10 +00:00
William Henrotin 8d3805eccb [IMP] stock_picking_batch: add quick access to batch
This commit adds a quick access to all the batches and waves of a picking
type (only transfers picking type) ready to be processed from the
Inventory dashboard.

Task : 2411102

Part-of: odoo/odoo#63291
2021-09-02 14:14:10 +00:00
William Henrotin dd53f5323f [IMP] stock: wave pickings
This commit introduce Wave Pickings. This new object is a group of stock
move lines related to different pickings. The goal is to group stock
movements having similar characteristics like same source location, same
product category, ...

Wave pickings are created from stock move lines. Those are removed from
their picking to a copy of it. All the new picking are grouped together
in a new batch picking. This batch is the wave.
To differentiate the batch pickings and the wave pickings. This commit
introduces a new menu and a new sequence.

Task : 2411102

Part-of: odoo/odoo#63291
2021-09-02 14:14:09 +00:00
William Henrotin d9f45ba694 [IMP] product,stock{_picking_batch}: product labels revamp
This commit removes the pdf and zpl reports for product templates and
variants. Instead, labels are printed via a new wizard allowing to
specify the label quantity, format and optional text.

There are a bunch of usual retail label sizes in pdf or zpl code

Task : 2501730

closes odoo/odoo#69690

Related: odoo/enterprise#20246
Related: odoo/upgrade#2542
Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-09-01 15:01:48 +00:00
Tiffany Chang (tic) 53cc41016f [IMP] mrp, product, {purchase_, sale_}stock{_picking_batch}: add reception report
New reception report added for non-outgoing transfers. This is intended
to support easier stock allocations by allowing dynamic MTO
assignment/unassignment, e.g. if we have an incoming transfer with
products we want to assign to an existing outgoing transfer, then we can
use the report to create a MTO link to the specific outgoing moves. To
support this assignment flow, the report also allows printing of labels
to place on the product so stock workers know which transfer/MO the
product has been assigned to.

Expected use case is when a product is purchased to fulfil a sale.
Demo data has been added so reception report can be immediately
seen/used for this flow.

Implementation Notes:
- Report has been made flexible to work with batch transfers.
- Only done moves can be assigned to moves that already have quants
  reserved (prevents undesired behavior + this makes sense logically)
- Confirmed (+ Done and everything inbetween) moves can be assigned to
  any confirmed moves that are not already assigned.
- Report does not affect quant reservation/unreservation at all. It
  works only with linking moves (i.e. move_orig_id/move_dest_id) so
  move/transfer linkage traceability is stored within db (i.e. this
  isn't possible with quants)

Limitations: To keep code simple for now, this assignment flow will
  break in certain cases:
1. Done amount of an assigned move is less than the Demand amount
   (linked move will not autoreserve correctly when assigned move is
   validated, same issue already occurs in multi-step transfer).
2. If a linked move is unreserved after its assigned move is
   validated, then another move can reserve its quants and its
   assignment link will not be accurate.
3. Already reserved SNs + assign move, may lead to mismatching SNs
   between report and what's actually reserved.
4. Changing a linked move's Demand amount after a move is assigned to
   it.
5. Potential moves to assign to are only checked for being in same
   warehouse, not in a matching source location to destination location.
   User is expected to make this match on their own.

Task: 2500844
ENT PR: odoo/enterprise#18268
Upgrade PR: odoo/upgrade#2731

closes odoo/odoo#70669

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2021-08-17 11:42:23 +00:00
Tiffany Chang (tic) b75ada65d3 [IMP] stock_picking_batch: manage batches better
This commit loosens 2 things:
1. A batch can now be deleted for all statuses except 'done'
2. Cancelled batches will now remove links to any pickings assigned to
   it (so they can be more easily reassigned in barcode app)

closes odoo/odoo#68898

Task: 2486993
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2021-07-12 15:19:14 +00:00
yhu-odoo e310d92958 [IMP] stock_picking_batch: cancel empty batch picking
As pickings can be moved from a batch into an another one, a batch can suddenly
be emptied or having no more active pickings.In such case, we cancel it.
This way, empty batches won't be displayed by default as there is a default
filter showing only draft or in progress batches.
If we manually remove all pickings from a batch or create a empty batch, we
consider it intentional, and won't cancel it automatically.

Task-2464457
PR #66600

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2021-05-18 12:59:25 +00:00
yhu-odoo d1448b666b [IMP] stock_picking_batch: allow create batch with picking in other
batch

We already allowed the stock.picking.to.batch wizard to create batch
with pickings already in other batches. This commit will also allow you
select pickings that are already in other batches on the batch form.

Task-2464457
PR #66600
2021-05-18 12:47:14 +00:00
JF Aubert 5604e468d2 [IMP] stock: ease receipt/delivery encoding
When you want to validate a picking with a lot of products, the system notifies "You have not recorded done quantities yet, by clicking on apply Odoo will process all the quantities."
Nice and easy, except when you were not able to process all the quantities.
In that case you have to update all but the few lines manually.

Also added to batch pickings

task-2158092

closes odoo/odoo#58487

Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-03-22 14:00:20 +00:00
Adrian Torres 679185f3e8 [IMP] *: replace all raises inside unlink by api.ondelete
With this commit, all instances of errors being raised inside
`BaseModel.unlink` overrides are moved into methods decorated with
`api.ondelete` which is safer.
2020-12-04 09:16:16 +00:00
Tiffany Chang (tic) 58316d1546 [IMP] delivery, stock(_picking_batch): add "Put In Pack" button
This commit sets up the logic and adds the button for "Put in Pack"
action that already exists in stock.picking. Reuse/extension of logic
from stock.picking reused where possible, including extension of pack
wizard to handle products with different destination.

Note that logic to handle "Delivery Packaging" wizard when "Delivery
Methods" is active was purposely not extended to work correctly in batch
pickings due to complexity of adding in a new module just to handle
conflicting carrier_ids across pickings in the same batch. It is
expected that this use case will not occur except in case of user error.

Additionally, stock.picking implementation of 'put_in_pack' method has
been renamed to 'action_put_in_pack' to have consistent naming (and
support enterprise level code).

Part of "1. Improve Batch Pickings" specification of overall barcode
improvements task.

Task: 1884520
Enterprise PR: odoo/enterprise#12086

Closes: odoo/odoo#55096
2020-08-20 15:06:08 +00:00
Tiffany Chang (tic) 71e7f56719 [IMP] stock_picking_batch: add "Scheduled Date" field
This commit adds a "Scheduled Date" field to the batch pickings. Logic
behind this date is a bit tricky:

1. If "Scheduled Date" is edited directly in batch then this date will
   also be applied to all of its picking's "Schedule Date"s.
2. If "Scheduled Date" is not edited directly in the batch, then this
   date will be the earliest date of its assigned pickings and pickings
   will maintain their original scheduled date' including if picking
   scheduled date is changed.
3. If "Scheduled Date" is not edited directly and all pickings are
   removed or there are none then date will default to no date.

First cut of test for scheduled_date logic has also been added. Update
will be needed for testing onchange logic since it is currently not
supported by the tests.Form due to M2M widget used with O2M picking_ids
(M2M widget is used for when doing a "Add a Line" transfer to a batch
in backend).

Additionally this commit adds the 'scheduled_date' and 'operation_type' to
the kanban view.

Part of "1. Improve Batch Pickings" specification of overall barcode app
improvements task.

Task: 1884520
Enterprise PR: odoo/enterprise#12086
Upgrade PR: odoo/upgrade#1569

Closes: odoo/odoo#55096
2020-08-20 15:06:08 +00:00
Victor FeyensandSteve Van Essche 8acfc6b965 [FIX] stock_picking_batch: wrong sanity check on picking creation.
1) Wrong use of self.batch_id in an api.model method.
2) Fix demo datas which didn't pass the sanity check (after the fix)

Avoid to put draft picking into non-draft batch picking and use batch's
actions instead of picking's actions for confirmation and reservation.

closes odoo/odoo#55254

X-original-commit: 9e9f50169ba4d4698ce64b0865db4cc6b4833b0e
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Co-authored-by: Steve Van Essche <svs@odoo.com>
2020-07-31 10:13:08 +00:00
Martin Trigaux 400cc4f14e [FIX] *: correct all or improve code translation lookup
This commit fixes all issues detected by the new pylint
gettext-variable test.
It converts some calls to the new syntax
  _("Foo %s", bar)

to progressively migrate the code to the new syntax.

A few calls were not technically incorrect but still detected by the
linter.

  _("Foo" +
    "Bar")

has been converted to

  _("Foo"
    "Bar")

as it has the same effect and make sure the argument is of type
asteroid.Const instead of BinOp).

closes odoo/odoo#53683

Related: odoo/enterprise#11467
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-06-30 10:19:59 +00:00
Pratima Gupta cb71a75b12 [FIX] stock_batch_picking: unable to vaildate batch picking
Before this -
unable to validate batch picking if - any of picking from
batch is manually done.

Fixes-2238699

closes odoo/odoo#51791

X-original-commit: 4123809a56c0aadc752cd9a9c331cccee34c0889
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-05-25 10:40:59 +00:00
svs-odoo 3ed3ed183c [IMP] stock_picking_batch: confirm waiting picking
Before this commit, the batch action done processes only if all batch's
pickings are `reserved`, which cause batches with a waiting picking
(`confirmed` state) can not be validated.
As the picking itself can be validated even if it is in waiting state,
it seems logical that we can do the same from batch picking.

task-2123726
2020-03-05 13:32:57 +00:00
svs-odoo 9ac12ebb38 [IMP] stock_picking_batch: compute state
About the batch picking state, makes it canceled if all its pickings are
canceled, and makes it done if all its non-canceled pickings are done.
2020-01-31 12:40:09 +00:00
Simon Lejeune 2b314aad5c [IMP] stock_picking_batch: display moves and move lines
* allow to directly edit the move lines of the batched transfers
* add a check availability button if any move is not assigned yet

task-2069646
2020-01-31 12:40:08 +00:00
Simon Lejeune be169f6a81 [REF] stock_picking_batch: stock picking to its own file
task-2069646
2020-01-31 10:22:14 +00:00
Simon Lejeune 6564c36c74 [REF] stock: immediate and backorder wizard multi
followup of rev [0]

If these wizards are called on multiple pickings, display the list of
the pickings that could be impacted and allow to select which one should
be impacted.

We also adapt the sanity checks at the start of `button_validte` in
order to specify the concerned pickings if needed. We do not enable the
multi behavior for batch at the moment, so it's only enabled for the
validate multi in the list view.

[0] 6ab4b0d496

task-2069646

closes odoo/odoo#41497

X-original-commit: ff276c6484b138982f185ec9c832f2dbf25baaef
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-12-06 14:49:38 +00:00
Nicolas Martinelli d17e6a6750 [FIX] stock_picking_batch: default company
Set a default company since it is mandatory and hidden in mono-company
mode.

opw-2129187

closes odoo/odoo#41259

X-original-commit: ffb6360e87ed8b6fbe5ae19a801230d1f89bc660
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-12-03 08:08:49 +00:00
Simon Lejeune f1972c2130 [REF] stock_picking_batch: use picking button_validate multi 2019-10-25 08:10:40 +00:00
Arnaud Baes 0c6488a95a [REF] stock: Set action_done on pickings private
`action_done`on pickings should be a private method,
and called only trough the picking validation process.

task-1938108

closes odoo/odoo#39174

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-10-23 07:43:01 +00:00
Christophe Simonis d74b451805 [MERGE] forward port branch 13.0 up to f4105eb9c7 2019-10-09 02:08:17 +02:00
svs-odoo dc5254cb14 [IMP] stock_picking_batch: editable batch picking
Makes batch picking list view multi-editable. Also, sets `name` and
`state` fields as readonly in the model as they must not be editable in
the list view and they were already readonly in form view.

Task #2078163
2019-10-01 13:53:27 +00:00
Christophe Simonis 6c948c36bb [MERGE] forward port branch saas-12.5 up to 197474e5b9 2019-09-13 18:07:59 +02:00
Simon Lejeune 4a03178146 [REF] stock_picking_batch: multi company
Ensure proper domains are applied and enforced on relation fields thanks
to the `check_company` attributes.

task-1985992
2019-09-03 15:05:03 +00:00
lbs-odoo 9a0fedfc65 [IMP] various: improve searchviews UX
Improve searchviews UX in all the modules

TaskID: 2029731

closes odoo/odoo#35700

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-08-16 13:35:21 +00:00
Arnaud Baes 2f2e12eea1 [IMP] stock_picking_batch: Views cleanup 2019-08-14 12:27:05 +00:00
Christophe Simonis 886eca0131 [IMP] *: remove usage of oldname attribute
This attribute is misleading as it is insufficient to correctly upgrade
the database. It only renames the column in the database, but other
operations are needed, like updating the corresponding `ir.model.fields`
record (and its xmlid). The default values and the translations are also
lost during the upgrade.

Moreover, this feature was misused. It was:
 - left on fields during multiple versions.
 - used on reports (SQL views). This would be ok if the feature was
   complete, but, as is, it was useless.
 - kept unchanged after a second renaming of the field (which can happen
   versions later the first rename).
 - used, even when the meaning of the field changed. i.e. the field
   `archived` has been renamed to the classic `active`, but the value
   in the database should be switched.
2019-08-05 09:36:41 +00:00
Adrian Torres 4b38cc6590 [REM] *: calls to @api.multi
Multi is the default api for methods, it is not necessary to explicitly
decorate methods with it, adds clutter and most people use it because
they see that the rest of the code uses it.

Done with `find . -type f -name '*.py' | xargs sed -i '/@api.multi/d'`
2019-07-17 14:13:12 +02:00
Hiral Bhavsar 3cd7ed07a2 [IMP] *: remove 'view_type' on window actions.
The old tree views don't really exist anymore, this odd pseudo-flag to
dispatch between "list" and "tree" tree views has no reason to remain.

Task 1937686

closes odoo/odoo#31243

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-06-17 11:34:17 +00:00
Thibault Delavallée b8197ff178 [REF] various: update tracking parameters
Purpose is to clean the use of tracking parameters on fields. Parameters are
merged and is now tracking=<int> or tracking=True.

This commit is linked to task ID 1903814 and PR #28430.
2019-01-04 11:46:14 +00:00
Nimesh Jethva b0a6f3398d [IMP] *: add next activities on all modules
*: account, event, mrp, purchase_requisition, stock_landed_cost, stock_picking_batch

Add activity on below models:
account.payment
event.event
event.registration
mrp.workorder
purchase.requisition
stock.landed.cost
stock.picking.batch

Related Task ID : 1867620

closes odoo/odoo#26092
2018-11-26 12:28:19 +00:00
TWA e61286ecd4 [IMP] mail: Return a browse record in _track_subtype instead of xmlid
Purpose
=======

It's possible to gain some requests with returning a browse record instead of
an xmlid. It's also cleaner.
2018-10-18 13:07:30 +00:00
Ankit Joshi dde71027db [Add] stock_picking_batch: Create batch picking report by location.
We have added a report for batchpicking that show picking operations
sorted by locations.

TASK-ID: 35645
2018-08-22 15:34:09 +02:00
Benjamin Stiens 6383120f3b [IMP] all: Improve error messages
Many error messages are misleading or too "vague"
This task aims to improve all error message.

Task #47042
PR #23321
2018-05-28 16:45:48 +02:00
amoyaux 589a38ce33 [IMP] stock_picking_batch: ask for qty done and backorder
Previsously picking batch done button automatically run backorder
for picking that need and set a quantity done for picking without it

This commit changes the function done for picking wave in order to
call the needed wizard(set qty_done automatically or asking for a
backorder). Also it override the immediate transfer wizard in order to
pass the picking to backorder found in done function through the process
action.

pick_to_backorder_ids is needed in immediate transfer since we need to
pass the backorders from the done function in stock_picking_batch
through the immediate transfer wizard.
2017-09-26 09:31:26 +02:00
Prakash Prajapati 9ba7f28062 [REF] stock_picking_batch: wording on name 2017-09-13 11:17:23 +02:00
Kirti Choudhary af846c354e [IMP] stock_picking_batch: few improvements,
- model renamed: stock.picking.wave -> stock.picking.batch
- Class renamed: StockPickingWave -> StockPickingBatch
- .xml files: changed XML IDs according to module guidelines, reindented code and removed commented code
2017-08-25 15:12:59 +02:00
Kirti Choudhary dace2241f6 [IMP] stock_picking_wave: rename to stock_picking_batch
Also rename it's files and replace old references with new one
2017-08-25 15:06:51 +02:00