[MERGE] Fix copy_data for merge
[odoo/odoo.git] / addons / stock / stock_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5         <!-- Top menu item -->
6         <menuitem name="Warehouse"
7             id="menu_stock_root"
8             groups="group_stock_manager,group_stock_user"
9             sequence="70"/>
10
11         <menuitem id="menu_stock_warehouse_mgmt" name="Operations" parent="menu_stock_root" sequence="1"/>
12         <menuitem id="menu_stock_product" name="Products" parent="menu_stock_root" sequence="6"/>
13         <menuitem name="Products by Category" id="menu_product_by_category_stock_form" action="product.product_category_action"
14             parent="stock.menu_stock_product" sequence="0" groups="base.group_no_one"/>
15         <menuitem action="product.product_template_action" id="menu_stock_products_menu" parent="menu_stock_product" sequence="1"/>
16         <menuitem id="menu_stock_configuration" name="Configuration" parent="menu_stock_root" sequence="15" groups="group_stock_manager"/>
17         <menuitem id="menu_warehouse_config" name="Warehouse Management" parent="menu_stock_configuration" sequence="40" groups="base.group_no_one"/>
18         <menuitem id="menu_stock_inventory_control" name="Inventory Control" parent="menu_stock_root" sequence="2"/>
19         <menuitem
20             id="menu_product_in_config_stock" name="Products"
21             parent="stock.menu_stock_configuration" sequence="45" groups="base.group_no_one"/>
22         <menuitem
23             action="product.product_category_action_form" id="menu_product_category_config_stock"
24             parent="stock.menu_product_in_config_stock" sequence="0"/>
25         <menuitem
26             action="product.product_normal_action" id="menu_product_variant_config_stock"
27             parent="stock.menu_product_in_config_stock" sequence="2"/>
28         <menuitem
29             action="product.product_template_action" id="menu_product_template_config_stock"
30             parent="stock.menu_product_in_config_stock" sequence="1"/>
31         <menuitem
32             action="product.product_ul_form_action" groups="product.group_stock_packaging"
33             id="menu_product_packaging_stock_action" parent="stock.menu_product_in_config_stock" sequence="3"/>
34         <menuitem
35             id="menu_stock_unit_measure_stock" name="Units of Measure"
36             parent="stock.menu_product_in_config_stock"  sequence="35" groups="product.group_uom"/>
37         <menuitem
38             action="product.product_uom_categ_form_action" id="menu_stock_uom_categ_form_action"
39             parent="menu_stock_configuration" sequence="30" groups="product.group_uom"/>
40         <menuitem
41             action="product.product_uom_form_action" id="menu_stock_uom_form_action"
42             parent="menu_stock_configuration" sequence="35" groups="product.group_uom"/>
43
44         <record id="stock_inventory_line_tree" model="ir.ui.view">
45             <field name="name">stock.inventory.line.tree</field>
46             <field name="model">stock.inventory.line</field>
47             <field name="arch" type="xml">
48                 <tree string="Stock Inventory Lines">
49                     <field name="product_id"/>
50                     <field name="product_qty"/>
51                     <field name="product_uom_id" groups="product.group_uom"/>
52                     <field name="location_id" groups="stock.group_locations"/>
53                 </tree>
54             </field>
55         </record>
56
57          <record id="view_inventory_filter" model="ir.ui.view">
58             <field name="name">stock.inventory.filter</field>
59             <field name="model">stock.inventory</field>
60             <field name="arch" type="xml">
61                 <search string="Search Inventory">
62                     <field name="name" string="Inventory Reference"/>
63                     <field name="date"/>
64                     <field name="company_id" groups="base.group_multi_company"/>
65                     <group expand="0" string="Group By">
66                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
67                         <filter string="Inventories Month" icon="terp-go-month" domain="[]" context="{'group_by':'date'}" help="Physical Inventories by Month"/>
68                     </group>
69                 </search>
70
71             </field>
72         </record>
73
74         <record id="view_inventory_tree" model="ir.ui.view">
75             <field name="name">stock.inventory.tree</field>
76             <field name="model">stock.inventory</field>
77             <field name="arch" type="xml">
78                 <tree string="Lot Inventory" colors="grey:state == 'cancel'">
79                     <field name="name"/>
80                     <field name="date"/>
81                     <field name="state"/>
82                 </tree>
83             </field>
84         </record>
85
86         <record id="view_inventory_form" model="ir.ui.view">
87             <field name="name">stock.inventory.form</field>
88             <field name="model">stock.inventory</field>
89             <field name="arch" type="xml">
90                 <form string="Inventory Adjustment">
91                 <header>
92                     <button name="prepare_inventory" states="draft" string="Start Inventory" type="object" class="oe_highlight" groups="stock.group_stock_user"/>
93                     <button name="action_done" states="confirm" string="Validate Inventory" type="object" class="oe_highlight" groups="stock.group_stock_manager"/>
94                     <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object"/>
95                     <button name="action_cancel_inventory" states="confirm" string="Cancel Inventory" type="object"/>
96                     <field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>
97                 </header>
98                 <sheet>
99                     <div class="oe_title">
100                         <label for="name" class="oe_edit_only"/>
101                         <h1><field name="name" placeholder="e.g. Annual inventory"/></h1>
102                     </div>
103                     <group>
104                         <group>
105                             <field name="location_id"/>
106                             <field name="filter" string="Inventory of" widget='radio' attrs="{'readonly': [('state', '!=', 'draft')]}"/>
107                         </group>
108                         <group>
109                             <field name="date"/>
110                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
111                             <field name="product_id" domain="[('type','=','product')]" attrs="{'invisible': [('filter', 'not in', ('product', 'product_owner'))]}"/>
112                             <field name="lot_id" attrs="{'invisible': [('filter', '!=', 'lot')]}" groups="stock.group_production_lot" />
113                             <field name="partner_id" attrs="{'invisible': [('filter', 'not in', ('owner', 'product_owner'))]}" groups="stock.group_tracking_owner"/>
114                             <field name="package_id" attrs="{'invisible': [('filter', '!=', 'pack')]}" groups="stock.group_tracking_lot"/>
115                         </group>
116                     </group>
117                     <notebook attrs="{'invisible':[('state','=','draft')]}">
118                         <page string="Inventory Details" >
119                             <button name="reset_real_qty" states="confirm" string="⇒ Set quantities to 0" type="object" class="oe_link oe_right" groups="stock.group_stock_user"/>
120                             <field name="line_ids" string="Inventory Details" context="{'default_location_id': location_id,  'default_product_id': product_id, 'default_prod_lot_id': lot_id, 'default_package_id': package_id, 'default_partner_id': partner_id}">
121                                 <tree string="Inventory Details" editable="bottom" colors="blue: product_qty != theoretical_qty; red: theoretical_qty &lt; 0">
122                                     <field context="{'location':location_id, 'uom':product_uom_id, 'to_date':parent.date}" name="product_id" on_change="on_change_product_id(product_id,product_uom_id,theoretical_qty,context)" domain="[('type','=','product')]"/>
123                                     <field name="product_uom_id" groups="product.group_uom" on_change="restrict_change(theoretical_qty)"/>
124                                     <field domain="[('usage','=','internal')]" name="location_id" groups="stock.group_locations" on_change="restrict_change(theoretical_qty)"/>
125                                     <field name="prod_lot_id" on_change="restrict_change(theoretical_qty)" domain="[('product_id', '=', product_id)]" context="{'default_product_id': product_id}"  groups="stock.group_production_lot"/>
126                                     <field name="package_id" on_change="restrict_change(theoretical_qty)" groups="stock.group_tracking_lot"/>
127                                     <field name="partner_id" on_change="restrict_change(theoretical_qty)" groups="stock.group_tracking_owner"/>
128                                     <field name="theoretical_qty" readonly="1"/>
129                                     <field name="product_qty" string="Real Quantity"/>
130                                     <field name="state" invisible="True"/>
131                                 </tree>
132                             </field>
133                             <p></p>
134                             <h3 class="oe_grey">Notes</h3>
135                             <ul class="oe_grey"><li>Inventory adjustments will be made by comparing the theoretical and the checked quantities.</li>
136                             <li>You can delete lines to ignore some products.</li>
137                             <li>If a product is not at the right place, set the checked quantity to 0 and create a new line with correct location.</li>
138                             </ul>
139                         </page>
140                         <page string="Inventory Adjustments" attrs="{'invisible': [('state', '!=', 'done')]}">
141                             <field name="move_ids">
142                                 <tree colors="grey:scrapped == True" string="Stock Moves">
143                                     <field name="product_id"/>
144                                     <field name="product_uom_qty" on_change="onchange_quantity(product_id, product_uom_qty, product_uom, product_uos)"/>
145                                     <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
146                                     <field name="product_uos" groups="product.group_uos"/>
147                                     <field name="picking_id" invisible="1" />
148                                     <field name="create_date" invisible="1" />
149                                     <field name="date_expected" invisible="1" />
150                                     <button name="%(stock.move_scrap)d"
151                                        string="Scrap Products" type="action"
152                                        icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
153                                        states="draft,waiting,confirmed,assigned"
154                                        groups="base.group_user"/>
155                                     <field name="scrapped" invisible="1"/>
156                                     <field name="location_id"/>
157                                     <field name="location_dest_id"/>
158                                     <field name="state"/>
159                                 </tree>
160                             </field>
161                         </page>
162                     </notebook>
163                 </sheet>
164                 </form>
165             </field>
166         </record>
167
168         <record id="action_inventory_form" model="ir.actions.act_window">
169             <field name="name">Inventory Adjustments</field>
170             <field name="type">ir.actions.act_window</field>
171             <field name="res_model">stock.inventory</field>
172             <field name="view_type">form</field>
173             <field name="view_id" ref="view_inventory_tree"/>
174             <field name="search_view_id" ref="view_inventory_filter"/>
175             <field name="help" type="html">
176               <p class="oe_view_nocontent_create">
177                 Click to start an inventory. 
178               </p><p>
179                 Periodical Inventories are used to count the number of products
180                 available per location. You can use it once a year when you do
181                 the general inventory or whenever you need it, to adapt the
182                 current inventory level of a product.
183               </p>
184             </field>
185         </record>
186         <menuitem action="action_inventory_form" id="menu_action_inventory_form" parent="menu_stock_inventory_control" sequence="30"/>
187
188
189         <menuitem id="menu_traceability" name="Traceability" parent="menu_stock_root" 
190             sequence="3"/>
191
192         <record id="view_production_lot_form" model="ir.ui.view">
193             <field name="name">stock.production.lot.form</field>
194             <field name="model">stock.production.lot</field>
195             <field name="arch" type="xml">
196                 <form string="Serial Number">
197                     <div class="oe_button_box oe_right">
198                         <button name="action_traceability" icon="fa-arrow-up" class="oe_stat_button" string="Traceability" type="object" attrs="{'invisible': [('quant_ids','=',[])]}"/>
199                     </div>
200                     <div class="oe_title">
201                         <label for="name" class="oe_edit_only"/>
202                         <h1>
203                             <field name="name"/>
204                         </h1>
205                     </div>
206                     <group name="main_group">
207                         <group>
208                             <field name="product_id"/>
209                             <field name="ref"/>
210                         </group>
211                     </group>
212                     <notebook>
213                         <page string="Products">
214                             <field name="quant_ids">
215                                 <tree string="Stock Moves">
216                                     <field name="name"/>
217                                     <field name="product_id"/>
218                                     <field name="qty" on_change="onchange_quantity(product_id, product_qty, product_uom, product_uos)"/>
219                                     <field name="location_id" groups="stock.group_locations"/>
220                                 </tree>
221                              </field>
222                         </page>
223                     </notebook>
224                 </form>
225             </field>
226         </record>
227         <record id="view_production_lot_tree" model="ir.ui.view">
228             <field name="name">stock.production.lot.tree</field>
229             <field name="model">stock.production.lot</field>
230             <field name="arch" type="xml">
231                 <tree string="Serial Number">
232                     <field name="name"/>
233                     <field name="ref"/>
234                     <field name="product_id"/>
235                     <field name="create_date"/>
236                 </tree>
237             </field>
238         </record>
239
240         <record model="ir.ui.view" id="search_product_lot_filter">
241             <field name="name">Production Lots Filter</field>
242             <field name="model">stock.production.lot</field>
243             <field name="arch" type="xml">
244                 <search string="Product Lots Filter">
245                     <field name="name" string="Product Lots" filter_domain="['|',('name','ilike',self),('ref','ilike',self)]"/>
246                     <field name="product_id"/>
247                     <group expand="0" string="Group By">
248                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
249                     </group>
250                 </search>
251             </field>
252         </record>
253
254         <record id="action_production_lot_form" model="ir.actions.act_window">
255             <field name="name">Serial Numbers</field>
256             <field name="type">ir.actions.act_window</field>
257             <field name="res_model">stock.production.lot</field>
258             <field name="view_type">form</field>
259             <field name="view_id" ref="view_production_lot_tree"/>
260             <field name="search_view_id" ref="search_product_lot_filter"/>
261             <field name="context">{}</field>
262             <field name="help" type="html">
263               <p class="oe_view_nocontent_create">
264                 Click to add a serial number.
265               </p><p>
266                 This is the list of all the production lots you recorded. When
267                 you select a lot, you can get the 
268                 traceability of the products contained in lot. By default, the
269                 list is filtered on the serial numbers that are available in
270                 your warehouse but you can uncheck the 'Available' button to
271                 get all the lots you produced, received or delivered to
272                 customers.
273               </p>
274             </field>
275         </record>
276         <menuitem action="action_production_lot_form" id="menu_action_production_lot_form"
277             parent="menu_traceability" groups="stock.group_production_lot"
278             sequence="1"/>
279
280         #
281         # Lot composition (history)
282         #
283         <record id="stock_move_tree" model="ir.ui.view">
284             <field name="name">Stock Moves</field>
285             <field name="model">stock.move</field>
286             <field name="arch" type="xml">
287                 <tree colors="grey:state == 'cancel'" string="Moves" create="false">
288                     <field name="product_id"/>
289                     <field name="product_uom_qty"/>
290                     <field name="product_uom"  string="Unit of Measure" groups="product.group_uom"/>
291                     <field name="product_packaging" domain="[('product_id','=',product_id)]" groups="product.group_stock_packaging"/>
292                     <field name="picking_id"/>
293                     <field name="location_id" groups="stock.group_locations"/>
294                     <field name="location_dest_id" groups="stock.group_locations"/>
295                     <field name="create_date" groups="base.group_no_one"/>
296                     <field name="date" string="Date" groups="base.group_no_one"/>
297                     <field name="date_expected" string="Date Expected"/>
298                     <field name="state"/>
299                 </tree>
300             </field>
301         </record>
302
303         <record id="stock_move_tree2" model="ir.ui.view">
304             <field name="name">Stock Moves</field>
305             <field name="model">stock.move</field>
306             <field name="arch" type="xml">
307                 <tree colors="grey:state == 'cancel'" string="Moves" create="false">
308                     <field name="product_id"/>
309                     <field name="product_uom_qty"/>
310                     <field name="product_uom"  string="Unit of Measure" groups="product.group_uom"/>
311                     <field name="product_packaging" domain="[('product_id','=',product_id)]" groups="product.group_stock_packaging"/>
312                     <field name="picking_id"/>
313                     <field name="location_id" groups="stock.group_locations"/>
314                     <field name="location_dest_id" groups="stock.group_locations"/>
315                     <field name="create_date" groups="base.group_no_one"/>
316                     <field name="date" string="Date" groups="base.group_no_one"/>
317                     <field name="date_expected" string="Date Expected"/>
318                     <field name="state"/>
319                 </tree>
320             </field>
321         </record>
322
323         <record id="action3" model="ir.actions.act_window">
324             <field name="name">Downstream traceability</field>
325             <field name="type">ir.actions.act_window</field>
326             <field name="res_model">stock.move</field>
327             <field name="domain">[('id','in',active_ids)]</field>
328             <field name="view_type">tree</field>
329             <field eval="stock_move_tree2" name="view_id"/>
330         </record>
331
332         <record id="ir_move_traceability_upstream" model="ir.values">
333             <field name="key2">tree_but_action</field>
334             <field name="model">stock.move</field>
335             <field name="name">Downstream traceability</field>
336             <field eval="'ir.actions.act_window,'+str(action3)" name="value"/>
337         </record>
338
339         <record id="action5" model="ir.actions.act_window">
340             <field name="name">Upstream traceability</field>
341             <field name="type">ir.actions.act_window</field>
342             <field name="res_model">stock.move</field>
343             <field name="domain">[('id','in',active_ids)]</field>
344             <field name="view_type">tree</field>
345             <field eval="stock_move_tree" name="view_id"/>
346         </record>
347
348         <record id="ir_move_traceability_downstream" model="ir.values">
349             <field name="key2">tree_but_action</field>
350             <field name="model">stock.move</field>
351             <field name="name">Upstream traceability</field>
352             <field eval="'ir.actions.act_window,'+str(action5)" name="value"/>
353         </record>
354
355         <record model="ir.actions.act_window" id="location_open_quants">
356             <field name="context">{'search_default_productgroup': 1}</field>
357             <field name="domain">[('location_id', 'child_of', active_ids)]</field>
358             <field name="name">Current Stock</field>
359             <field name="res_model">stock.quant</field>
360         </record>
361
362         <record id="view_location_form" model="ir.ui.view">
363             <field name="name">stock.location.form</field>
364             <field name="model">stock.location</field>
365             <field name="arch" type="xml">
366                 <form string="Stock Location">
367                     <div class="oe_right oe_button_box" name="buttons">
368                         <button string="Current Stock" 
369                                 class="oe_stat_button" 
370                                 icon="fa-building-o" name="%(location_open_quants)d" type="action"
371                                 context="{'search_default_internal_loc': 1}"/>
372                     </div>
373                     <label for="name" class="oe_edit_only"/>
374                     <h1><field name="name"/></h1>
375                     <label for="location_id" class="oe_edit_only"/>
376                     <h2><field name="location_id"/></h2>
377
378                     <group>
379                         <group string="Additional Information">
380                             <field name="usage"/>
381                             <field name="partner_id"/>
382                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
383                             <field name="scrap_location"/>
384                             <field name="active"/>
385                         </group>
386                         <group string="Localization" name="localization">
387                             <field name="posx"/>
388                             <field name="posy"/>
389                             <field name="posz"/>
390                             <field name="loc_barcode"/>
391                         </group>
392                         <group string="Logistics" groups="stock.group_adv_location">
393                             <field name="removal_strategy_id" options="{'no_create': True}"/>
394                             <field name="putaway_strategy_id"/>
395                         </group>
396                     </group>
397                     <separator string="Additional Information"/>
398                     <field name="comment"/>
399                 </form>
400             </field>
401         </record>
402
403         <record id="view_location_search" model="ir.ui.view">
404             <field name="name">stock.location.search</field>
405             <field name="model">stock.location</field>
406             <field name="arch" type="xml">
407                 <search string="Stock Locations">
408                     <field name="name" string="Stock Locations"/>
409                     <filter icon="terp-go-home" name="in_location" string="Internal" domain="[('usage', '=', 'internal')]" help="Internal Locations"/>
410                     <filter icon="terp-personal" name="customer" string="Customer" domain="[('usage', '=', 'customer')]" help="Customer Locations"/>
411                     <filter icon="terp-personal" name="supplier" string="Supplier" domain="[('usage', '=', 'supplier')]" help="Supplier Locations"/>
412                     <field name="location_id" string="Parent Location"/>
413                 </search>
414             </field>
415         </record>
416
417
418         <record id="view_location_tree2" model="ir.ui.view">
419             <field name="name">stock.location.tree</field>
420             <field name="model">stock.location</field>
421             <field name="priority" eval="2"/>
422             <field name="arch" type="xml">
423                 <tree string="Stock Location" colors="blue:usage=='view';darkred:usage=='internal'">
424                     <field name="complete_name"/>
425                     <field name="usage"/>
426                 </tree>
427             </field>
428         </record>
429         
430         <record id="view_putaway" model="ir.ui.view">
431             <field name="name">product.putaway.form</field>
432             <field name="model">product.putaway</field>
433             <field name="arch" type="xml">
434                 <form string="Putaway">
435                    <group colspan="4">
436                        <field name="name"/>
437                        <field name="method"/>
438                    </group>
439                    <div attrs="{'invisible': [('method', '!=', 'fixed')]}">
440                        <separator string="Fixed Locations Per Categories"/>
441                        <field name="fixed_location_ids" colspan="4" nolabel="1">
442                            <tree editable="top">
443                                <field name="sequence" widget='handle'/>
444                                <field name="category_id"/> 
445                                <field name="fixed_location_id"/> 
446                            </tree>
447                        </field>
448                    </div>
449                </form>
450             </field>
451         </record>
452
453         <record id="view_removal" model="ir.ui.view">
454             <field name="name">product.removal.form</field>
455             <field name="model">product.removal</field>
456             <field name="arch" type="xml">
457                 <form string="Removal">
458                     <group col="4">
459                         <field name="name"/>
460                         <field name="method"/>
461                     </group>
462                </form>
463             </field>
464         </record>
465
466         <record id="stock_location_path_tree" model="ir.ui.view">
467             <field name="name">stock.location.path.tree</field>
468             <field name="model">stock.location.path</field>
469             <field name="arch" type="xml">
470                 <tree string="Location Paths">
471                     <field name="location_from_id" />
472                     <field name="location_dest_id" />
473                     <field name="name" />
474                 </tree>
475             </field>
476         </record>
477
478         <record id="stock_location_path_form" model="ir.ui.view">
479             <field name="name">stock.location.path.form</field>
480             <field name="model">stock.location.path</field>
481             <field name="arch" type="xml">
482                 <form string="Location Paths">
483                     <group col="4">
484                         <group>
485                             <field name="name"/>
486                             <field name="location_from_id"/>
487                             <field name="location_dest_id"/>
488                         </group>
489                         <group>
490                             <field name="company_id" groups="base.group_multi_company" />
491                             <field name="picking_type_id"/>
492                             <field name="auto"/>
493                             <label for="delay" string="Delay"/>
494                         <div>
495                             <field name="delay" class="oe_inline"/>days
496                         </div>
497                         </group>
498                     </group>
499                 </form>
500             </field>
501         </record>
502
503         <record id="product_category_form_view_inherit" model="ir.ui.view">
504             <field name="name">product.category.form</field>
505             <field name="model">product.category</field>
506             <field name="inherit_id" ref="product.product_category_form_view" />
507             <field name="arch" type="xml">
508                 <xpath expr="//group[@name='parent']" position="inside">
509                     <group string="Logistics" colspan="2">
510                         <field name="route_ids" widget="many2many_tags"/>
511                         <div class="oe_inline" colspan="2">
512                             <p attrs="{'invisible':[('parent_id','=',False)]}">
513                             The following routes will apply to the products in this category taking into account parent categories: 
514                             <field name="total_route_ids" nolabel="1" widget="many2many_tags"/>
515                             </p>
516                         </div>
517                         <field name="removal_strategy_id" options="{'no_create': True}"/>
518                     </group>
519                 </xpath>
520             </field>
521         </record>
522         
523
524         <record id="action_location_form" model="ir.actions.act_window">
525             <field name="name">Locations</field>
526             <field name="res_model">stock.location</field>
527             <field name="type">ir.actions.act_window</field>
528             <field name="view_type">form</field>
529             <field name="view_id" ref="view_location_tree2"/>
530             <field name="search_view_id" ref="view_location_search"/>
531             <field name="context">{'search_default_in_location':1}</field>
532             <field name="help" type="html">
533               <p class="oe_view_nocontent_create">
534                 Click to add a location.
535               </p><p>
536                 Define your locations to reflect your warehouse structure and
537                 organization. OpenERP is able to manage physical locations
538                 (warehouses, shelves, bin, etc), partner locations (customers,
539                 suppliers) and virtual locations which are the counterpart of
540                 the stock operations like the manufacturing orders
541                 consumptions, inventories, etc.
542               </p><p>  
543                 Every stock operation in OpenERP moves the products from one
544                 location to another one.  For instance, if you receive products
545                 from a supplier, OpenERP will move products from the Supplier
546                 location to the Stock location. Each report can be performed on
547                 physical, partner or virtual locations.
548               </p>
549             </field>
550         </record>
551         <menuitem action="action_location_form" id="menu_action_location_form" groups="stock.group_locations"
552             parent="menu_stock_configuration" sequence="5"/>
553
554
555         <record id="act_product_stock_move_open" model="ir.actions.act_window">
556             <field name="context">{'search_default_done': 1,'search_default_product_id': active_id, 'default_product_id': active_id}</field>
557             <field name="name">Moves</field>
558             <field name="res_model">stock.move</field>
559         </record>
560
561         <record id="view_warehouse" model="ir.ui.view">
562             <field name="name">stock.warehouse</field>
563             <field name="model">stock.warehouse</field>
564             <field name="arch" type="xml">
565                 <form string="Warehouse">
566                     <sheet>
567                         <div class="oe_right oe_button_box">                        
568                             <button name="view_all_routes_for_wh" 
569                                     string="Routes"
570                                     icon="fa-refresh"
571                                     class="oe_stat_button" 
572                                     type="object"/> 
573                         </div>
574                         <label for="name" class="oe_edit_only"/>
575                         <h1><field name="name"/></h1>
576                         <group>
577                             <group>
578                                 <field name="code"/>
579                                 <field name="lot_stock_id" groups="stock.group_locations" string="Inventory Location" invisible="1"/>
580                             </group>
581                             <group>
582                                 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
583                                 <field name="partner_id"/>
584                             </group>
585                             <notebook colspan="4" groups="stock.group_adv_location">
586                                 <page string="Warehouse Configuration" colspan="4">
587                                     <group colspan="4">
588                                         <field name="reception_steps" widget='radio'/>
589                                         <field name="delivery_steps" widget='radio'/>
590                                         <field name="default_resupply_wh_id" widget='selection' on_change="onchange_filter_default_resupply_wh_id(default_resupply_wh_id, resupply_wh_ids)"/>
591                                         <field name="resupply_wh_ids" domain="[('id', '!=', id)]" widget='many2many_checkboxes' on_change="onchange_filter_default_resupply_wh_id(default_resupply_wh_id, resupply_wh_ids)"/> 
592                                     </group>
593                                 </page>
594                                 <page string="Technical Information" groups='base.group_no_one'>
595                                     <group>
596                                         <group string="Locations">
597                                             <field name="wh_input_stock_loc_id" readonly="1"/>
598                                             <field name="wh_qc_stock_loc_id" readonly="1"/>
599                                             <field name="wh_pack_stock_loc_id" readonly="1"/>
600                                             <field name="wh_output_stock_loc_id" readonly="1"/>
601                                         </group>
602                                         <group string="Picking Types">
603                                             <field name="in_type_id" readonly="1"/>
604                                             <field name="int_type_id" readonly="1"/>
605                                             <field name="pick_type_id" readonly="1"/>
606                                             <field name="pack_type_id" readonly="1"/>
607                                             <field name="out_type_id" readonly="1"/>
608                                         </group>
609                                     </group>
610                                 </page>
611                             </notebook>
612                         </group>
613                     </sheet>
614                 </form>
615             </field>
616         </record>
617         <record id="view_warehouse_tree" model="ir.ui.view">
618             <field name="name">stock.warehouse.tree</field>
619             <field name="model">stock.warehouse</field>
620             <field name="arch" type="xml">
621                 <tree string="Warehouse">
622                     <field name="name"/>
623                     <field name="lot_stock_id" groups="stock.group_locations"/>
624                     <field name="partner_id"/>
625                 </tree>
626             </field>
627         </record>
628         <record id="action_warehouse_form" model="ir.actions.act_window">
629             <field name="name">Warehouses</field>
630             <field name="res_model">stock.warehouse</field>
631             <field name="type">ir.actions.act_window</field>
632             <field name="view_type">form</field>
633             <field name="view_id" ref="view_warehouse_tree"/>
634             <field name="help" type="html">
635               <p class="oe_view_nocontent_create">
636                 Click to define a new warehouse.
637               </p>
638             </field>
639         </record>
640         <menuitem action="action_warehouse_form" id="menu_action_warehouse_form" groups="stock.group_locations"
641             parent="menu_stock_configuration" sequence="1"/>
642
643         <!--
644             Stock picking
645             Defaults and Internal Pickings
646         -->
647
648         <record model="ir.ui.view" id="stock_picking_calendar">
649             <field name="name">stock.picking.calendar</field>
650             <field name="model">stock.picking</field>
651             <field name="priority" eval="2"/>
652             <field name="arch" type="xml">
653                 <calendar string="Calendar View" date_start="min_date" date_stop="max_date" color="partner_id">
654                     <field name="origin"/>
655                     <field name="picking_type_id"/>
656                     <field name="partner_id"/>
657                 </calendar>
658             </field>
659         </record>
660
661         <record id="vpicktree" model="ir.ui.view">
662             <field name="name">stock.picking.tree</field>
663             <field name="model">stock.picking</field>
664             <field name="arch" type="xml">
665                 <tree colors="blue:state == 'draft';grey:state == 'cancel';red:state not in ('cancel', 'done') and date &lt; current_date" string="Picking list">
666                     <field name="name"/>
667                     <field name="location_dest_id"/>
668                     <field name="date"/>
669                     <field name="min_date" invisible="1"/>
670                     <field name="origin"/>
671                     <field name="group_id" invisible="1"/>
672                     <field name="backorder_id"/>
673                     <field name="state"/>
674                     <field name="priority" invisible="1"/>
675                     <field name="picking_type_id" invisible="1"/>
676                 </tree>
677             </field>
678         </record>
679
680         <record id="view_picking_form" model="ir.ui.view">
681             <field name="name">stock.picking.form</field>
682             <field name="model">stock.picking</field>
683             <field eval="12" name="priority"/>
684             <field name="arch" type="xml">
685                 <form string="Transfer">
686                 <header>
687                     <button name="action_confirm" states="draft" string="Mark as Todo" type="object" class="oe_highlight" groups="base.group_user"/>
688                     <button name="action_assign" states="confirmed,partially_available" string="Check Availability" type="object" class="oe_highlight" groups="base.group_user"/>
689                     <button name="force_assign" states="confirmed,waiting,partially_available" string="Force Availability" type="object" groups="base.group_user"/>
690                     <button name="do_transfer" states="assigned" string="Transfer" groups="stock.group_stock_user" type="object" class="oe_highlight" attrs="{'invisible': ['|', ('pack_operation_exist', '=', True)]}"/>
691                     <button name="do_partial_open_barcode" string="Enter Transfer Details" groups="stock.group_stock_user" type="object" class="oe_highlight" attrs="{'invisible': ['|',('pack_operation_exist', '=', True),('state','not in',('assigned', 'partially_available'))]}"/>
692                     <button name="open_barcode_interface" string="Open Barcode interface" groups="stock.group_stock_user" type="object" class="oe_highlight" attrs="{'invisible': ['|',('pack_operation_exist', '=', False),('state','not in',('assigned', 'partially_available'))]}"/>
693                     <button name="do_print_picking" string="Print Picking List" groups="stock.group_stock_user" type="object" attrs="{'invisible': ['|', ('picking_type_code', '=', 'outgoing'), ('state', '!=', 'assigned')]}"/>
694                     <button name="%(act_stock_return_picking)d" string="Reverse Transfer" states="done" type="action" groups="base.group_user"/>
695                     <button name="action_cancel" states="assigned,confirmed,partially_available,draft" string="Cancel Transfer" groups="base.group_user" type="object"/>
696                     <button name="do_unreserve" string="Unreserve" groups="base.group_user" type="object" attrs="{'invisible': [('quant_reserved_exist', '=', False)]}"/>
697                     <field name="state" widget="statusbar" statusbar_visible="draft,confirmed,partially_available,assigned,done" statusbar_colors='{"shipping_except":"red","invoice_except":"red","waiting_date":"blue"}'/>
698                 </header>
699                 <sheet>
700                     <div class="oe_right oe_button_box">
701                     </div>
702                     <h1>
703                         <field name="name" class="oe_inline" attrs="{'invisible': [('name','=','/')]}" readonly="1"/>
704                     </h1>
705                     <group>
706                         <group>
707                             <field name="partner_id"/>                            
708                             <field name="backorder_id" readonly="1" attrs="{'invisible': [('backorder_id','=',False)]}"/>
709                         </group>
710                         <group>
711                             <field name="date"/>
712                             <field name="min_date"/>
713                             <field name="origin" placeholder="e.g. PO0032" class="oe_inline"/>
714                             <label for="owner_id" groups="stock.group_tracking_owner"/>
715                             <div groups="stock.group_tracking_owner">
716                                 <field name="owner_id"/>
717                                 <button name="action_assign_owner" string="Assign Owner" type="object" attrs="{'invisible': ['|',('pack_operation_exist', '=', False),('state', 'not in', ('draft','assigned','confirmed'))]}"
718                                     class="oe_link oe_edit_only"/>
719                             </div>
720                         </group>
721                     </group>
722                     <notebook>
723                         <page string="Products">
724                             <separator string="Stock Moves" attrs="{'invisible': [('pack_operation_exist', '=', False)]}"/>
725                             <field name="move_lines" context="{'address_in_id': partner_id, 'form_view_ref':'stock.view_move_picking_form', 'tree_view_ref':'stock.view_move_picking_tree', 'default_picking_type_id': picking_type_id,'default_picking_id': active_id}"/>
726                             <field name="pack_operation_exist" invisible="1"/>
727                             <field name="note" placeholder="Add an internal note..." class="oe_inline"/>
728                         </page>
729                         <page string="Operations Done" attrs="{'invisible': ['|', ('state','!=','done'), ('pack_operation_ids','=',[])]}">
730                             <field name="pack_operation_ids">
731                                 <tree editable="top">   
732                                     <field name="location_id"/>
733                                     <field name="product_id"/>
734                                     <field name="product_uom_id" groups="product.group_uom"/>
735                                     <field name="lot_id" domain="[('product_id','=?', product_id)]" context="{'product_id': product_id}" groups="stock.group_production_lot"/>
736                                     <field name="package_id" groups="stock.group_tracking_lot"/>
737                                     <field name="owner_id" groups="stock.group_tracking_owner"/>
738                                     <field name="product_qty" attrs="{'required': [('product_id', '!=', False)]}"/>
739                                     <field name="location_dest_id"/>
740                                     <field name="result_package_id" groups="stock.group_tracking_lot"/>
741                                 </tree>
742                             </field>
743                         </page>
744                         <page string="Additional Info">
745                             <group string="General Informations">
746                                 <group>
747                                     <field name="move_type"/>
748                                     <field name="picking_type_id"/>
749                                     <field name="picking_type_code" invisible="1"/>
750                                     <field name="quant_reserved_exist" invisible="1"/>                                    
751                                     <field name="location_id" invisible="1"/>
752                                     <field name="location_dest_id" invisible="1"/>
753                                 </group>
754                                 <group>
755                                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
756                                     <field name="date_done" groups="base.group_no_one"/>
757                                     <field name="group_id"/>
758                                     <field name="priority"/>
759                                 </group>
760                             </group>
761                         </page>
762                     </notebook>
763                 </sheet>
764                 <div class="oe_chatter">
765                     <field name="message_follower_ids" widget="mail_followers"/>
766                     <field name="message_ids" widget="mail_thread"/>
767                 </div>
768                 </form>
769             </field>
770         </record>
771
772         <record id="view_picking_internal_search" model="ir.ui.view">
773             <field name="name">stock.picking.internal.search</field>
774             <field name="model">stock.picking</field>
775             <field name="arch" type="xml">
776                 <search string="Picking Lists">
777                     <field name="name" string="Picking List" filter_domain="['|',('name','ilike', self),('origin','ilike',self)]"/>
778                     <filter icon="terp-check" name="draft" string="Draft" domain="[('state','=','draft')]" help="Draft Moves"/>
779                     <filter icon="terp-check" name="available" string="Ready" domain="[('state','in',('assigned', 'partially_available'))]" help="Assigned Moves"/>
780                     <filter icon="terp-check" name="waiting" string="Waiting Availability" domain="[('state','=', 'confirmed')]" help="Waiting Moves"/>
781                     <filter icon="terp-camera_test" name="confirmed" string="Confirmed" domain="[('state','in', ('confirmed', 'waiting', 'assigned'))]" help="Confirmed Moves"/>
782                     <filter icon="terp-dialog-close" name="done" string="Done" domain="[('state','=','done')]" help="Pickings already processed"/>
783                     <separator/>
784                     <filter name="late" string="Late" domain="[('min_date','&lt;', time.strftime('%%Y-%%m-%%d'))]" help="Pickings that are late on scheduled time"/>
785                     <separator/>
786                     <filter name="backorder" string="Backorders" domain="[('backorder_id','&lt;&gt;', False)]" help="Remaining parts of picking partially processed"/>
787                     <field name="partner_id" filter_domain="[('partner_id','child_of',self)]"/>
788                     <field name="product_id"/>
789                     <field name="picking_type_id"/>
790                     <field name="group_id"/>
791                     <group expand="0" string="Group By">
792                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
793                         <filter string="Order Date" icon="terp-go-month" domain="[]"  context="{'group_by':'date'}"/>
794                         <filter string="Expected Date" icon="terp-go-month" domain="[]"  context="{'group_by':'min_date'}"/>
795                         <filter string="Origin" domain="[]" context="{'group_by':'origin'}"/>
796                         <filter string="Picking Type" domain="[]" context="{'group_by':'picking_type_id'}"/>
797                         <filter string="Procurement Group" domain="[]" context="{'group_by':'group_id'}"/>
798                     </group>
799                 </search>
800             </field>
801         </record>
802
803         <record id="action_picking_tree_all" model="ir.actions.act_window">
804             <field name="name">Stock Operations</field>
805             <field name="res_model">stock.picking</field>
806             <field name="type">ir.actions.act_window</field>
807             <field name="view_type">form</field>
808             <field name="view_mode">tree,form,calendar</field>
809             <field name="domain"></field>
810             <field name="context">{
811                     'contact_display': 'partner_address',
812             }
813             </field>
814             <field name="search_view_id" ref="view_picking_internal_search"/>
815         </record>
816
817         <record id="action_picking_tree_done" model="ir.actions.act_window">
818             <field name="name">Done Transfers</field>
819             <field name="res_model">stock.picking</field>
820             <field name="type">ir.actions.act_window</field>
821             <field name="view_type">form</field>
822             <field name="view_mode">tree,form,calendar</field>
823             <field name="domain"></field>
824             <field name="context">{
825                     'search_default_picking_type_id': [active_id],
826                     'default_picking_type_id': active_id,
827                     'contact_display': 'partner_address',
828                     'search_default_done': 1,
829             }
830             </field>
831             <field name="search_view_id" ref="view_picking_internal_search"/>
832         </record>
833
834         <record id="action_picking_tree_ready" model="ir.actions.act_window">
835             <field name="name">Ready Transfers</field>
836             <field name="res_model">stock.picking</field>
837             <field name="type">ir.actions.act_window</field>
838             <field name="view_type">form</field>
839             <field name="view_mode">tree,form,calendar</field>
840             <field name="domain"></field>
841             <field name="context">{
842                     'search_default_picking_type_id': [active_id],
843                     'default_picking_type_id': active_id,
844                     'contact_display': 'partner_address',
845                     'search_default_available': 1,
846             }
847             </field>
848             <field name="search_view_id" ref="view_picking_internal_search"/>
849         </record>
850
851         <record id="action_picking_tree_done_grouped" model="ir.actions.act_window">
852             <field name="name">Done Transfers by Date</field>
853             <field name="res_model">stock.picking</field>
854             <field name="type">ir.actions.act_window</field>
855             <field name="view_type">form</field>
856             <field name="view_mode">tree,form,calendar</field>
857             <field name="domain"></field>
858             <field name="context">{
859                     'search_default_picking_type_id': [active_id],
860                     'default_picking_type_id': active_id,
861                     'contact_display': 'partner_address',
862                     'search_default_done': 1,
863                     'group_by': ['date'],
864             }
865             </field>
866             <field name="search_view_id" ref="view_picking_internal_search"/>
867         </record>
868
869         <record id="action_picking_tree_waiting" model="ir.actions.act_window">
870             <field name="name">Waiting Availability Transfers</field>
871             <field name="res_model">stock.picking</field>
872             <field name="type">ir.actions.act_window</field>
873             <field name="view_type">form</field>
874             <field name="view_mode">tree,form,calendar</field>
875             <field name="domain"></field>
876             <field name="context">{
877                     'search_default_picking_type_id': [active_id],
878                     'default_picking_type_id': active_id,
879                     'contact_display': 'partner_address',
880                     'search_default_waiting': 1,
881             }
882             </field>
883             <field name="search_view_id" ref="view_picking_internal_search"/>
884         </record>
885
886         <record id="action_picking_tree_late" model="ir.actions.act_window">
887             <field name="name">Late Transfers</field>
888             <field name="res_model">stock.picking</field>
889             <field name="type">ir.actions.act_window</field>
890             <field name="view_type">form</field>
891             <field name="view_mode">tree,form,calendar</field>
892             <field name="domain"></field>
893             <field name="context">{
894                     'search_default_picking_type_id': [active_id],
895                     'default_picking_type_id': active_id,
896                     'contact_display': 'partner_address',
897                     'search_default_late': 1,
898                     'search_default_confirmed': 1,
899             }
900             </field>
901             <field name="search_view_id" ref="view_picking_internal_search"/>
902         </record>
903
904         <record id="action_picking_tree_backorder" model="ir.actions.act_window">
905             <field name="name">Backorders</field>
906             <field name="res_model">stock.picking</field>
907             <field name="type">ir.actions.act_window</field>
908             <field name="view_type">form</field>
909             <field name="view_mode">tree,form,calendar</field>
910             <field name="domain"></field>
911             <field name="context">{
912                     'search_default_picking_type_id': [active_id],
913                     'default_picking_type_id': active_id,
914                     'contact_display': 'partner_address',
915                     'search_default_backorder': 1,
916                     'search_default_confirmed': 1,
917             }
918             </field>
919             <field name="search_view_id" ref="view_picking_internal_search"/>
920         </record>
921
922         <record id="action_picking_tree" model="ir.actions.act_window">
923             <field name="name">Transfers</field>
924             <field name="res_model">stock.picking</field>
925             <field name="type">ir.actions.act_window</field>
926             <field name="view_type">form</field>
927             <field name="view_mode">tree,form,calendar</field>
928             <field name="domain"></field>
929             <field name="context">{
930                     'search_default_picking_type_id': [active_id],
931                     'default_picking_type_id': active_id,
932                     'contact_display': 'partner_address',
933             }
934             </field>
935             <field name="search_view_id" ref="view_picking_internal_search"/>
936             <field name="help" type="html">
937               <p class="oe_view_nocontent_create">
938                 Click to create a stock operation. 
939               </p><p>
940                 Most operations are prepared automatically by OpenERP according
941                 to your preconfigured logistics rules, but you can also record
942                 manual stock movements.
943               </p>
944             </field>
945         </record>
946
947         <record id="view_move_graph" model="ir.ui.view">
948             <field name="name">stock.move.graph</field>
949             <field name="model">stock.move</field>
950             <field name="arch" type="xml">
951                 <graph string="Stock Moves Analysis" type="pivot">
952                     <field name="product_id" type="row"/>
953                     <field name="location_dest_id" groups="stock.group_locations" type="row"/>
954                     <field name="product_uom_qty" type="measure"/>
955                 </graph>
956             </field>
957         </record>
958
959         <record id="view_move_tree" model="ir.ui.view">
960             <field name="name">stock.move.tree</field>
961             <field name="model">stock.move</field>
962             <field eval="8" name="priority"/>
963             <field name="arch" type="xml">
964                 <tree colors="grey:state == 'cancel';red:(state not in ('cancel','done')) and date > current_date" string="Moves">
965                     <field name="name"/>
966                     <field name="picking_id" string="Reference"/>
967                     <field name="origin"/>
968                     <field name="picking_type_id"/>
969                     <field name="create_date" invisible="1" groups="base.group_no_one"/>
970                     <field name="product_id" on_change="onchange_product_id(product_id,location_id,location_dest_id, False)"/>
971                     <field name="product_uom_qty" on_change="onchange_quantity(product_id, product_uom_qty, product_uom, product_uos)"/>
972                     <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
973                     <field name="product_uos" groups="product.group_uos"/>
974                     <button name="%(stock.move_scrap)d"
975                         string="Scrap Products" type="action"
976                         icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
977                         states="draft,waiting,confirmed,assigned"/>
978                     <field name="location_id" groups="stock.group_locations"/>
979                     <field name="location_dest_id" groups="stock.group_locations"/>
980                     <field name="date" groups="base.group_no_one"/>
981                     <field name="date_expected"/>
982                     <field name="state"/>
983                     <button name="action_done" states="confirmed,assigned" string="Process" type="object" icon="gtk-go-forward" help="Done"/>
984                 </tree>
985             </field>
986         </record>
987
988         <record id="view_move_picking_tree" model="ir.ui.view">
989             <field name="name">stock.move.tree</field>
990             <field name="model">stock.move</field>
991             <field eval="4" name="priority"/>
992             <field name="arch" type="xml">
993                 <tree colors="grey:scrapped == True" string="Stock Moves">
994                     <field name="product_id"/>
995                     <field name="product_uom_qty" on_change="onchange_quantity(product_id, product_uom_qty, product_uom, product_uos)"/>
996                     <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
997                     <field name="product_uos" groups="product.group_uos"/>
998                     <field name="location_id" groups="stock.group_locations" invisible="1"/>
999                     <field name="picking_id" invisible="1" />
1000                     <field name="create_date" invisible="1" />
1001                     <field name="date_expected" invisible="1" />
1002                     <button name="%(stock.move_scrap)d"
1003                        string="Scrap Products" type="action"
1004                        icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
1005                        states="draft,waiting,confirmed,assigned"
1006                        groups="base.group_user"/>
1007                     <field name="scrapped" invisible="1"/>
1008                     <field name="availability" invisible="1"/>
1009                     <field name="reserved_availability" invisible="1"/>
1010                     <field name="location_dest_id" groups="stock.group_locations"/>
1011                     <field name="remaining_qty" invisible="1"/>
1012                     <field name="string_availability_info"/>
1013                     <field name="state"/>
1014                 </tree>
1015             </field>
1016         </record>
1017
1018         <record id="view_move_form" model="ir.ui.view">
1019             <field name="name">stock.move.form</field>
1020             <field name="model">stock.move</field>
1021             <field eval="1" name="priority"/>
1022             <field name="arch" type="xml">
1023                 <form string="Stock Moves">
1024                 <header>
1025                     <button name="action_confirm" states="draft" string="Process Later" type="object" class="oe_highlight"/>
1026                     <button name="action_done" states="draft,assigned,confirmed" string="Process Entirely" type="object" class="oe_highlight"/>
1027                     <button name="force_assign" states="confirmed" string="Set Available" type="object" class="oe_highlight"/>
1028                     <button name="action_cancel" states="draft,assigned,confirmed" string="Cancel Move" type="object"/>
1029                     <field name="state" widget="statusbar" statusbar_visible="draft,confirmed,assigned,done" statusbar_colors='{"waiting":"blue","confirmed":"blue"}'/>
1030                 </header>
1031                 <sheet>
1032                     <group>
1033                         <group name="main_grp" colspan="4">
1034                             <group name="main_grp_col1">
1035                                 <field name="product_id" on_change="onchange_product_id(product_id,location_id,location_dest_id, False)"/>
1036                                 <label for="product_uom_qty"/>
1037                                 <div>
1038                                     <field name="product_uom_qty"
1039                                         on_change="onchange_quantity(product_id, product_uom_qty, product_uom, product_uos)"
1040                                         class="oe_inline"/>
1041                                     <field name="product_uom" groups="product.group_uom" class="oe_inline"/>
1042                                     <button name="%(stock.move_scrap)d"
1043                                             string="Scrap" type="action"
1044                                             icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
1045                                             states="draft,waiting,confirmed,assigned" colspan="1"/>
1046                                 </div>
1047                                 <field name="name"/>
1048                                 <label for="product_uos_qty" groups="product.group_uos"/>
1049                                 <div groups="product.group_uos">
1050                                     <field name="product_uos_qty"
1051                                         on_change="onchange_uos_quantity(product_id, product_uos_qty, product_uos, product_uom)"
1052                                         class="oe_inline"/>
1053                                     <field name="product_uos" class="oe_inline"/>
1054                                 </div>
1055                             </group>
1056                             <group name="main_grp_col2">
1057                                 <field name="picking_type_id"/>
1058                                 <field name="priority"/>
1059                                 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
1060                                 <field name="date_expected" on_change="onchange_date(date,date_expected)" attrs="{'invisible': [('state', '=', 'done')]}"/>
1061                                 <field name="date" attrs="{'invisible': [('state', '!=', 'done')]}"/>
1062                             </group>
1063                         </group>
1064                         <group name="origin_grp" string="Origin">
1065                             <field name="origin"/>
1066                             <field name="location_id" groups="stock.group_locations"/>
1067                             <field name="picking_id" domain="[('picking_type_id','=',picking_type_id)]"/>
1068                             <field name="create_date" groups="base.group_no_one"/>
1069                             <field name="procure_method" attrs="{'readonly': [('state', '!=', 'draft')]}" groups="stock.group_adv_location"/>
1070                             <field name="group_id"/>
1071                         </group>
1072                         <group name="destination_grp" string="Destination" groups="stock.group_locations">
1073                             <field name="location_dest_id" />
1074                             <field name="partner_id" context="{'contact_display':'partner'}" />
1075                         </group>
1076                         <group name="quants_grp" string="Reserved Quants" colspan="4" groups="base.group_no_one">
1077                             <field name="reserved_quant_ids"/>
1078                         </group>
1079                     </group>
1080                 </sheet>
1081                 </form>
1082             </field>
1083         </record>
1084
1085         <record id="view_move_picking_form" model="ir.ui.view">
1086             <field name="name">stock.move.form</field>
1087             <field name="model">stock.move</field>
1088             <field eval="20" name="priority"/>
1089             <field name="arch" type="xml">
1090                 <form string="Stock Moves">
1091                 <header>
1092                         <button name="force_assign" states="confirmed" string="Force Availability" type="object" groups="base.group_user"/>
1093                         <button name="action_confirm" states="draft" string="Confirm" type="object" groups="base.group_user"/>
1094                         <button name="do_unreserve" states="assigned" string="Cancel Availability" type="object" groups="base.group_user"/>
1095                         <field name="state" widget="statusbar" statusbar_visible="draft,assigned,done"/>
1096                 </header>
1097                 <group>
1098                     <group>
1099                         <field name="product_id" on_change="onchange_product_id(product_id,location_id,location_dest_id, parent.partner_id)"/>
1100                         <field name="procure_method" groups="stock.group_adv_location"/>
1101                         <field name="picking_type_id" invisible="1"/>
1102                         <label for="product_uom_qty"/>
1103                         <div>
1104                             <field name="product_uom_qty" on_change="onchange_quantity(product_id, product_uom_qty, product_uom, product_uos)" class="oe_inline"/>
1105                             <field name="product_uom" string="Unit Of Measure" groups="product.group_uom" class="oe_inline"/>
1106                             <button name="%(stock.move_scrap)d"
1107                                 string="Scrap" type="action"
1108                                 icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
1109                                 states="draft,waiting,confirmed,assigned"
1110                                 groups="base.group_user"/>
1111                         </div>
1112                         <label for="product_uos_qty" groups="product.group_uos"/>
1113                         <div groups="product.group_uos">
1114                             <field name="product_uos_qty" on_change="onchange_uos_quantity(product_id, product_uos_qty, product_uos, product_uom)" class="oe_inline"/>
1115                             <field name="product_uos" on_change="onchange_quantity(product_id, product_uom_qty, product_uom, product_uos)" class="oe_inline"/>
1116                         </div>
1117                         <field name="name"/>
1118                         <field name="product_packaging" groups="product.group_stock_packaging" domain="[('product_id','=',product_id)]"/>
1119                     </group>
1120                     <group>
1121                         <field name="create_date" invisible="1"/>
1122                         <field name="date"/>
1123                         <field name="date_expected" on_change="onchange_date(date,date_expected)"/>
1124                     </group>
1125                     <group string="Locations" groups="stock.group_locations">
1126                         <field name="location_id" domain="[('usage','&lt;&gt;','view')]"/>
1127                         <field name="location_dest_id" domain="[('usage','=','internal')]"/>
1128                     </group>
1129                     <group name="quants_grp" string="Reserved Quants" colspan="4" groups="base.group_no_one">
1130                         <field name="reserved_quant_ids"/>
1131                     </group>
1132                 </group>
1133                 </form>
1134             </field>
1135         </record>
1136
1137         <record id="view_move_search" model="ir.ui.view">
1138             <field name="name">stock.move.search</field>
1139             <field name="model">stock.move</field>
1140             <field eval="3" name="priority"/>
1141             <field name="arch" type="xml">
1142                 <search string="Stock Moves">
1143                     <field name="origin" filter_domain="['|', '|', ('origin', 'ilike', self), ('name', 'ilike', self), ('picking_id', 'ilike', self)]" string="Reference"/>
1144                     <field name="date" groups="base.group_no_one"/>
1145
1146                     <filter icon="terp-camera_test" string="Ready" name="ready" domain="[('state','=','assigned')]" help="Stock moves that are Available (Ready to process)"/>
1147                     <filter icon="terp-stock" string="To Do" name="future" domain="[('state','in',('assigned','confirmed','waiting'))]" help="Stock moves that are Confirmed, Available or Waiting"/>
1148                     <filter icon="terp-dialog-close" string="Done" name="done" domain="[('state','=','done')]" help="Stock moves that have been processed"/>
1149                     <separator/>
1150                     <filter icon="terp-go-today" string="Today" domain="[('date','&lt;=',time.strftime('%%Y-%%m-%%d 23:59:59')),('date','&gt;=',time.strftime('%%Y-%%m-%%d 00:00:00'))]" help="Orders processed Today or planned for Today"/>
1151                     <field name="product_id"/>
1152                     <field name="name" string="Location" filter_domain="['|',('location_id','ilike',self),('location_dest_id','ilike',self)]"/>
1153                     <field name="partner_id" string="Partner"  filter_domain="[('picking_id.partner_id','child_of',self)]"/>
1154                     <group expand="0" string="Group By">
1155                         <filter string="Product" name="by_product" icon="terp-accessories-archiver" domain="[]"  context="{'group_by':'product_id'}"/>
1156                         <filter string="Picking" name="groupby_picking_id" icon="terp-accessories-archiver" domain="[]"  context="{'group_by':'picking_id'}"/>
1157                         <filter string="Source" name="groupby_location_id" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'location_id'}" groups="stock.group_locations"/>
1158                         <filter string="Destination" name="groupby_dest_location_id" icon="terp-gtk-jump-to-ltr" domain="[]" context="{'group_by':'location_dest_id'}" groups="stock.group_locations"/>
1159                         <filter icon="terp-stock_effects-object-colorize" string="Status" domain="[]" context="{'group_by':'state'}"/>
1160                         <filter string="Creation" name="groupby_create_date" icon="terp-go-month" domain="[]" context="{'group_by':'create_date'}" groups="base.group_no_one"/>
1161                         <filter string="Scheduled" name="groupby_date" icon="terp-go-month" domain="[]" context="{'group_by':'date_expected'}"/>
1162                     </group>
1163                 </search>
1164             </field>
1165         </record>
1166
1167         <record id="action_move_form2" model="ir.actions.act_window">
1168             <field name="name">Stock Moves</field>
1169             <field name="res_model">stock.move</field>
1170             <field name="type">ir.actions.act_window</field>
1171             <field name="view_type">form</field>
1172             <field name="view_id" ref="view_move_tree"/>
1173             <field name="search_view_id" ref="view_move_search"/>
1174             <field name="context">{}</field>
1175             <field name="help" type="html">
1176               <p class="oe_view_nocontent_create">
1177                 Click to create a stock movement.
1178               </p><p>
1179                 This menu gives you the full traceability of inventory
1180                 operations on a specific product. You can filter on the product
1181                 to see all the past or future movements for the product.
1182               </p>
1183             </field>
1184         </record>
1185         
1186         <record model="ir.actions.act_window.view" id="action_stock_move_tree_all">
1187             <field name="sequence" eval="1"/>
1188             <field name="view_mode">tree</field>
1189             <field name="view_id" ref="view_move_tree"/>
1190             <field name="act_window_id" ref="action_move_form2"/>
1191         </record>
1192
1193         <record model="ir.actions.act_window.view" id="action_stock_move_form_all">
1194             <field name="sequence" eval="3"/>
1195             <field name="view_mode">form</field>
1196             <field name="view_id" ref="view_move_form"/>
1197         <field name="act_window_id" ref="action_move_form2"/>
1198         </record>
1199
1200         <record model="ir.actions.act_window.view" id="action_stock_move_graph_all">
1201             <field name="sequence" eval="3"/>
1202             <field name="view_mode">graph</field>
1203             <field name="view_id" ref="view_move_graph"/>
1204         <field name="act_window_id" ref="action_move_form2"/>
1205         </record>
1206
1207         <menuitem action="action_move_form2" id="menu_action_move_form2" parent="menu_traceability" sequence="3" groups="stock.group_locations"/>
1208
1209         <!--
1210             Reception Picking (By Stock Move)
1211             From stock_partial_move_view
1212         -->
1213         <record id="view_move_tree_reception_picking" model="ir.ui.view">
1214             <field name="name">stock.move.tree2</field>
1215             <field name="model">stock.move</field>
1216             <field name="priority" eval="6"/>
1217             <field name="arch" type="xml">
1218                 <tree colors="grey:state == 'cancel'" string="Moves">
1219                     <field name="date" widget="date"/>
1220                     <field name="picking_id" string="Reference" invisible="1"/>
1221                     <field name="origin"/>
1222                     <field name="partner_id" string="Supplier"/>
1223                     <field name="product_id"/>
1224                     <field name="product_uom_qty"/>
1225                     <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
1226                     <field name="location_id" invisible="1"/>
1227                     <field name="location_dest_id" invisible="1"/>
1228                     <field name="create_date" invisible="1"/>
1229                     <field name="date_expected" invisible="1"/>
1230                     <button name="%(stock.move_scrap)d"
1231                         string="Scrap Products" type="action"
1232                         icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
1233                         states="draft,waiting,confirmed,assigned"/>
1234                     <field name="state"/>
1235                     <button name="action_done" states="draft,assigned,confirmed"
1236                         icon="gtk-go-forward" type="object"
1237                         class="oe_highlight" help="Done"/>
1238                 </tree>
1239             </field>
1240         </record>
1241
1242         <!-- test -->
1243         <record id="view_move_tree_reception_picking_board" model="ir.ui.view">
1244             <field name="name">stock.move.tree3</field>
1245             <field name="model">stock.move</field>
1246             <field eval="6" name="priority"/>
1247             <field name="arch" type="xml">
1248                 <tree string="Moves">
1249                     <field name="picking_id" string="Reference"/>
1250                     <field name="product_id"/>
1251                     <field name="product_uom_qty"/>
1252                     <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
1253                     <field name="date" groups="base.group_no_one"/>
1254                 </tree>
1255             </field>
1256         </record>
1257
1258         <record id="action_reception_picking_move" model="ir.actions.act_window">
1259             <field name="name">Incoming  Products</field>
1260             <field name="res_model">stock.move</field>
1261             <field name="type">ir.actions.act_window</field>
1262             <field name="view_type">form</field>
1263             <field name="view_mode">tree,form</field>
1264             <field name="domain" eval="[('picking_id.picking_type_id.code','=','incoming'), ('location_id.usage','!=','internal'), ('location_dest_id.usage', '=', 'internal')]"/>
1265             <field name="view_id" ref="view_move_tree_reception_picking"/>
1266             <field name="context">{'product_receive': True, 'search_default_future': True}</field>
1267             <field name="help" type="html">
1268               <p class="oe_view_nocontent_create">
1269                 Click to register a product reception. 
1270               </p><p>
1271                 Here you can receive individual products, no matter what
1272                 purchase order or picking order they come from. You will find
1273                 the list of all products you are waiting for. Once you receive
1274                 an order, you can filter based on the name of the supplier or
1275                 the purchase order reference. Then you can confirm all products
1276                 received using the buttons on the right of each line.
1277               </p>
1278             </field>
1279         </record>
1280
1281         <!-- Stock incoterms -->
1282         <record id="view_incoterms_tree" model="ir.ui.view">
1283             <field name="name">stock.incoterms.tree</field>
1284             <field name="model">stock.incoterms</field>
1285             <field name="arch" type="xml">
1286                 <tree string="Incoterms">
1287                     <field name="code"/>
1288                     <field colspan="4" name="name"/>
1289                 </tree>
1290             </field>
1291         </record>
1292         <record id="stock_incoterms_form" model="ir.ui.view">
1293             <field name="name">stock.incoterms.form</field>
1294             <field name="model">stock.incoterms</field>
1295             <field name="arch" type="xml">
1296                 <form string="Incoterms">
1297                     <sheet>
1298                         <field name="name"/>
1299                         <field name="code"/>
1300                         <field name="active"/>
1301                     </sheet>
1302                 </form>
1303             </field>
1304         </record>
1305         <record id="action_incoterms_tree" model="ir.actions.act_window">
1306             <field name="name">Incoterms</field>
1307             <field name="res_model">stock.incoterms</field>
1308             <field name="type">ir.actions.act_window</field>
1309             <field name="view_type">form</field>
1310             <field name="view_mode">tree,form</field>
1311         </record>
1312
1313         <menuitem action="action_incoterms_tree" id="menu_action_incoterm_open" parent="menu_warehouse_config" sequence="1"/>
1314
1315
1316          <record id="view_pickingtype_filter" model="ir.ui.view">
1317             <field name="name">stock.picking.type.filter</field>
1318             <field name="model">stock.picking.type</field>
1319             <field name="arch" type="xml">
1320                 <search string="Picking Type">
1321                     <field name="name"/>
1322                     <field name="sequence_id"/>
1323                     <field name="warehouse_id"/>
1324                 </search>
1325             </field>
1326         </record>
1327         <record model="ir.ui.view" id="view_picking_type_tree">
1328             <field name="name">Picking types</field>
1329             <field name="model">stock.picking.type</field>
1330             <field name="arch" type="xml">
1331                 <tree string="Picking Types">
1332                     <field name="sequence" widget="handle"/>
1333                     <field name="name"/>
1334                     <field name="warehouse_id"/>
1335                     <field name="sequence_id"/>
1336                 </tree>
1337             </field>
1338         </record>
1339         <record model="ir.ui.view" id="view_picking_type_form">
1340             <field name="name">Picking Types</field>
1341             <field name="model">stock.picking.type</field>
1342             <field name="arch" type="xml">
1343                 <form string="Picking Types">
1344                     <sheet>
1345                         <group>
1346                             <group>
1347                                 <field name="name"/>
1348                                 <field name="sequence_id"/>
1349                                 <field name="warehouse_id"/>
1350                             </group>
1351                             <group>
1352                                 <field name="code" on_change="onchange_picking_code(code)"/>
1353                                 <field name="return_picking_type_id"/>
1354                             </group>
1355                         </group>
1356                         <separator string="Locations"/>
1357                         <group>
1358                             <field name="default_location_src_id" attrs="{'required': [('code', '=', 'internal')]}"/>
1359                             <field name="default_location_dest_id" attrs="{'required': [('code', 'in', ('internal', 'incoming'))]}"/>
1360                         </group>
1361                     </sheet>
1362                 </form>
1363             </field>
1364         </record>
1365
1366
1367         <record id="stock_picking_type_kanban" model="ir.ui.view">
1368             <field name="name">stock.picking.type.kanban</field>
1369             <field name="model">stock.picking.type</field>
1370             <field name="arch" type="xml">
1371                 <kanban class="oe_background_grey" create="0">
1372                     <field name="complete_name"/>
1373                     <field name="color"/>
1374                     <field name="count_picking_ready"/>
1375                     <field name="count_picking_draft"/>
1376                     <field name="count_picking_waiting"/>
1377                     <field name="count_picking_late"/>
1378                     <field name="count_picking_backorders"/>
1379                     <templates>
1380                         <t t-name="kanban-box">
1381                             <div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_stock_picking_type">
1382                                 <div class="oe_dropdown_toggle oe_dropdown_kanban" groups="stock.group_stock_manager">
1383                                     <span class="oe_e">í</span>
1384                                     <ul class="oe_dropdown_menu">
1385                                         <t t-if="widget.view.is_action_enabled('edit')"><li><a type="edit">Edit...</a></li></t>
1386                                         <t t-if="widget.view.is_action_enabled('delete')"><li><a type="delete">Delete</a></li></t>
1387                                         <t t-if="widget.view.is_action_enabled('edit')"><li><ul class="oe_kanban_colorpicker" data-field="color"/></li></t>
1388                                     </ul>
1389                                 </div>
1390                                 <div class="oe_kanban_content">
1391                                     <h4 class="text-center"><strong><field name="complete_name"/></strong></h4>
1392                                     <div class="oe_right">
1393                                         <a name="open_barcode_interface" type="object">
1394                                             <img src="/stock/static/src/img/scan.png" 
1395                                                 alt="Click to launch the barcode interface"
1396                                                 class="oe_stock_scan_image" title="Click to launch the barcode interface"/>
1397                                         </a>
1398                                     </div>
1399                                     <div class="oe_items_list oe_kanban_ellipsis">
1400                                         <div>
1401                                             <a name="%(action_picking_tree_ready)d" type="action">
1402                                                 <field name="count_picking_ready"/> Ready
1403                                             </a>
1404                                             <a name="%(action_picking_tree_done)d" type="action" class="oe_sparkline_bar_link">
1405                                                 <field name="last_done_picking" widget="sparkline_bar" options="{'type': 'tristate', 'colorMap': {'0': 'orange', '-1': 'red', '1': 'green'}}">Last 10 Done Operations</field>
1406                                             </a>
1407                                         </div>
1408                                         <div t-if="record.count_picking_waiting.raw_value &gt; 0">
1409                                             <a name="%(action_picking_tree_waiting)d" type="action">
1410                                                 <field name="count_picking_waiting"/> Waiting Availability
1411                                             </a>
1412                                         </div>
1413                                         <div>
1414                                             <a name="%(action_picking_tree)d" type="action">All Operations</a>
1415                                         </div>
1416                                     </div>
1417                                     <div class="oe_picking_type_gauge">
1418                                         <field name="rate_picking_late" widget="gauge" style="width:150px; height: 110px;" options="{'levelcolors': ['#a9d70b', '#f9c802', '#ff0000'], 'action_jump': '%(action_picking_tree_late)d'}">Late (%%)</field>
1419                                         <field name="rate_picking_backorders" widget="gauge" style="width:150px; height: 110px;">Backorders (%%)</field>
1420                                         <div class="oe_gauge_labels">
1421                                             <div class="oe_gauge_label_column">
1422                                                 <a name="%(action_picking_tree_late)d" type="action">
1423                                                     <field name="count_picking_late"/> Late
1424                                                 </a>
1425                                             </div>
1426                                             <div class="oe_gauge_label_column">
1427                                                 <a name="%(action_picking_tree_backorder)d" type="action">
1428                                                     <field name="count_picking_backorders"/> Backorders
1429                                                 </a>
1430                                             </div>
1431                                         </div>
1432                                     </div>
1433
1434                                 </div>
1435                             </div>
1436                         </t>
1437                     </templates>
1438                 </kanban>
1439             </field>
1440         </record>
1441
1442         <record id="action_picking_type_form" model="ir.actions.act_window">
1443             <field name="name">All Operations</field>
1444             <field name="res_model">stock.picking.type</field>
1445             <field name="type">ir.actions.act_window</field>
1446             <field name="view_type">form</field>
1447             <field name="view_mode">kanban,form</field>
1448             <field name="help" type="html">
1449               <p class="oe_view_nocontent_create">
1450                 Click to create a new picking type. 
1451               </p><p>
1452                 The picking type system allows you to assign each stock
1453                 operation a specific type which will alter its views accordingly.  
1454                 On the picking type you could e.g. specify if packing is needed by default, 
1455                 if it should show the customer.  
1456               </p>
1457             </field>
1458         </record>
1459         
1460         <record id="action_picking_type_list" model="ir.actions.act_window">
1461             <field name="name">All Operations</field>
1462             <field name="res_model">stock.picking.type</field>
1463             <field name="type">ir.actions.act_window</field>
1464             <field name="view_type">form</field>
1465             <field name="view_mode">list,form</field>            
1466         </record>
1467
1468         <menuitem
1469             action="action_picking_type_form"
1470             id="menu_action_picking_type_form"
1471             parent="menu_stock_warehouse_mgmt" sequence="1"/>
1472
1473         <menuitem 
1474             id="menu_pickingtype" 
1475             name="Types of Operation" 
1476             parent="stock.menu_stock_configuration" 
1477             action="action_picking_type_list" />
1478         
1479
1480         <!-- Order Point -->
1481         <record id="view_warehouse_orderpoint_tree" model="ir.ui.view">
1482             <field name="name">stock.warehouse.orderpoint.tree</field>
1483             <field name="model">stock.warehouse.orderpoint</field>
1484             <field name="arch" type="xml">
1485                 <tree string="Reordering Rules">
1486                     <field name="name"/>
1487                     <field name="warehouse_id" groups="stock.group_locations"/>
1488                     <field name="location_id" groups="stock.group_locations"/>
1489                     <field name="product_id"/>
1490                     <field name="product_uom" groups="product.group_uom"/>
1491                     <field name="product_min_qty"/>
1492                     <field name="product_max_qty"/>
1493                 </tree>
1494             </field>
1495         </record>
1496
1497         <record model="ir.ui.view" id="warehouse_orderpoint_search">
1498             <field name="name">stock.warehouse.orderpoint.search</field>
1499             <field name="model">stock.warehouse.orderpoint</field>
1500             <field name="arch" type="xml">
1501                 <search string="Reordering Rules Search">
1502                     <field name="name" string="Reordering Rules"/>
1503                     <field name="warehouse_id"/>
1504                     <field name="location_id" groups="stock.group_locations"/>
1505                     <field name="company_id" groups="base.group_multi_company"/>
1506                     <field name="product_id"/>
1507                     <group expand="0" string="Group By">
1508                         <filter string="Warehouse" icon="terp-go-home" domain="[]"  context="{'group_by':'warehouse_id'}"/>
1509                         <filter string="Location" icon="terp-go-home" domain="[]" context="{'group_by':'location_id'}"/>
1510                     </group>
1511                 </search>
1512             </field>
1513         </record>
1514
1515         <record id="view_warehouse_orderpoint_form" model="ir.ui.view">
1516             <field name="name">stock.warehouse.orderpoint.form</field>
1517             <field name="model">stock.warehouse.orderpoint</field>
1518             <field name="arch" type="xml">
1519                 <form string="Reordering Rules">
1520                     <sheet>
1521                         <div class="oe_right oe_button_box">
1522                             <button name="action_view_proc_to_process" type="object" string="Procurement Orders to Process"/>                            
1523                         </div>
1524                         <group>
1525                             <group>
1526                                 <field name="name" />
1527                                 <field name="product_id" on_change="onchange_product_id(product_id)"/>
1528                             </group>
1529                             <group>
1530                                 <field name="warehouse_id" on_change="onchange_warehouse_id(warehouse_id)" widget="selection" groups="stock.group_locations"/>
1531                                 <field name="product_uom" groups="product.group_uom"/>
1532                                 <field name="location_id" groups="stock.group_locations"/>
1533                                 <field name="group_id" groups="stock.group_adv_location"/>
1534                                 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
1535                             </group>
1536                         </group>
1537                         <group>
1538                             <group string="Rules">
1539                                 <field name="product_min_qty" />
1540                                 <field name="product_max_qty" />
1541                                 <field name="qty_multiple" string="Quantity Multiple"/>
1542                             </group>
1543                             <group string="Misc">
1544                                 <field name="active" />
1545                             </group>
1546                         </group>                        
1547                     </sheet>
1548                 </form>
1549             </field>
1550         </record>
1551
1552         <record id="action_orderpoint_form" model="ir.actions.act_window">
1553             <field name="name">Reordering Rules</field>
1554             <field name="res_model">stock.warehouse.orderpoint</field>
1555             <field name="type">ir.actions.act_window</field>
1556             <field name="view_type">form</field>
1557             <field name="view_id" ref="view_warehouse_orderpoint_tree"/>
1558             <field name="search_view_id" ref="warehouse_orderpoint_search" />
1559             <field name="help" type="html">
1560               <p class="oe_view_nocontent_create">
1561                 Click to add a reordering rule.
1562               </p><p>You can define your minimum stock rules, so that OpenERP will automatically create draft manufacturing orders or request for quotations according to the stock level. Once the virtual stock of a product (= stock on hand minus all confirmed orders and reservations) is below the minimum quantity, OpenERP will generate a procurement request to increase the stock up to the maximum quantity.</p>
1563             </field>
1564         </record>
1565
1566         <act_window
1567             context="{'search_default_warehouse_id': active_id, 'default_warehouse_id': active_id}"
1568             id="act_stock_warehouse_2_stock_warehouse_orderpoint"
1569             name="Reordering Rules"
1570             res_model="stock.warehouse.orderpoint"
1571             src_model="stock.warehouse"
1572             groups="stock.group_stock_user"/>
1573
1574         <!-- Procurements -->
1575
1576         <record id="view_procurement_form_stock_inherit" model="ir.ui.view">
1577             <field name="name">procurement.order.form.stock.inherit</field>
1578             <field name="model">procurement.order</field>
1579             <field name="inherit_id" ref="procurement.procurement_form_view"/>
1580             <field name="arch" type="xml">
1581                 <xpath expr="//group[@name='scheduling']" position="before">
1582                     <group>
1583                         <field name="warehouse_id" on_change="change_warehouse_id(warehouse_id, context)"/>
1584                         <field name="location_id" domain="[('usage', '=', 'internal')]"/>
1585                         <field name="route_ids" widget="many2many_tags"/>
1586                     </group>
1587                 </xpath>
1588                 <xpath expr="//div[@name='button_box']" position="inside">
1589                     <button name="do_view_pickings" string="Group's Pickings" type="object"/>
1590                 </xpath>
1591                 <xpath expr="//field[@name='rule_id']" position="replace">
1592                     <field name="rule_id" domain="['|', ('location_id', '=', False), ('location_id', '=', location_id)]"/>
1593                     <field name="partner_dest_id"/>
1594                 </xpath>
1595             </field>
1596         </record>
1597         <record id="view_procurement_tree_stock_inherit" model="ir.ui.view">
1598             <field name="name">procurement.order.tree.stock.inherit</field>
1599             <field name="model">procurement.order</field>
1600             <field name="inherit_id" ref="procurement.procurement_tree_view"/>
1601             <field name="arch" type="xml">
1602                 <xpath expr="//field[@name='origin']" position="before">
1603                     <field name="location_id"/>
1604                 </xpath>
1605             </field>
1606         </record>
1607         <record id="view_procurement_rule_tree_stock_inherit" model="ir.ui.view">
1608             <field name="name">procurement.rule.tree.stock.inherit</field>
1609             <field name="model">procurement.rule</field>
1610             <field name="inherit_id" ref="procurement.view_procurement_rule_tree"/>
1611             <field name="arch" type="xml">
1612                 <xpath expr="//field[@name='action']" position="after">
1613                     <field name="picking_type_id"/>
1614                 </xpath>
1615             </field>
1616         </record>
1617
1618         <record id="view_procurement_rule_form_stock_inherit" model="ir.ui.view">
1619             <field name="name">procurement.rule.form.stock.inherit</field>
1620             <field name="model">procurement.rule</field>
1621             <field name="inherit_id" ref="procurement.view_procurement_rule_form"/>
1622             <field name="arch" type="xml">
1623                 <xpath expr="//field[@name='action']" position="before">
1624                     <field name="location_id"/>
1625                     <field name="warehouse_id" groups="base.group_no_one"/>
1626                     <field name="route_id" groups="base.group_no_one"/>
1627                 </xpath>
1628                 <xpath expr="//field[@name='action']" position="after">
1629                     <field name="picking_type_id" attrs="{'required': [('action', '!=', 'manufacture')]}"/>
1630                 </xpath>
1631                 <xpath expr="//field[@name='group_id']" position="after">
1632                     <field name="propagate"/>
1633                     <field name="propagate_warehouse_id"/>
1634                 </xpath>
1635                 <xpath expr="//group[@name='propagation_group']" position="before">
1636                     <group attrs="{'invisible': [('action', '!=', 'move')]}" string="Moving Options">
1637                         <field name="procure_method" groups="stock.group_adv_location"/>
1638                         <field name="location_src_id" attrs="{'required': [('action', '=', 'move')]}"/>
1639                         <field name="partner_address_id" groups="stock.group_adv_location" context="{'show_address': 1}" options="{'always_reload': 1}"/>
1640                         <label for="delay" string="Delay"  groups="stock.group_adv_location"/>
1641                         <div groups="stock.group_adv_location">
1642                            <field name="delay" class="oe_inline"/>days
1643                         </div>
1644                     </group>
1645                 </xpath>
1646             </field>
1647         </record>
1648         
1649         <record model="ir.actions.act_window" id="procrules">
1650             <field name="context">{}</field>
1651             <field name="name">Pull Rules</field>
1652             <field name="res_model">procurement.rule</field>
1653         </record>
1654         
1655         <record id="quant_search_view" model="ir.ui.view">
1656             <field name="name">stock.quant.search</field>
1657             <field name="model">stock.quant</field>
1658             <field eval="10" name="priority"/>
1659             <field name="arch" type="xml">
1660                 <search string="Quants">
1661                     <field name="product_id"/>
1662                     <field name="location_id"/>
1663                     <field name="package_id" groups="stock.group_tracking_lot"/>
1664                     <field name="lot_id" groups="stock.group_production_lot"/>
1665                     <field name="owner_id" groups="stock.group_tracking_owner"/>
1666                     <group expand='0' string='Filters'>
1667                         <filter name='internal_loc' string="Internal Locations" domain="[('location_id.usage','=', 'internal')]"/>
1668                     </group>
1669                     <group expand='0' string='Group by...'>
1670                        <filter name="productgroup" string='Product' context="{'group_by' : 'product_id'}"/>
1671                        <filter string='Owner' context="{'group_by' : 'owner_id'}" groups="stock.group_tracking_owner"/>
1672                        <filter string='Lot' context="{'group_by' : 'lot_id'}" groups="stock.group_production_lot"/>
1673                        <filter name="locationgroup" string='Location' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'location_id'}"/>
1674                        <filter string='Package' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'package_id'}" groups="stock.group_tracking_lot"/>
1675                        <filter string='Packaging' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'packaging_type_id'}" groups="stock.group_tracking_lot"/>
1676                        <filter string='Company' icon="terp-go-home" domain="[]" context="{'group_by' : 'company_id'}" groups="base.group_multi_company"/>
1677                    </group>
1678                 </search>
1679             </field>
1680         </record>
1681         
1682         <record model="ir.actions.act_window" id="quantsact">
1683             <field name="name">Quants</field>
1684             <field name="res_model">stock.quant</field>
1685             <field name="view_type">form</field>
1686             <field name="view_mode">tree,form,graph</field>
1687             <field name="help">This analysis gives you a fast overview on the current stock level of your products and their today's inventory value.</field>
1688         </record>
1689
1690         <record model="ir.ui.view" id="view_stock_quant_form">
1691             <field name="name">stock.quant.form</field>
1692             <field name="model">stock.quant</field>
1693             <field eval="10" name="priority"/>
1694             <field name="arch" type="xml">
1695                 <form string="Quants">
1696                     <div class="oe_right oe_button_box">
1697                         <button name="action_view_quant_history" type="object" string="Quant History"/>                            
1698                     </div>
1699                     <group>
1700                         <field name="product_id"/>
1701                         <field name="qty"/>
1702                         <field name="lot_id" groups="stock.group_production_lot"/>
1703                         <field name="package_id" groups="stock.group_tracking_lot"/>
1704                         <field name="location_id"/>
1705                         <field name="in_date"/>
1706                         <field name="reservation_id"/>
1707                         <field name="propagated_from_id"/>
1708                         <field name="owner_id" groups="stock.group_tracking_owner"/>
1709                         <field name="inventory_value"/>
1710                     </group>
1711                 </form>
1712             </field>
1713         </record>
1714
1715
1716         <record model="ir.ui.view" id="view_stock_quant_tree">
1717             <field name="name">stock.quant.tree</field>
1718             <field name="model">stock.quant</field>
1719             <field eval="10" name="priority"/>
1720             <field name="arch" type="xml">
1721                 <tree string="Quants" create="0">
1722                     <field name="product_id"/>
1723                     <field name="qty"/>
1724                     <field name="location_id"/>
1725                     <field name="owner_id" groups="stock.group_tracking_owner"/>
1726                     <field name="lot_id" groups="stock.group_production_lot"/>
1727                     <field name="package_id" groups="stock.group_tracking_lot"/>
1728                     <field name="packaging_type_id" invisible="1"/>
1729                     <field name="in_date"/>
1730                     <field name="inventory_value"/>
1731                     <field name="reservation_id" invisible='1'/>
1732                     <field name="propagated_from_id" invisible='1'/>
1733                     <field name='company_id' groups="base.group_multi_company"/>
1734                 </tree>
1735             </field>
1736         </record>
1737
1738        <record model="ir.ui.view" id="view_stock_quant_graph_value">
1739             <field name="name">stock.quant.graph</field>
1740             <field name="model">stock.quant</field>
1741             <field eval="12" name="priority"/>
1742             <field name="arch" type="xml">
1743                 <graph string="Quants">
1744                     <field name="product_id"/>
1745                     <field name="qty"/>
1746                     <field name="location_id"/>
1747                 </graph>
1748             </field>
1749         </record>
1750
1751         <!-- Procurements are located in Warehouse menu hierarchy, MRP users should come to Stock application to use it.  -->
1752         <menuitem id="menu_stock_sched" name="Schedulers" parent="stock.menu_stock_root" sequence="4" groups="stock.group_stock_manager"/>
1753         <menuitem action="action_procurement_compute" id="menu_procurement_compute" parent="menu_stock_sched" groups="base.group_no_one"/>
1754         <menuitem action="procurement.action_compute_schedulers" id="menu_stock_proc_schedulers" parent="menu_stock_sched" sequence="20" groups="stock.group_stock_manager"/>
1755         <menuitem action="procurement.procurement_exceptions" id="menu_stock_procurement_action" parent="menu_stock_sched" sequence="50" groups="stock.group_stock_manager"/>
1756         <menuitem id="menu_stock_procurement" name="Automatic Procurements" parent="stock.menu_stock_configuration" sequence="5"/>
1757         <menuitem action="action_orderpoint_form" id="menu_stock_order_points" parent="stock.menu_stock_configuration" sequence="10"/>
1758         <menuitem id="stock.next_id_61" name="Warehouse" sequence="15" parent="base.menu_reporting" groups="group_stock_manager"/>
1759         <menuitem id="menu_quants" name="Quants" parent="menu_traceability" sequence="20" action="quantsact" groups="base.group_no_one"/>
1760         <menuitem id="menu_procurement_rules" name="Procurement Rules" parent="stock.menu_stock_configuration" action="procrules" groups="base.group_no_one"/>
1761         <menuitem id="menu_pickingtype" name="Types of Operation" parent="stock.menu_stock_configuration" action="action_picking_type_list"/>
1762
1763
1764         <record model="ir.actions.act_window" id="product_open_orderpoint">
1765             <field name="context">{'default_product_id': active_id, 'search_default_product_id': active_id}</field>
1766             <field name="name">Reordering Rules</field>
1767             <field name="res_model">stock.warehouse.orderpoint</field>
1768         </record>
1769         <record model="ir.actions.act_window" id="product_open_quants">
1770             <field name="context">{'search_default_internal_loc': 1, 'search_default_product_id': active_id, 'search_default_locationgroup':1}</field>
1771             <field name="name">Current Stock</field>
1772             <field name="res_model">stock.quant</field>
1773         </record>
1774         
1775         <record model="ir.ui.view" id="view_quant_package_form">
1776             <field name="name">stock.quant.package.form</field>
1777             <field name="model">stock.quant.package</field>
1778             <field eval="10" name="priority"/>
1779             <field name="arch" type="xml">
1780                 <form string="Package">
1781                     <sheet>
1782                         <div class="oe_right oe_button_box">
1783                             <button name="unpack" string="Unpack" type="object"/>
1784                         </div>
1785                         <div class="oe_title">
1786                             <label for="name" string="Package Reference" class="oe_edit_only"/>
1787                             <h1><field name="name" class="oe_inline"/></h1>
1788                         </div>
1789                         <group>
1790                             <group>
1791                                <field name="ul_id"/>
1792                                <field name="packaging_id"/>
1793                                <field name='company_id' groups="base.group_multi_company"/>
1794                                <field name='owner_id' groups="stock.group_tracking_owner"/>
1795                             </group>
1796                             <group>
1797                             <field name="location_id"/>
1798                             <field name="parent_id"/>
1799                             </group>
1800                         </group>
1801                         <notebook>
1802                             <page string="Content">
1803                                 <separator string="Bulk Content" />
1804                                 <field name="quant_ids">
1805                                     <tree string="Quants">
1806                                         <field name="product_id"/>
1807                                         <field name="qty"/>
1808                                         <field name="location_id"/>
1809                                         <field name="in_date"/>
1810                                     </tree>
1811                                 </field>
1812
1813                                 <div class="oe_right oe_button_box" style="margin-top: 10px">
1814                                     <button name="get_content_package" type="object" string="View Contained Packages content" icon="gtk-execute" attrs="{'invisible': [('children_ids','=',[])]}"/>
1815                                 </div>
1816                                 <separator string="Contained Packages"/>
1817                                 <field name="children_ids">
1818                                     <tree string="Contained Packages">
1819                                         <field name="complete_name"/>
1820                                         <field name="ul_id"/>
1821                                         <field name="packaging_id"/>
1822                                         <field name="location_id"/>
1823                                     </tree>
1824                                 </field>
1825                             </page>
1826                         </notebook> 
1827                     </sheet>
1828                 </form>
1829             </field>
1830         </record>
1831         
1832         
1833         <record model="ir.ui.view" id="view_quant_package_tree">
1834             <field name="name">stock.quant.package.tree</field>
1835             <field name="model">stock.quant.package</field>
1836             <field eval="10" name="priority"/>
1837             <field name="arch" type="xml">
1838                 <tree string="Package">
1839                     <field name="complete_name"/>
1840                     <field name="ul_id"/>
1841                     <field name="packaging_id"/>
1842                     <field name="location_id"/>
1843                     <field name="company_id"/>
1844                 </tree>
1845             </field>
1846         </record>
1847         <record id="quant_package_search_view" model="ir.ui.view">
1848             <field name="name">stock.quant.package.search</field>
1849             <field name="model">stock.quant.package</field>
1850             <field eval="10" name="priority"/>
1851             <field name="arch" type="xml">
1852                 <search string="Package">
1853                     <field name="name" string="Package Name"/>
1854                     <field name="location_id"/>
1855                     <field name="ul_id"/>
1856                     <field name="packaging_id"/>
1857                     <group  expand='0' string='Group by...'>
1858                        <filter string='Location' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'location_id'}"/>
1859                        <filter string='Packaging' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'packaging_id'}"/>
1860                        <filter string='Company' icon="terp-go-home" domain="[]" context="{'group_by' : 'company_id'}" groups="base.group_multi_company"/>
1861                    </group>
1862                 </search>
1863             </field>
1864         </record>
1865         <record model="ir.actions.act_window" id="action_package_view">
1866             <field name="context">{}</field>
1867             <field name="name">Packages</field>
1868             <field name="res_model">stock.quant.package</field>
1869             <field name="help" type="html">
1870                 <p>Packages are usually created by pack operations made on transfers and can contains several different products. You can then reuse a package to move its whole content somewhere else, or to pack it into another bigger package. A package can also be unpacked, allowing the disposal of its former content as single units again.
1871                 </p>
1872             </field>
1873         </record>
1874         <menuitem id="menu_package" name="Packages" parent="menu_stock_product" action="action_package_view" groups="stock.group_tracking_lot"/>
1875         
1876         
1877         <!--Routes-->
1878         <record id="stock_location_route_tree" model="ir.ui.view">
1879             <field name="name">stock.location.route.tree</field>
1880             <field name="model">stock.location.route</field>
1881             <field name="arch" type="xml">
1882                 <tree string="Routes">
1883                     <field name="sequence" widget="handle" />
1884                     <field name="name"/>
1885                 </tree>
1886             </field>
1887         </record>
1888
1889         <record id="stock_location_route_form_view" model="ir.ui.view">
1890             <field name="name">stock.location.route.form</field>
1891             <field name="model">stock.location.route</field>
1892             <field eval="7" name="priority" />
1893             <field name="arch" type="xml">
1894                 <form string="Route">
1895                     <sheet>
1896                         <div class="oe_title">
1897                             <label for="name" class="oe_edit_only"/>
1898                             <h1><field name="name"/></h1>
1899                         </div>
1900                     <group>
1901                         <group>
1902                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
1903                             <field name="active" groups="stock.group_adv_location" />
1904                         </group>
1905                         <group>
1906                             <field name="sequence" string="Sequence" groups="base.group_no_one"/>
1907                         </group>
1908                     </group>
1909                     <separator string="Applicable On"/>
1910                     <p class="oe_grey">Select the places where this route can be selected</p>
1911                     <group>
1912                         <group>
1913                             <field name="product_categ_selectable" string="Product Categories"/>
1914                             <field name="product_selectable" string="Products"/>
1915                         </group>
1916                         <group>
1917                             <field name="warehouse_selectable" string="Warehouses"/>
1918                         </group>
1919                     </group>
1920                     <group string="Push Rules" colspan="4" >
1921                         <field name="push_ids" colspan="4" nolabel="1"/>
1922                     </group>
1923                     <group string="Pull Rules" colspan="4" >
1924                         <field name="pull_ids" colspan="4" nolabel="1"/>
1925                     </group>
1926                     </sheet>
1927                 </form>
1928             </field>
1929         </record>
1930         
1931         <record id="action_routes_form" model="ir.actions.act_window">
1932             <field name="name">Routes</field>
1933             <field name="res_model">stock.location.route</field>
1934             <field name="type">ir.actions.act_window</field>
1935             <field name="view_type">form</field>
1936             <field name="view_mode">tree,form</field>
1937             <field name="view_id" ref="stock_location_route_tree" />
1938             <field name="help" type="html">
1939                 <p class="oe_view_nocontent_create">
1940                     Click to add a route.
1941               </p>
1942                 <p>You can define here the main routes that run through
1943                     your warehouses and that define the flows of your products. These
1944                     routes can be assigned to a product, a product category or be fixed
1945                     on procurement or sales order. </p>
1946             </field>
1947         </record>
1948         
1949         <menuitem action="action_routes_form" id="menu_stock_routes"
1950             parent="stock.menu_stock_configuration" sequence="11" />
1951
1952         <record id="do_view_pickings" model="ir.actions.act_window">
1953             <field name="name">Pickings for Groups</field>
1954             <field name="res_model">stock.picking</field>
1955             <field name="view_type">form</field>
1956             <field name="view_mode">tree,form</field>
1957         <field name="domain">[('group_id','=',active_id)]</field>
1958         </record>
1959         <record id="procurement_group_form_view_herited" model="ir.ui.view">
1960             <field name="name">procurement.group.form.herited</field>
1961             <field name="model">procurement.group</field>
1962             <field name="inherit_id" ref="procurement.procurement_group_form_view"/>
1963             <field name="arch" type="xml">
1964                 <xpath expr="//div[@name='button_box']" position="inside">
1965                     <button name="%(do_view_pickings)d" string="Pickings" type="action"/>
1966                 </xpath>        
1967             </field>
1968         </record>
1969         
1970     </data>
1971 </openerp>