Commit Graph
143 Commits
Author SHA1 Message Date
Pierre Masereel 76662a0a66 [REF] stock, delivery: entire package manipulation
We added a model to work easily with packages, using the quant packages
was not a good solution to move entire package and plan package moves,
because we always had to give the picking in context, and create some
move lines, so it was only possible when state was assigned (when move
lines exists)

So we created a model package level, linked to picking, move and move
lines allowing to easily plan package transfer and put in pack.
2018-06-11 17:46:19 +02:00
XavierDo 2966d4faed [IMP] product: rename product.uom into uom.uom
Also rename product.uom.categ into uom.category to
 give it a decent name.
2018-02-26 14:27:26 +01:00
XavierDo 6a378e3839 [IMP] product: move uom in a new addon
Moves UoM models, test and data to a new addon in
order to be able to use uom without product.
A simple example is be to be able to use UoM for
timesheets.

This commit only move code, and adapt xml ids
without chaging any feature or functionnal
behavior.
Note: 'product' module now depends on new
'uom' module.
2018-02-26 14:27:26 +01:00
Arnold Moyaux d279a3e6d5 [FIX] stock: adapt portal rights
After commit 996a817071
The portal report on picking only check if
the user has a 'read' access on picking.
If he can read it, sudo is called and thus
record rule/access right on component objects
are not necessary.

This commit removes useless rights for portal users.
2017-11-16 16:54:42 +01:00
Wolfgang Taferner 66a82fd4e4 [FIX] stock: drop useless access rights "reduction" for manager
As a stock manager has anyway implied access rights from the user who
has all rights for stock.production.lot
2017-11-13 17:34:21 +01:00
Fabien Pinckaers 0e4f3bb959 [IMP] stock: remove procurement orders to fufill immediately
This removes the procurement.order model. To fufill their needs SO, PO, MO and
stock moves now call the _run method of the relevant procurement.group.

This mecanism is now only used for stockable product, tasks now uses their own
independent mecanism.

The _run method will check all the applicable rules and create directly the
needed model to fufill the need.

The modules stock, purchase, mrp, extends the _run method to implement their
specific strategy relevant for the rule type they define.

If an exception happens the message will be logged as a mail messsage on the
source model, for example, if a sales order cannot be fufilled the salesperson
will now see directly the reason.

OLD commit messages:
[WIP] procurement: removing procurement.order in stock, sale, purchase, sale_stock. WIP
fixup! [WIP] procurement: removing procurement.order in stock, sale, purchase, sale_stock. WIP
[IMP] Basic tests
[FIX] test not necessary anymore
[FIX] remove unnecessary print statement
[FIX] unnecessary test + why passing warehouse worked before?
[IMP] purchase: one move by purchase order line
[FIX] purchase: correct inventory tests and pass move_dest_ids among procurements
[FIX] because of bad cherry-pick merge
[IMP] make mrp pass by adding move_dest_ids there too
[IMP] tests of sale_mrp, no need for cancelpropagation then
[IMP] better to consistently use recordsets also for one2many
[FIX] purchase_requisition
[FIX] Exceptions should trigger errors, which should be caught in the tests
[FIX] sale_mrp: remove usage of procurement.order and use sale order name instead of sol
[FIX] stock_dropshipping: add sale_line_id on purchase_line_id
[FIX] Remove pdb
[IMP] add stock_dropshipping files
[IMP] stock: search carrier through sale line instead of procurement group
[IMP] add procrule test and preision needed when updating sol
[FIX] sale_order_dates + [IMP] procurement exceptions by scheduler
[FIX] No need to return task
[IMP] move file as name changes and add corrections
[FIX] Continue Run Schedulers wizard fix
[FIX] name issues of takss
[FIX] updating sale order line, but there is still a problem with the recompute
2017-09-08 17:08:05 +02:00
Simon Lejeune ddf2b21bdf [REF] stock: adapt to rename of stock.pack.operation into stock.mode.line 2017-07-14 17:08:22 +02:00
Simon Lejeune 0469d2e712 [REF] stock: new picking, move and pack.operation implementation
The big change is that we have now a many2many between the move and a
one2many between a move and its pack.operation (note: this model is
renamed as stock.move.line in a further commit).

