Congratulations!
We hope this guide helped you implement Odoo Inventory.
-
Don't hesitate to send us an email to describe your experience or to suggest improvements!
-
Once it's fully working, give us some feedback: we love to hear from our customer. It would be great if you can send a photo of your warehouse to feedback@mail.odoo.com
+
Do not hesitate to send us an email to describe your experience or to suggest improvements!
+
Once it's fully working, give us some feedback: we love to hear from our customer. It would be great if you could send us a photo of your warehouse to feedback@mail.odoo.com
Enjoy your Inventory management with Odoo!
- The Odoo Team

diff --git a/addons/stock/i18n/stock.pot b/addons/stock/i18n/stock.pot
index 79ae83c25ac..5831d645738 100644
--- a/addons/stock/i18n/stock.pot
+++ b/addons/stock/i18n/stock.pot
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-10-09 09:17+0000\n"
-"PO-Revision-Date: 2015-10-09 09:17+0000\n"
+"POT-Creation-Date: 2015-11-05 14:22+0000\n"
+"PO-Revision-Date: 2015-11-05 14:22+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
@@ -52,7 +52,7 @@ msgid " (reserved)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3479
+#: code:addons/stock/stock.py:3482
#, python-format
msgid " MTO"
msgstr ""
@@ -65,36 +65,36 @@ msgid " On Hand"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3616
-#: code:addons/stock/stock.py:3909
+#: code:addons/stock/stock.py:3619
+#: code:addons/stock/stock.py:3912
#, python-format
msgid " Sequence in"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3620
-#: code:addons/stock/stock.py:3917
+#: code:addons/stock/stock.py:3623
+#: code:addons/stock/stock.py:3920
#, python-format
msgid " Sequence internal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3617
-#: code:addons/stock/stock.py:3911
+#: code:addons/stock/stock.py:3620
+#: code:addons/stock/stock.py:3914
#, python-format
msgid " Sequence out"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3618
-#: code:addons/stock/stock.py:3913
+#: code:addons/stock/stock.py:3621
+#: code:addons/stock/stock.py:3916
#, python-format
msgid " Sequence packing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3619
-#: code:addons/stock/stock.py:3915
+#: code:addons/stock/stock.py:3622
+#: code:addons/stock/stock.py:3918
#, python-format
msgid " Sequence picking"
msgstr ""
@@ -111,7 +111,7 @@ msgid "%s %s %s has been
moved to scrap."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3296
+#: code:addons/stock/stock.py:3299
#, python-format
msgid "%s: Supply Product from %s"
msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "
'Ready to Transfer'"
+msgid "
'Available'"
msgstr ""
#. module: stock
@@ -171,6 +171,11 @@ msgstr ""
msgid "
Click on Delivery"
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "
Click on Shipment"
+msgstr ""
+
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "
Confirm Order"
@@ -265,7 +270,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "
\n"
-" From the Purchases application\n"
+" From the Purchase application\n"
" "
msgstr ""
@@ -354,7 +359,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "
Buy: the product is bought from a vendor, through a Purchase Order"
+msgid "
Buy: the product is bought from a vendor through a Purchase Order"
msgstr ""
#. module: stock
@@ -400,12 +405,12 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "
Make to Order: the product is acquired only as demand requires (meaning each time a Sales Order is confirmed). This will not modify stock in the medium term because you restock with the exact amount that was ordered"
+msgid "
Make to Order: the product is acquired only as demand requires, each time a Sales Order is confirmed. This does not modify stock in the medium term because you restock with the exact amount that was ordered"
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "
Make to Stock: your customers are supplied from available stock. If the quantities in stock are too low to fulfill the order, a Purchase Order (according the minimum stock rules) will be generated in order to get the products required"
+msgid "
Make to Stock: your customers are supplied from available stock. If the quantities in stock are too low to fulfill the order, a Purchase Order is generated according the minimum stock rules in order to get the products required"
msgstr ""
#. module: stock
@@ -479,6 +484,11 @@ msgstr ""
msgid "
Serial Number"
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "
Service products are non-material products provided by a company or an individual"
+msgstr ""
+
#. module: stock
#: model:ir.ui.view,arch_db:stock.report_picking
msgid "
Source"
@@ -515,7 +525,7 @@ msgid "
When you process an incoming shipment, internal transfer or deliv
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2878
+#: code:addons/stock/stock.py:2881
#, python-format
msgid "A Pack"
msgstr ""
@@ -525,6 +535,16 @@ msgstr ""
msgid "A barcode nomenclature"
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "A classic purchase flow looks like the following:"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "A classic sales flow looks like the following:"
+msgstr ""
+
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "A good inventory management aims to optimize stock levels: not too low (or\n"
@@ -592,13 +612,13 @@ msgid "Adds a Claim link to the delivery order.\n"
msgstr ""
#. module: stock
-#: selection:stock.config.settings,group_stock_adv_location:0
-msgid "Advanced routing of products using rules"
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "Advanced"
msgstr ""
#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Advanced'"
+#: selection:stock.config.settings,group_stock_adv_location:0
+msgid "Advanced routing of products using rules"
msgstr ""
#. module: stock
@@ -628,7 +648,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2864
+#: code:addons/stock/stock.py:2867
#, python-format
msgid "All products"
msgstr ""
@@ -787,11 +807,6 @@ msgstr ""
msgid "Back order %s created."
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Back to the Purchases application, find the original Purchase Order"
-msgstr ""
-
#. module: stock
#: model:ir.model,name:stock.model_stock_backorder_confirmation
msgid "Backorder Confirmation"
@@ -803,7 +818,7 @@ msgid "Backorder creation"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4729
+#: code:addons/stock/stock.py:4732
#, python-format
msgid "Backorder exists"
msgstr ""
@@ -878,7 +893,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "By default, Odoo measures products by 'units', which are a generic and can represent just about anything"
+msgid "By default, Odoo measures products by 'units', which are generic and represent just about anything"
msgstr ""
#. module: stock
@@ -902,13 +917,13 @@ msgid "Calendar View"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3355
+#: code:addons/stock/stock.py:3358
#, python-format
msgid "Can't find any customer or supplier location."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3463
+#: code:addons/stock/stock.py:3466
#, python-format
msgid "Can't find any generic Make To Order route."
msgstr ""
@@ -1336,7 +1351,7 @@ msgid "Creation Date, usually the time of the order"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3803
+#: code:addons/stock/stock.py:3806
#, python-format
msgid "Cross-Dock"
msgstr ""
@@ -1367,7 +1382,7 @@ msgid "Current quantity of products.\n"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4825
+#: code:addons/stock/stock.py:4828
#: model:ir.ui.view,arch_db:stock.view_location_search
#, python-format
msgid "Customer"
@@ -1600,7 +1615,7 @@ msgid "Delivery Method"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3664
+#: code:addons/stock/stock.py:3667
#: model:stock.picking.type,name:stock.chi_picking_type_out
#: model:stock.picking.type,name:stock.picking_type_out
#, python-format
@@ -1750,6 +1765,11 @@ msgstr ""
msgid "Display the latest Inventories and Moves done on your products and easily sort them with specific filtering criteria. If you do frequent and partial inventories, you need this report in order to ensure that the stock of each product is controlled at least once a year. This also lets you find out which products have seen little move lately and may deserve special measures (discounted sale, quality control...)"
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "Do not hesitate to send us an email to describe your experience or to suggest improvements!"
+msgstr ""
+
#. module: stock
#: selection:stock.config.settings,module_claim_from_delivery:0
msgid "Do not manage claims"
@@ -1776,11 +1796,6 @@ msgstr ""
msgid "Do not use Expiration Date"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Don't hesitate to send us an email to describe your experience or to suggest improvements!"
-msgstr ""
-
#. module: stock
#: model:ir.model.fields,field_description:stock.field_stock_pack_operation_lot_qty
#: model:ir.model.fields,field_description:stock.field_stock_pack_operation_processed_boolean
@@ -1851,7 +1866,7 @@ msgid "Every stock operation in Odoo moves the products from one\n"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4183
+#: code:addons/stock/stock.py:4186
#, python-format
msgid "Everything inside a package should be in the same location"
msgstr ""
@@ -1931,13 +1946,6 @@ msgstr ""
msgid "Followers (Partners)"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "For developers, you can use our\n"
-" API to load data automatically through\n"
-" scripts: take a look at our"
-msgstr ""
-
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "For the Odoo Team,
\n"
@@ -2145,6 +2153,11 @@ msgstr ""
msgid "History"
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "How to use Lot Tracking:"
+msgstr ""
+
#. module: stock
#: model:ir.model.fields,field_description:stock.field_make_procurement_id
#: model:ir.model.fields,field_description:stock.field_procurement_orderpoint_compute_id
@@ -2172,7 +2185,7 @@ msgstr ""
#: model:ir.model.fields,field_description:stock.field_stock_picking_type_id
#: model:ir.model.fields,field_description:stock.field_stock_production_lot_id
#: model:ir.model.fields,field_description:stock.field_stock_quant_id
-#: model:ir.model.fields,field_description:stock.field_stock_quant_package_id_8184
+#: model:ir.model.fields,field_description:stock.field_stock_quant_package_id_8488
#: model:ir.model.fields,field_description:stock.field_stock_return_picking_id
#: model:ir.model.fields,field_description:stock.field_stock_return_picking_line_id
#: model:ir.model.fields,field_description:stock.field_stock_warehouse_id
@@ -2181,7 +2194,7 @@ msgid "ID"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3174
+#: code:addons/stock/stock.py:3177
#, python-format
msgid "INV:"
msgstr ""
@@ -2298,9 +2311,16 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "If you configured automatic procurement, Odoo will automatically generate\n"
+msgid "If you are a developer you can use our\n"
+" API to load data automatically through\n"
+" scripts: take a look at our"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "If you configured automatic procurement, Odoo automatically generates\n"
" Procurements Orders. You usually don't need to worry about them, but\n"
-" sometimes, the system can remain blocked without generating a\n"
+" sometimes the system can remain blocked without generating a\n"
" corresponding document, usually due to a configuration problem."
msgstr ""
@@ -2311,7 +2331,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "If you have less than 50 vendors, we recommand you\n"
+msgid "If you have less than 50 vendors, we recommend you\n"
" to create them manually."
msgstr ""
@@ -2350,14 +2370,9 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "In Odoo, Reordering Rules can be used to replenish your products: Odoo will automatically propose a procurement to buy new products if you are running out of stock."
-msgstr ""
-
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "In Odoo, inventory management is fully integrated with the sales and\n"
-" invoicing process. That means you can automate everything from the initial\n"
-" quotation, to the goods delivery and final invoice."
+msgid "In Odoo, Reordering Rules are used to replenish your products.\n"
+" Odoo will automatically propose a procurement to buy new products if you are\n"
+" running out of stock."
msgstr ""
#. module: stock
@@ -2377,14 +2392,14 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "In case of unique serial numbers, each serial number will correspond\n"
+msgid "In case of unique serial numbers, each serial number corresponds\n"
" to exactly one piece. In case of lots, you need to supply the quantity\n"
" for each lot when you move that product."
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "In short, you will get a more efficient warehouse management that will lead\n"
+msgid "In short, you will get a more efficient warehouse management that leads\n"
" to inventory reduction and better efficiencies in your daily operations."
msgstr ""
@@ -2445,7 +2460,7 @@ msgid "Initial Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3752
+#: code:addons/stock/stock.py:3755
#: model:stock.location,name:stock.stock_location_company
#, python-format
msgid "Input"
@@ -2490,7 +2505,7 @@ msgid "Internal Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3677
+#: code:addons/stock/stock.py:3680
#: model:stock.picking.type,name:stock.picking_type_internal
#, python-format
msgid "Internal Transfers"
@@ -2692,10 +2707,15 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "It is therefore a good idea to check and try to resolve those procurement\n"
-" exceptions, accessible from the Schedulers menu (you need the Stock\n"
+" exceptions. These are accessible from the Schedulers menu (you need the Stock\n"
" Manager role to see it)."
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "It is time to make your initial Inventory. In order to do so:"
+msgstr ""
+
#. module: stock
#: model:ir.model.fields,help:stock.field_stock_move_product_packaging
msgid "It specifies attributes of packaging like type, quantity of packaging,etc."
@@ -2706,11 +2726,6 @@ msgstr ""
msgid "It specifies goods to be deliver partially or all at once"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "It's time to make your initial Inventory. To do so:"
-msgstr ""
-
#. module: stock
#: model:ir.model.fields,field_description:stock.field_stock_picking_type_last_done_picking
msgid "Last 10 Done Pickings"
@@ -2824,7 +2839,7 @@ msgid "Last Updated on"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4727
+#: code:addons/stock/stock.py:4730
#: model:ir.ui.view,arch_db:stock.stock_picking_type_kanban
#: model:ir.ui.view,arch_db:stock.view_picking_internal_search
#, python-format
@@ -2873,6 +2888,12 @@ msgstr ""
msgid "Let this field empty if this location is shared between companies"
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "Like with the sales flow, Odoo inventory management is\n"
+" fully integrated with the purchase app."
+msgstr ""
+
#. module: stock
#: model:ir.model,name:stock.model_stock_move_operation_link
msgid "Link between stock moves and pack operations"
@@ -2987,7 +3008,7 @@ msgid "Lot BarCode"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4470
+#: code:addons/stock/stock.py:4473
#, python-format
msgid "Lot Details"
msgstr ""
@@ -3041,8 +3062,8 @@ msgstr ""
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "Lots can be encoded on incoming shipments, internal transfers and\n"
" outgoing deliveries according to the settings in the picking type.\n"
-" For every product, you can define if it does not do any lot tracking at all,\n"
-" if it tracks by lot, or by unique serial number."
+" The tracking can be configured on every product: not any tracing at\n"
+" all, tracking by lot, or tracking by unique serial number."
msgstr ""
#. module: stock
@@ -3056,7 +3077,7 @@ msgid "Make Procurements"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3460
+#: code:addons/stock/stock.py:3463
#: model:stock.location.route,name:stock.route_warehouse0_mto
#, python-format
msgid "Make To Order"
@@ -3438,12 +3459,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Now a similar exercise but for a purchase flow."
-msgstr ""
-
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Now, all your products have their quantity set correctly."
+msgid "Now, all your product quantities are correctly set."
msgstr ""
#. module: stock
@@ -3480,20 +3496,14 @@ msgid "Number of unread messages"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4731
+#: code:addons/stock/stock.py:4734
#, python-format
msgid "OK"
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Odoo can manage advanced push/pull routes configuration, for example:"
-msgstr ""
-
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Odoo can run advanced traceability by using Product Lots and Serial\n"
-" Numbers, usually identified by bar codes stuck on the products."
+msgid "Odoo handles advanced push/pull routes configuration, for example:"
msgstr ""
#. module: stock
@@ -3503,7 +3513,20 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Of course, feel free to add your own; just remember that Odoo can convert units within the same category (for example, liters to gallons in the volume category)"
+msgid "Odoo inventory management is fully integrated with sales and\n"
+" invoicing process. Everything is automated from the initial\n"
+" quotation to the delivery and the final invoice."
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "Odoo is able to run advanced traceability by using Product Lots and Serial\n"
+" Numbers, usually identified by bar codes stuck on the products."
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "Of course, feel free to add your own. Please note that Odoo is able to convert units within the same category, for example, liters to gallons in the volume category"
msgstr ""
#. module: stock
@@ -3524,29 +3547,29 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Once it's fully working, give us some feedback: we love to hear from our customer. It would be great if you can send a photo of your warehouse to"
+msgid "Once it's fully working, give us some feedback: we love to hear from our customer. It would be great if you could send us a photo of your warehouse to"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2876
+#: code:addons/stock/stock.py:2879
#, python-format
msgid "One Lot/Serial Number"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2873
+#: code:addons/stock/stock.py:2876
#, python-format
msgid "One owner only"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2874
+#: code:addons/stock/stock.py:2877
#, python-format
msgid "One product for a specific owner"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2864
+#: code:addons/stock/stock.py:2867
#, python-format
msgid "One product only"
msgstr ""
@@ -3562,7 +3585,7 @@ msgid "Operation"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4487
+#: code:addons/stock/stock.py:4490
#, python-format
msgid "Operation Details"
msgstr ""
@@ -3663,7 +3686,7 @@ msgid "Outgoing Shippings"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3754
+#: code:addons/stock/stock.py:3757
#: model:stock.location,name:stock.stock_location_output
#, python-format
msgid "Output"
@@ -3707,7 +3730,7 @@ msgid "P&L Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3689
+#: code:addons/stock/stock.py:3692
#: model:ir.model.fields,field_description:stock.field_stock_inventory_line_package_id
#: model:ir.model.fields,field_description:stock.field_stock_picking_pack_operation_pack_ids
#, python-format
@@ -3805,7 +3828,7 @@ msgid "Packing Operation"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3755
+#: code:addons/stock/stock.py:3758
#: model:stock.location,name:stock.location_pack_zone
#, python-format
msgid "Packing Zone"
@@ -3891,19 +3914,19 @@ msgid "Physical Packages"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3701
+#: code:addons/stock/stock.py:3704
#, python-format
msgid "Pick"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3806
+#: code:addons/stock/stock.py:3809
#, python-format
msgid "Pick + Pack + Ship"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3805
+#: code:addons/stock/stock.py:3808
#, python-format
msgid "Pick + Ship"
msgstr ""
@@ -4347,7 +4370,7 @@ msgid "Qty Multiple must be greater than or equal to zero."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3753
+#: code:addons/stock/stock.py:3756
#, python-format
msgid "Quality Control"
msgstr ""
@@ -4480,25 +4503,25 @@ msgid "Receipt Route"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3800
+#: code:addons/stock/stock.py:3803
#, python-format
msgid "Receipt in 1 step"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3801
+#: code:addons/stock/stock.py:3804
#, python-format
msgid "Receipt in 2 steps"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3802
+#: code:addons/stock/stock.py:3805
#, python-format
msgid "Receipt in 3 steps"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3653
+#: code:addons/stock/stock.py:3656
#: model:ir.actions.act_window,name:stock.action_receive_move
#: model:ir.ui.view,arch_db:stock.product_kanban_stock_view
#: model:stock.picking.type,name:stock.chi_picking_type_in
@@ -4880,7 +4903,7 @@ msgid "Search Stock Location Paths"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2864
+#: code:addons/stock/stock.py:2867
#, python-format
msgid "Select products manually"
msgstr ""
@@ -4981,7 +5004,7 @@ msgid "Shelves (Y)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3804
+#: code:addons/stock/stock.py:3807
#, python-format
msgid "Ship Only"
msgstr ""
@@ -5109,7 +5132,7 @@ msgid "Status"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3751
+#: code:addons/stock/stock.py:3754
#: model:stock.location,name:stock.stock_location_shop0
#: model:stock.location,name:stock.stock_location_stock
#, python-format
@@ -5307,6 +5330,11 @@ msgstr ""
msgid "The 'Automatic Move' / 'Manual Operation' value will create a stock move after the current one. With 'Automatic No Step Added', the location is replaced in the original move."
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "The RFQ becomes a Purchase Order and a Transfer Order is created"
+msgstr ""
+
#. module: stock
#: model:ir.model.fields,help:stock.field_product_product_sale_delay
#: model:ir.model.fields,help:stock.field_product_template_sale_delay
@@ -5319,7 +5347,7 @@ msgid "The barcode for a location must be unique per company !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4313
+#: code:addons/stock/stock.py:4316
#, python-format
msgid "The chosen quantity for product %s is not compatible with the UoM rounding. It will be automatically converted at confirmation"
msgstr ""
@@ -5345,7 +5373,7 @@ msgid "The date that will be used for the stock level check of the products and
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3937
+#: code:addons/stock/stock.py:3940
#, python-format
msgid "The default resupply warehouse should be different than the warehouse itself!"
msgstr ""
@@ -5420,11 +5448,16 @@ msgid "The push rule that created this stock move"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4418
+#: code:addons/stock/stock.py:4421
#, python-format
msgid "The quantity to split should be smaller than the quantity To Do. "
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "The quotation becomes a Sale Order and a Transfer Order is created"
+msgstr ""
+
#. module: stock
#: code:addons/stock/stock.py:1884
#, python-format
@@ -5438,7 +5471,7 @@ msgid "The roundings of your Unit of Measures %s on the move vs. %s on the produ
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4306
+#: code:addons/stock/stock.py:4309
#, python-format
msgid "The selected UoM for product %s is not compatible with the UoM set on the product form. \n"
"Please choose an UoM within the same UoM category."
@@ -5509,13 +5542,13 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "This guide will help you get started with Odoo Inventory.\n"
+msgid "This guide helps getting started with Odoo Inventory.\n"
" Once you are done, you will benefit from:"
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "This is quite complex to set up, so contact your Projet Manager and he will take care of this for you"
+msgid "This is quite complex to set up, so contact your Project Manager to address this."
msgstr ""
#. module: stock
@@ -5643,13 +5676,9 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "To better understand a complete sales flow, follow these steps:"
-msgstr ""
-
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "To check the trajectory of a lot, you can find it back in Inventory Control > Serial Numbers\n"
-" and then Traceability or you can filter the Quantitative Valuation of a product with a certain lot."
+msgid "To check the trajectory of a lot, find it back in Inventory Control > Serial Numbers / lots.\n"
+" Choose a Lo t in the list and click on Traceabilityi>. You may also\n"
+" filter the Quantitative Valuation of a product with a certain lot."
msgstr ""
#. module: stock
@@ -5657,11 +5686,6 @@ msgstr ""
msgid "To create them, click on Reordering on"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "To use Lot Tracking:"
-msgstr ""
-
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "To use more precise units like pounds or kilograms, activate Some products may be sold/purchased in different unit of measures (advanced) in the"
@@ -5711,7 +5735,7 @@ msgid "Tracking"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2832
+#: code:addons/stock/stock.py:2835
#: model:ir.model,name:stock.model_stock_picking
#: model:ir.ui.view,arch_db:stock.stock_picking_type_kanban
#: model:ir.ui.view,arch_db:stock.view_picking_form
@@ -5822,14 +5846,14 @@ msgid "Units of Measures"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4166
+#: code:addons/stock/stock.py:4169
#, python-format
msgid "Unknown Pack"
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Unless you are starting a new business, you probably have a list of vendors you'd like to import."
+msgid "Unless you are starting a new business, you probably have a list of vendors you would like to import."
msgstr ""
#. module: stock
@@ -6078,7 +6102,7 @@ msgid "Warehouse to consider for the route selection"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:3974
+#: code:addons/stock/stock.py:3977
#, python-format
msgid "Warehouse's Routes"
msgstr ""
@@ -6099,20 +6123,20 @@ msgid "Warning!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4305
+#: code:addons/stock/stock.py:4308
#, python-format
msgid "Warning: wrong UoM!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4312
+#: code:addons/stock/stock.py:4315
#, python-format
msgid "Warning: wrong quantity!"
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "We can handle the whole import process\n"
+msgid "We handle the whole import process\n"
" for you: simply send your Odoo project\n"
" manager a CSV file containing all your\n"
" data."
@@ -6120,7 +6144,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "We can handle the whole import process\n"
+msgid "We handle the whole import process\n"
" for you: simply send your Odoo project\n"
" manager a CSV file containing all your\n"
" products."
@@ -6165,7 +6189,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "When everyting is set, click on Start Inventory"
+msgid "When everything is set, click on Start Inventory"
msgstr ""
#. module: stock
@@ -6247,7 +6271,7 @@ msgid "You can not change the unit of measure of a product that has already been
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4429
+#: code:addons/stock/stock.py:4432
#, python-format
msgid "You can not delete pack operations of a done picking"
msgstr ""
@@ -6264,6 +6288,11 @@ msgstr ""
msgid "You can only delete draft moves."
msgstr ""
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "You can review and edit the predefined units via the"
+msgstr ""
+
#. module: stock
#: code:addons/stock/stock.py:2435
#, python-format
@@ -6277,7 +6306,7 @@ msgid "You cannot move to a location of type view %s."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2943
+#: code:addons/stock/stock.py:2946
#, python-format
msgid "You cannot set a negative product quantity in an inventory line:\n"
" %s - qty: %s"
@@ -6359,7 +6388,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/stock.py:2320
-#: code:addons/stock/stock.py:4440
+#: code:addons/stock/stock.py:4443
#, python-format
msgid "You need to provide a Lot/Serial Number for product %s"
msgstr ""
@@ -6371,7 +6400,7 @@ msgid "You should only receive by the piece with the same serial number"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:4444
+#: code:addons/stock/stock.py:4447
#, python-format
msgid "You should provide a different serial number for each piece"
msgstr ""
@@ -6401,11 +6430,6 @@ msgstr ""
msgid "Your Warehouse"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "Your can review and edit the pre-defined units via the"
-msgstr ""
-
#. module: stock
#: model:ir.ui.view,arch_db:stock.view_change_product_quantity
#: model:ir.ui.view,arch_db:stock.view_immediate_transfer
@@ -6419,26 +6443,11 @@ msgstr ""
msgid "_Cancel"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "a Purchase Order and a Transfer Order have been created"
-msgstr ""
-
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "a Sale Order and a Transfer Order have been created"
-msgstr ""
-
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "a stockable Product"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "and print the invoice."
-msgstr ""
-
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
msgid "and simply enter a minimum and maximum quantity."
@@ -6478,12 +6487,12 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "either by processing it one line at a time by clicking on the button, or as a whole with the Validate button"
+msgid "either by manually updating the Done quantity on the product lines, or let Odoo do it automatically while validating"
msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "either manually by clicking on the button on the product lines, or scan them with the Odoo Barcode app"
+msgid "either by manually updating the Done quantity on the product lines, or scan them with the Odoo Barcode app, or let Odoo do it automatically while validating"
msgstr ""
#. module: stock
@@ -6493,7 +6502,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "for a customer and add some products"
+msgid "for a customer and add products"
msgstr ""
#. module: stock
@@ -6504,7 +6513,12 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "in the list"
+msgid "from your vendor with the products and the requested quantities"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "is displayed on the transfer if your products supply chain is properly configured. Otherwise, Check the availability manually"
msgstr ""
#. module: stock
@@ -6524,7 +6538,12 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "on the form to get the Transfer Order"
+msgid "on the purchase order form or click on Receive Products to see the Transfer Order"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.view,arch_db:stock.inventory_planner
+msgid "on the sale order form to see Transfer Order"
msgstr ""
#. module: stock
@@ -6537,11 +6556,6 @@ msgstr ""
msgid "report.stock.forecast"
msgstr ""
-#. module: stock
-#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "shoud be displayed on the transfer if your products supply chain is properly configured. Otherwise, Check the availability manually"
-msgstr ""
-
#. module: stock
#: model:ir.model,name:stock.model_stock_config_settings
msgid "stock.config.settings"
@@ -6611,7 +6625,7 @@ msgstr ""
#. module: stock
#: model:ir.ui.view,arch_db:stock.inventory_planner
-msgid "with the products and their desired quantities to your vendor"
+msgid "with the Validate button"
msgstr ""
#. module: stock
@@ -6623,4 +6637,3 @@ msgstr ""
#: model:ir.ui.view,arch_db:stock.view_inventory_form
msgid "⇒ Set quantities to 0"
msgstr ""
-
diff --git a/addons/stock/web_planner.py b/addons/stock/web_planner.py
index 016cfa9d472..9662aab8041 100644
--- a/addons/stock/web_planner.py
+++ b/addons/stock/web_planner.py
@@ -12,6 +12,6 @@ class PlannerInventory(models.Model):
return planner
def _prepare_planner_inventory_data(self):
+ # TDE note: void method kept (stable version), probably to remove in master
return {
- 'uom_menu_id': self.env.ref('stock.menu_stock_uom_form_action').id
}
From e5d5737ddec0212c7d3a91cf79ca12bb74f69ef9 Mon Sep 17 00:00:00 2001
From: Denis Ledoux
Date: Thu, 5 Nov 2015 17:18:11 +0100
Subject: [PATCH 41/56] [FIX] sale, sale_stock: incoterms configuration
The incoterms features (and group) are available upon the
installation of the `sale_stock` module.
The configuration to enable this feature should therefore
be in the Sales configuration only when this module is installed.
Otherwise, it just has no effect.
opw-653970
---
addons/sale/res_config.py | 6 ------
addons/sale/res_config_view.xml | 1 -
addons/sale_stock/res_config.py | 6 ++++++
addons/sale_stock/res_config_view.xml | 3 +++
4 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/addons/sale/res_config.py b/addons/sale/res_config.py
index b2f2c51e552..2489e377f9a 100644
--- a/addons/sale/res_config.py
+++ b/addons/sale/res_config.py
@@ -34,12 +34,6 @@ class sale_configuration(osv.TransientModel):
(1, 'Allow discounts on sales order lines')
], "Discount",
implied_group='sale.group_discount_per_so_line'),
- 'group_display_incoterm':fields.selection([
- (0, 'No incoterm on reports'),
- (1, 'Show incoterms on sale orders and invoices')
- ], "Incoterms",
- implied_group='sale.group_display_incoterm',
- help="The printed reports will display the incoterms for the sale orders and the related invoices"),
'module_sale_margin': fields.selection([
(0, 'Salespeople do not need to view margins when quoting'),
(1, 'Display margins on quotations and sales orders')
diff --git a/addons/sale/res_config_view.xml b/addons/sale/res_config_view.xml
index 3ff132e5986..96cb7bb5bd4 100644
--- a/addons/sale/res_config_view.xml
+++ b/addons/sale/res_config_view.xml
@@ -15,7 +15,6 @@
-
diff --git a/addons/sale_stock/res_config.py b/addons/sale_stock/res_config.py
index 6cba692be88..415ac351290 100644
--- a/addons/sale_stock/res_config.py
+++ b/addons/sale_stock/res_config.py
@@ -27,6 +27,12 @@ class SaleConfiguration(models.TransientModel):
(1, 'Choose specific routes on sales order lines (advanced)')
], "Order Routing",
implied_group='sale_stock.group_route_so_lines')
+ group_display_incoterm = fields.Selection([
+ (0, 'No incoterm on reports'),
+ (1, 'Show incoterms on sale orders and invoices')
+ ], "Incoterms",
+ implied_group='sale.group_display_incoterm',
+ help="The printed reports will display the incoterms for the sale orders and the related invoices")
@api.multi
def get_default_sale_config(self):
diff --git a/addons/sale_stock/res_config_view.xml b/addons/sale_stock/res_config_view.xml
index 1babd1df644..b48ae414145 100644
--- a/addons/sale_stock/res_config_view.xml
+++ b/addons/sale_stock/res_config_view.xml
@@ -15,6 +15,9 @@
+
+
+
From fddbe4076b4238bdace5817f8bdd82c584c50acf Mon Sep 17 00:00:00 2001
From: Denis Ledoux
Date: Thu, 5 Nov 2015 17:24:02 +0100
Subject: [PATCH 42/56] Revert "[FIX] sale, sale_stock: incoterms
configuration"
This partially reverts commit e5d5737ddec0212c7d3a91cf79ca12bb74f69ef9.
Changes in the database structure is not allowed in stable release.
Therefore, only the display of this configuration should be moved.
---
addons/sale/res_config.py | 6 ++++++
addons/sale_stock/res_config.py | 6 ------
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/addons/sale/res_config.py b/addons/sale/res_config.py
index 2489e377f9a..b2f2c51e552 100644
--- a/addons/sale/res_config.py
+++ b/addons/sale/res_config.py
@@ -34,6 +34,12 @@ class sale_configuration(osv.TransientModel):
(1, 'Allow discounts on sales order lines')
], "Discount",
implied_group='sale.group_discount_per_so_line'),
+ 'group_display_incoterm':fields.selection([
+ (0, 'No incoterm on reports'),
+ (1, 'Show incoterms on sale orders and invoices')
+ ], "Incoterms",
+ implied_group='sale.group_display_incoterm',
+ help="The printed reports will display the incoterms for the sale orders and the related invoices"),
'module_sale_margin': fields.selection([
(0, 'Salespeople do not need to view margins when quoting'),
(1, 'Display margins on quotations and sales orders')
diff --git a/addons/sale_stock/res_config.py b/addons/sale_stock/res_config.py
index 415ac351290..6cba692be88 100644
--- a/addons/sale_stock/res_config.py
+++ b/addons/sale_stock/res_config.py
@@ -27,12 +27,6 @@ class SaleConfiguration(models.TransientModel):
(1, 'Choose specific routes on sales order lines (advanced)')
], "Order Routing",
implied_group='sale_stock.group_route_so_lines')
- group_display_incoterm = fields.Selection([
- (0, 'No incoterm on reports'),
- (1, 'Show incoterms on sale orders and invoices')
- ], "Incoterms",
- implied_group='sale.group_display_incoterm',
- help="The printed reports will display the incoterms for the sale orders and the related invoices")
@api.multi
def get_default_sale_config(self):
From ed11d79bd8839c287eb71a0ae02512d5107350b6 Mon Sep 17 00:00:00 2001
From: Christophe Simonis
Date: Thu, 5 Nov 2015 17:57:48 +0100
Subject: [PATCH 43/56] [IMP] web_settings_dashboard: speed up Inviation
dashboard
Searching on `log_ids` field is slow when there is a lot of users.
Count the number of active/pending users directly in sql.
Only show the last 10 pending users. Add a link to the full list view.
---
.../controllers/main.py | 29 +++++++++++++++----
.../static/src/js/dashboard.js | 15 ++++++++++
.../static/src/xml/dashboard.xml | 4 +++
3 files changed, 43 insertions(+), 5 deletions(-)
diff --git a/addons/web_settings_dashboard/controllers/main.py b/addons/web_settings_dashboard/controllers/main.py
index c40cc476ac0..1f6985e295a 100644
--- a/addons/web_settings_dashboard/controllers/main.py
+++ b/addons/web_settings_dashboard/controllers/main.py
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
from openerp import http
+from openerp.exceptions import AccessError
from openerp.http import request
@@ -8,21 +9,39 @@ class WebSettingsDashboard(http.Controller):
@http.route('/web_settings_dashboard/data', type='json', auth='user')
def web_settings_dashboard_data(self, **kw):
+ if not request.env.user.has_group('base.group_erp_manager'):
+ raise AccessError("Access Denied")
installed_apps = request.env['ir.module.module'].search_count([
- ('application', '=', True),
+ ('application', '=', True),
('state', 'in', ['installed', 'to upgrade', 'to remove'])
])
- active_users = request.env['res.users'].search_count([('active', '=', True), ('log_ids', '!=', False)])
- pending_users = request.env['res.users'].search([('log_ids', '=', False)], order="create_date desc")
+ cr = request.cr
+ cr.execute("""
+ SELECT exists(SELECT 1 FROM res_users_log WHERE create_uid=u.id), count(1)
+ FROM res_users u
+ WHERE active=true
+ GROUP BY 1
+ """)
+ counts = dict(cr.fetchall())
+ cr.execute("""
+ SELECT id, login
+ FROM res_users u
+ WHERE active=true
+ AND NOT exists(SELECT 1 FROM res_users_log WHERE create_uid=u.id)
+ ORDER BY id desc
+ LIMIT 10
+ """)
+ pending_users = cr.fetchall()
return {
'apps': {
'installed_apps': installed_apps
},
'users_info': {
- 'active_users': active_users,
- 'pending_users': zip(pending_users.mapped('id'), pending_users.mapped('login')),
+ 'active_users': counts[True],
+ 'pending_count': counts[False],
+ 'pending_users': pending_users,
'user_form_view_id': request.env['ir.model.data'].xmlid_to_res_id("base.view_users_form"),
},
}
diff --git a/addons/web_settings_dashboard/static/src/js/dashboard.js b/addons/web_settings_dashboard/static/src/js/dashboard.js
index 7fef9cae252..d31972a36ca 100644
--- a/addons/web_settings_dashboard/static/src/js/dashboard.js
+++ b/addons/web_settings_dashboard/static/src/js/dashboard.js
@@ -72,6 +72,7 @@ var DashboardInvitations = Widget.extend({
'click .o_web_settings_dashboard_invitations': 'send_invitations',
'click .o_web_settings_dashboard_access_rights': 'on_access_rights_clicked',
'click .o_web_settings_dashboard_user': 'on_user_clicked',
+ 'click .o_web_settings_dashboard_more': 'on_more',
},
init: function(parent, data){
this.data = data;
@@ -132,6 +133,20 @@ var DashboardInvitations = Widget.extend({
on_reverse_breadcrumb: function(){ return self.reload();}
});
},
+ on_more: function(e) {
+ e.preventDefault();
+ var action = {
+ type: 'ir.actions.act_window',
+ view_type: 'form',
+ view_mode: 'tree,form',
+ res_model: 'res.users',
+ domain: [['log_ids', '=', false]],
+ views: [[false, 'list'], [false, 'form']],
+ };
+ this.do_action(action,{
+ on_reverse_breadcrumb: function(){ return self.reload();}
+ });
+ },
reload:function(){
return this.parent.load(['invitations']);
},
diff --git a/addons/web_settings_dashboard/static/src/xml/dashboard.xml b/addons/web_settings_dashboard/static/src/xml/dashboard.xml
index 160664f7c5e..5c8a0fd45e4 100644
--- a/addons/web_settings_dashboard/static/src/xml/dashboard.xml
+++ b/addons/web_settings_dashboard/static/src/xml/dashboard.xml
@@ -66,6 +66,10 @@
+
+
+ more
+
From 8e56b0114b7ff15ec1694f23ff87bd28f3d7d53b Mon Sep 17 00:00:00 2001
From: Christophe Simonis