Due to these changes, `action_done` had to be rewritten intierely, as it
depended and stock.pack.operation.lot and stock.move.operation.link,
that are now removed. This method was laregly inspired by the one in the
mrp module, and a further commit will make MRP uses all the core of
stock.

Due to the previous commit that refactored the stock.quant
implementation, the new concept is that the `product_qty` that will
always be in the uom of the quant (`product_qty` is a computed field in
the same style as the one of stock.move).

This commit also implements the logic that a manager is able to edit
done stock.pack.operation.

The stock.move has now a "partially_available" state (it was previously
a flag). The "split_from" field is removed now that we have a many2many
between moves (a sibling move is always a move that was splitted, or
with the backorder_id field).

The done quantity of a stock move is computed across the done quantity
of the move lines. There is an inverse method that allows user to fill
the done quantity directly on a stock move.

The reserve quantity of  stock move is computed accross the
`product_qty` of the linked pack operations.

`do_unreserve` will simply unlink the associated pack operation.
Unlinking a pack operation will unreserve.

`force_assign` will mark the move as available, in order to allow the
user to create pack operations (none are created because nothing was
reserved).

`action_assign` is rewritten and splitted in two parts: if the move has
a parent (mto) or not (mts). In the mto, we'll check the available move
lines and only reserve accordingly. In the mts, we'll reserve directly
on the quants.

`action_cancel` has changd a lot: in case of a delivery, the first step
does not anymore propagate cancellation to following moves and SO. As a
result it does not propagate in the other side in case of MTO or production.
It does not delete them if we delete the related sale order for example. In
order to correct this next activities will be added in the future. Technically
action cancel on move is based on procurment rule, this commit will set
the propagate field to false on the rule if the picking_type is 'pick'
or if we are in one step delivery.

We use this commit to reimplement `action_assign` (wiped by the new
quant implentation). A move is reserved if its move lines exist, so we
introduce a one2many between stock.move and stock.pack.operation (note:
a further commit renamed this model into stock.move.line)

We use this commit to implement `action_done` (wiped by the removal of the
models making the link between stock.move and stock.pack.operations). We
can use the one2many to the pack operations.

blabla manymany au lieu de one2many
blabla mto mts

Remove get_ancestors, as orig_ids will be used instead

validation

when we are creating some packe operation with lot name, the
pack_operation are unlink and a new picking is craeted.

This is caused the function _create_lot_for_picking that unlink pack
operation having no quantity reserved instead of ones having no quantity
done.

To fix this we changed product_qty to qty_done and move the code from
action_done of picking to action_done of move

fixup! [IMP] Merge_moves functionality + many2many procurement and original moves instead of one2many

fixup! [REF] stock: basics of new model and stock.move reservation

edit reserved move line

 This is the 1st commit message:

[REM] stock: stock.pack.operation.lot, stock.move.operation.link

These models will become useless once a one2many will be made between
stock.move and stock.pack.operation.

The `action_done` method on stock move has been wiped, as it depended
completely on the removed models.

Joint work with Josse Colpaert <jco@odoo.com>, amoyaux <arm@odoo.com>
and Pierre Masereel <pim@odoo.com>
2017-07-14 17:08:21 +02:00
Christophe Simonis cc38b93ab2 [MERGE] forward port branch saas-15 up to 49f819a7a7 2017-06-09 16:43:27 +02:00
Olivier Dony c047b1619c [MERGE] Forward-port 10.0 up to 7d7d6ee5af 2017-06-07 23:48:08 +02:00
Denis Ledoux c638fbdf23 [FIX] stock: ACL for product attributes for Inventory managers
If only Inventory is installed,
only the admin could create new product attributes
for products variants. Other managers couldn't.

This revision adds the ACL according to what is done in other modules,
such as in `sale`.

Mostlikely, we should create a product manager group, for which
this rights are given, and make the other groups (sales manager, inventory manager)
inherit from this one.

opw-745735
2017-06-07 11:21:07 +02:00
Christophe Simonis fb2504b24c [MERGE] forward port branch saas-15 up to aebd043662 2017-03-28 18:38:49 +02:00
Christophe Simonis 2f68e9e93a [MERGE] forward port branch 10.0 up to 72fa3e8bda 2017-03-28 17:27:19 +02:00
David Arnold 14368a0e72 [FIX] stock: stock user shall scrap
Before this, the stock user had readonly ACL on the scraping action. He
therefore could not scrap products during his normal operations. It is assumed,
that this was not an intended default, as not being otherwise documented.

Closes #15955
2017-03-23 10:22:28 +01:00
Jérome Maes 9f006b5cce [REM] portal_stock: kill the module
The goal is to prepare the removal of
'portal' module.

Since this module only provides access rules and
rights, those ones are moved directly into its
parent module (aka 'stock').
Since no module depends on it, we can remove it
without problem.
2017-03-23 09:59:58 +01:00
Pratima Gupta 2560feec04 [REM] stock: latest inventories and moves report
The functionaility is available through a filter on the inventory
adjustment view or through the stock moves of a product.
2017-03-16 17:53:28 +01:00
Ravi Patel acc1b4467a [IMP] product: Move products create and write access rights to related app managers
PURPOSE
=======

A lot of customer are struggling with the fact that from the SO lines their users sometimes type too fast the product name and end up by creating or selling products that are simply mistakes.

Only the sale/manager, subscription/manager, purchase/manager, mrp/manager, warehouse manager, event/manager, pos/manager and invoicing person should have access rights to create and update products.

SPECIFICATION
=============

Remove create and write rights on product_product, product_template and product_price_history for stock users and move these rights to the subcited apps managers
2016-09-16 13:36:06 +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
Yannick Tivisse 9e57185449 [IMP] base,sales_team: Move res_groups and menuitems to sales_team
Purpose:
Having the res_group defined in base and sales_team auto installed
with mail doens't make sense.

- Move the empty res_config class and the related view from
  base_setup to sales_team (base_setup only contains the 'General Settings'
  model and views
- Move the 'sale' related content from product to sale module (Access rights,
  menuitems,...)
- Set sales_team at autoinstall False. The module is installed when needed by
  crm or sale for example
- Set sales_team as a dependency of voip. (Access rights defined for configuration
  purpose)
- Set sales_team ad a dependency of subscription (Access rights issue too)

[FIX] account: move some ir.model.access to sale module
[FIX] payment: Move some ir.rule to website_sale
[FIX] stock: move some ir.model.access rule to sale_stock
[FIX] project: Move some ir.model.access rules to crm_project_issue
[FIX] mrp: Move some ir.model.access rules to sale_mrp
[FIX] calendar: move some ir.model.access rules to crm

Rename xmlids accordingly. Example: 'base.group_sale_manager' becomes
sales_team.group_sale_manager.

[ADD] sales_team: See own documents => See only his sales team
Moved the "User: Own Leads Only", "User: All Leads" and "Manager" groups from sale and crm
into sales_team module. Add the record rules so that user can see only his Own Sales Team
if "See Own Leads" is sales right and can see all sales teams if he is having sales rights
of "See All Leads" or manager.
2016-06-09 16:05:25 +02:00
Yannick Tivisse ccdb5cbfc0 Revert "[IMP] base,sales_team: Move res_groups and menuitems to sales_team"
This branch need more testing instead of doing 10 fixes. A lot of issues are occuring
when installing modules in different orders.

This reverts commit fa6e415cdb.
2016-06-06 17:26:30 +02:00
Yannick Tivisse fa6e415cdb [IMP] base,sales_team: Move res_groups and menuitems to sales_team
Purpose:
Having the res_group defined in base and sales_team auto installed
with mail doens't make sense.

- Move the empty res_config class and the related view from
  base_setup to sales_team (base_setup only contains the 'General Settings'
  model and views
- Move the 'sale' related content from product to sale module (Access rights,
  menuitems,...)
- Set sales_team at autoinstall False. The module is installed when needed by
  crm or sale for example
- Set sales_team as a dependency of voip. (Access rights defined for configuration
  purpose)
- Set sales_team ad a dependency of subscription (Access rights issue too)

Rename xmlids accordingly. Example: 'base.group_sale_manager' becomes
sales_team.group_sale_manager.
2016-06-06 15:46:52 +02:00
Thibault Delavallée 33c78f1621 [FIX] stock: stock user should be able to create products
Stock user should be able to create products. Indeed when targetting small
businesses, restricting the right to create products limitates the use of
the inventory app. It is possible to further restrict access to the product
model using record rules for big companies that have a lot of users and
managers, and where creating product should be limited.
2015-11-06 17:28:17 +01:00
qdp-odoo e4dc50bf58 [IMP] pricelists improvements. Was PR #8228 2015-08-31 16:57:32 +02:00
Josse Colpaert 22b81b92e1 [IMP] stock: instead of splitting the pack operation by lots, we allow for multiple lots by pack operation
When scanning multiple serial numbers e.g., the list of pack operations
can become quite long.  In order to avoid that, we make it possible
for pack operations to contain multiple lots.

The implementation is done in the way that the links between moves
and pack operations remains the way it was.  The important difference
is that on action_done, it will check all the reserved quants and their lots at
once first and only afterwards, it will check the lots one by one to check what
it can reserve.

As the details for the lots for the pack operation became a real object, the wizards related
to the pack operation details are not necessary anymore and were replaced
by a form view of the pack operation.
2015-08-25 10:07:30 +02:00
Yannick Tivisse b3b2b2110a [IMP] Remove dependencies to 'board' module in every modules 2015-08-21 10:42:18 +02:00
Fabien Pinckaers 3f108c4fdf [IMP] removing complex and unuseful concepts 2015-07-02 21:27:42 -07:00
Josse Colpaert 2cb3a90c1c [IMP] Barcode interface and transfer wizard in picking form instead
Pack operations will not appear in a transfer wizard or bar code interface anymore, but
in the picking form itself.  Some wizards are still needed however to ask whether a
backorder needs to be created and whether we need to do an immediate transfer

The biggest change in the model is in the picking where the locations of the picking
are not a related anymore, but need to be set. That is why the tests need to be changed.
This allows also to have pickings without moves initially and just move one pack e.g.
Locations won't be visible on stock moves in a picking either.  (as they should be those of the picking)

In order to avoid confusion, the pack operations are created immediately when stock is reserved and we
are not waiting until the wizard or the bar code interface is launched anymore.

The recompute button previously in the barcode interface will only appear when the reservation changed
and the user indicated in the pack operations that something was moved already.  Otherwise it will
recompute the pack operations.  That way the reservation on the stock moves, is reflected by the pack operations.

Return pickings are not confirmed automatically when confirming the return wizard.
That should make it possible to choose another location for the return.  (Don't return in output e.g.)

Barcode scanning is not in this commit.
2015-06-15 10:18:17 +02:00
Christophe Simonis 7f2de62378 [MERGE] forward port of branch 8.0 up to 33a8989 2015-02-11 17:25:33 +01:00
Denis Ledoux 769c62ef27 [MERGE] forward port of branch saas-3 up to f92b2f8 2015-02-06 14:19:30 +01:00
David Monjoie d7f30de9ae [FIX] product: moved pricelist_item ACL from stock to product
Otherwise if we install sale without stock, we can create pricelist and pricelist versions, but not pricelist items.
Fix for issue 626985
2015-02-04 16:17:36 +01:00
jir 2ad01aa2d1 [ADD] stock: "Stock Forecast" analysis view
Code courtesy of Jignesh Rathod <jir@odoo.com> and Josse Colpaert
<jco@odoo.com>.
2015-01-21 14:28:55 +01:00
Christophe Simonis 18e22be138 [MERGE] forward port of branch 8.0 up to 0aab81c 2015-01-19 17:15:56 +01:00
Akash Balar 88ace35fa4 [FIX] stock: putaway stategy access rights
Only admin was able to create product.putaway records. Gives all access
to warehouse manager.
If a putaway strategy was present on a location, a warehouse user was not able
to transfer goods as he had no access to the rule lines (no read to
stock.fixed.putaway.strat). Give read access. opw 619774
2015-01-13 09:42:05 +01:00
Aaron Bohy b1a863b60e [FIX] pos_barcodes module renamed in barcodes 2014-11-26 11:46:20 +01:00
Aaron Bohy 7464b3eab3 [IMP] pos_barcodes: pos_barcodes set as dependency of point_of_sale and stock (+ already used in PoS)
Conflicts:
	addons/stock/stock_view.xml
2014-11-26 11:46:03 +01:00
ssh-odoo 74115334f6 [FIX] stock: group dependency
When installing stock without account, the group group_account_invoice is not present.
Fixes #3117
2014-10-21 18:00:37 +02:00
cod-odoo 999300ce5d [IMP] sale,purchase: allow invoicing
(closes #500)

(cherry picked from commit 84c0595aef3a417702c81b5226ae1f61817a2bf8)
2014-09-25 11:18:44 +02:00
Christophe Simonis 73d39a0c8c [MERGE] forward port of branch saas-4 up to a361947 2014-07-10 22:12:16 +02:00
Loïc Bellier 6e96ffd44c [FIX] stock: remove permission to create locations for partner managers
There's a big risk of mistake with the fast-create
feature and they don't need it

(Rebase of PR #1073)
2014-07-10 19:16:41 +02:00
Christophe Simonis 7a823e0e15 [FIX] stock: backport fixes from master 2014-07-01 17:11:46 +02:00
Josse Colpaert fa355176d5 [IMP] Add read access for contact creation user on routes
bzr revid: jco@openerp.com-20140502144809-vkt5qufxn93u89ob
2014-05-02 16:48:09 +02:00
Josse Colpaert 8b84615de1 [MERGE] Merge from trunk test
bzr revid: jco@openerp.com-20140502130352-c3h1fk332eqyd78b
2014-05-02 15:03:52 +02:00
Richard Mathot (OpenERP) 2c3ec2c7e4 [REM] mrp/stock: remmove ACLs related to removed dashboards
bzr revid: rim@openerp.com-20140429081808-hytvlkp461zm2l4o
2014-04-29 10:18:08 +02:00
Quentin (OpenERP) 7ed26f1e07 [REF] product refactoring: prices.history model renamed into product.price.history + passed 'date' as real parameter instead of contextual one in get_history_price() because it makes more sense.
bzr revid: qdp-launchpad@openerp.com-20140428153355-vbuam1hfnah7m4wp
2014-04-28 17:33:55 +02:00
Quentin (OpenERP) 6ccdde1f9b [FIX] stock: fixed warning (added an access right for stock.fixed.putaway.strat model)
bzr revid: qdp-launchpad@openerp.com-20140423065826-33w9xmzu662zpac3
2014-04-23 08:58:26 +02:00
Josse Colpaert d305b72bde [IMP] Apply the putaways from the pack ops
bzr revid: jco@openerp.com-20140303173147-x26oes0xaed6lqc8
2014-03-03 18:31:47 +01:00
Quentin (OpenERP) e147b6bbe7 [FIX] stock: access rights of stock.quant.package
bzr revid: qdp-launchpad@openerp.com-20140120152810-n4v72b467xvfuee4
2014-01-20 16:28:10 +01:00
Quentin (OpenERP) 92688b6922 [FIX] merged csn's branch with fix of access rights for stock.location.route as sock manager
bzr revid: qdp-launchpad@openerp.com-20140120150825-vxtrl08mr3dbl8k1
2014-01-20 16:08:25 +01:00
Quentin (OpenERP) b6a51daf90 [MERGE] merged csn branch with fixes of access rights on prices.history table
bzr revid: qdp-launchpad@openerp.com-20140120150334-8h6jg5wkwklc2c42
2014-01-20 16:03:34 +01:00
Cedric Snauwaert e9cd5df1f7 [FIX]access right for stock.location.route, stock manager should have right to write and unlink
lp bug: https://launchpad.net/bugs/1269050 fixed

bzr revid: csn@openerp.com-20140120093049-r41qwkjto2yqzfv5
2014-01-20 10:30:49 +01:00