[MERGE] Merge with lp:openobject-adddons
[odoo/odoo.git] / addons / mrp / mrp_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5         <menuitem icon="terp-mrp" id="base.menu_mrp_root" parent="" name="Manufacturing"
6             groups="group_mrp_user,group_mrp_manager" sequence="8"
7             web_icon="images/manufacturing.png"
8             web_icon_hover="images/manufacturing-hover.png"/>
9
10         <menuitem id="menu_mrp_manufacturing" name="Manufacturing" parent="base.menu_mrp_root" sequence="1"/>
11
12         <menuitem name="Master Data"
13             id="menu_mrp_bom"
14             parent="base.menu_mrp_root"
15             sequence="5" />
16
17         <!--
18         Property / Property Group
19         -->
20
21         <record id="mrp_property_group_form_view" model="ir.ui.view">
22             <field name="name">mrp.property.group.form</field>
23             <field name="model">mrp.property.group</field>
24             <field name="type">form</field>
25             <field name="arch" type="xml">
26                 <form string="Properties categories">
27                     <separator colspan="4" string="Property Group"/>
28                     <field colspan="4" name="name" select="1" nolabel="1"/>
29                     <separator colspan="4" string="Description"/>
30                     <field colspan="4" name="description" nolabel="1"/>
31                 </form>
32             </field>
33         </record>
34         <record id="mrp_property_group_action" model="ir.actions.act_window">
35             <field name="name">Property Groups</field>
36             <field name="type">ir.actions.act_window</field>
37             <field name="res_model">mrp.property.group</field>
38             <field name="view_type">form</field>
39             <field name="view_mode">tree,form</field>
40             <field name="help">Define specific property groups that can be assigned to the properties of your bill of materials.</field>
41         </record>
42         <menuitem
43             id="menu_mrp_configuration"
44             name="Configuration"
45             parent="base.menu_mrp_root"
46             groups="group_mrp_manager"
47             sequence="50" />
48
49         <record id="mrp_property_tree_view" model="ir.ui.view">
50             <field name="name">mrp.property.tree</field>
51             <field name="model">mrp.property</field>
52             <field name="type">tree</field>
53             <field name="arch" type="xml">
54                 <tree string="Properties">
55                     <field name="name"/>
56                     <field name="composition"/>
57                     <field name="group_id"/>
58                 </tree>
59             </field>
60         </record>
61         <record id="mrp_property_form_view" model="ir.ui.view">
62             <field name="name">mrp.property.form</field>
63             <field name="model">mrp.property</field>
64             <field name="type">form</field>
65             <field name="arch" type="xml">
66                 <form string="Properties">
67                     <field colspan="4" name="name" select="1"/>
68                     <field name="group_id" select="1"/>
69                     <field name="composition" select="1"/>
70                     <separator colspan="4" string="Description"/>
71                     <field colspan="4" name="description" nolabel="1"/>
72                 </form>
73             </field>
74         </record>
75
76         <record id="view_mrp_property_search" model="ir.ui.view">
77             <field name="name">mrp.property.search</field>
78             <field name="model">mrp.property</field>
79             <field name="type">search</field>
80             <field name="arch" type="xml">
81                 <search string="Search">
82                    <group>
83                        <field name="name"/>
84                        <field name="composition"/>
85                        <field name="group_id"  widget="selection" />
86                    </group>
87                    <newline/>
88                    <group expand="0" string="Group By...">
89                         <filter string="Property Group" icon="terp-personal" domain="[]" context="{'group_by':'group_id'}"/>
90                     </group>
91                </search>
92             </field>
93         </record>
94
95
96         <record id="mrp_property_action" model="ir.actions.act_window">
97             <field name="name">Properties</field>
98             <field name="type">ir.actions.act_window</field>
99             <field name="res_model">mrp.property</field>
100             <field name="view_type">form</field>
101             <field name="view_mode">tree,form</field>
102             <field name="search_view_id" ref="view_mrp_property_search"/>
103             <field name="help">The Properties in OpenERP are used to select the right bill of materials for manufacturing a product when you have different ways of building the same product. You can assign several properties to each Bill of Materials. When a sales person creates a sales order, he can relate it to several properties and OpenERP will automatically select the BoM to use according the needs.</field>
104         </record>
105         <menuitem name="Master Bill of Materials"
106             id="menu_mrp_property"
107             parent="menu_mrp_configuration"
108             groups="mrp.group_mrp_routings,product.group_mrp_properties"
109             sequence="20" />
110         <menuitem
111             action="mrp_property_action"
112             id="menu_mrp_property_action"
113             groups="product.group_mrp_properties"
114             parent="menu_mrp_property"/>
115         <menuitem
116             action="mrp_property_group_action"
117             parent="menu_mrp_property"
118             groups="product.group_mrp_properties"
119             id="menu_mrp_property_group_action"/>
120
121         <!--
122         Work Centers
123         -->
124
125         <record id="mrp_workcenter_tree_view" model="ir.ui.view">
126             <field name="name">mrp.workcenter.tree</field>
127             <field name="model">mrp.workcenter</field>
128             <field name="type">tree</field>
129             <field name="arch" type="xml">
130                 <tree string="Work Center">
131                     <field name="code"/>
132                     <field name="name"/>
133                     <field name="resource_type"/>
134                     <field name="company_id" groups="base.group_multi_company"/>
135                 </tree>
136             </field>
137         </record>
138         <record id="mrp_workcenter_view" model="ir.ui.view">
139             <field name="name">mrp.workcenter.form</field>
140             <field name="model">mrp.workcenter</field>
141             <field name="type">form</field>
142             <field name="arch" type="xml">
143                 <form string="Work Center">
144                     <group col="6" colspan="4">
145                         <field name="name" select="1"/>
146                         <field name="code" select="1"/>
147                         <field name="active"/>
148                         <field name="resource_type"/>
149                         <field name="calendar_id" widget="selection"/>
150                         <field name="company_id" select="1" groups="base.group_multi_company" widget="selection"/>
151                     </group>
152                     <notebook colspan="4">
153                         <page string="General Information">
154                             <group col="2" colspan="2">
155                             <separator colspan="2" string="Capacity Information"/>
156                             <field name="time_efficiency"/>
157                             <field name="capacity_per_cycle"/>
158                             <field name="time_cycle" widget="float_time"/>
159                             <field name="time_start" widget="float_time"/>
160                             <field name="time_stop" widget="float_time"/>
161                             </group>
162                             <group col="2" colspan="2">
163                             <separator colspan="2" string="Costing Information"/>
164                             <field name="product_id" on_change="on_change_product_cost(product_id)"/>
165                             <field name="costs_hour"/>
166                             <field name="costs_hour_account_id" groups="analytic.group_analytic_accounting"/>
167                             <field name="costs_cycle"/>
168                             <field name="costs_cycle_account_id" groups="analytic.group_analytic_accounting"/>
169                             <field name="costs_journal_id" attrs="{'required':['|',('costs_hour_account_id', '=', True),('costs_cycle_account_id', '=', True)]}" groups="analytic.group_analytic_accounting"/>
170                             <field name="costs_general_account_id" attrs="{ 'required':['|',('costs_cycle_account_id', '=', True),('costs_hour_account_id', '=', True)]}" groups="analytic.group_analytic_accounting"/>
171                             </group>
172                             <separator colspan="4" string="Description"/>
173                             <field colspan="4" name="note" nolabel="1"/>
174                         </page>
175                     </notebook>
176                 </form>
177             </field>
178         </record>
179
180         <!-- Search Views -->
181
182         <record id="view_mrp_workcenter_search" model="ir.ui.view">
183             <field name="name">mrp.workcenter.search</field>
184             <field name="model">mrp.workcenter</field>
185             <field name="type">search</field>
186             <field name="arch" type="xml">
187                 <search string="Search for mrp workcenter">
188                    <group>
189                         <filter string="Inactive" icon="terp-gdu-smart-failing" domain="[('active','=',False)]"/>
190                         <separator orientation="vertical"/>
191                         <field name="code"/>
192                         <field name="name"/>
193                         <field name="resource_type"/>
194                    </group>
195                    <newline/>
196                    <group expand="0" string="Group By...">
197                         <filter string="Type" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'resource_type'}"/>
198                         <separator orientation="vertical" groups="base.group_multi_company"/>
199                         <filter string="Company" icon="terp-go-home" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
200                     </group>
201                </search>
202             </field>
203         </record>
204
205         <!--
206         Routings
207         -->
208
209         <record id="mrp_routing_workcenter_tree_view" model="ir.ui.view">
210             <field name="name">mrp.routing.workcenter.tree</field>
211             <field name="model">mrp.routing.workcenter</field>
212             <field name="type">tree</field>
213             <field name="arch" type="xml">
214                 <tree string="Routing Work Centers">
215                     <field name="sequence"/>
216                     <field name="name"/>
217                     <field name="workcenter_id"/>
218                     <field name="cycle_nbr"/>
219                     <field name="hour_nbr"/>
220                     <field name="company_id" widget="selection" groups="base.group_multi_company"/>
221                 </tree>
222             </field>
223         </record>
224
225         <record id="mrp_routing_workcenter_form_view" model="ir.ui.view">
226             <field name="name">mrp.routing.workcenter.form</field>
227             <field name="model">mrp.routing.workcenter</field>
228             <field name="type">form</field>
229             <field name="arch" type="xml">
230                 <form string="Routing Work Centers">
231                     <separator colspan="4" string="General Information"/>
232                     <field colspan="4" name="name" select="1"/>
233                     <field name="sequence" select="1"/>
234                     <field name="workcenter_id"/>
235                     <field name="cycle_nbr"/>
236                     <field name="hour_nbr" widget="float_time"/>
237                     <field name="company_id" widget="selection" groups="base.group_multi_company"/>
238                     <separator colspan="4" string="Description"/>
239                     <field colspan="4" name="note" nolabel="1"/>
240                 </form>
241             </field>
242         </record>
243
244         <record id="mrp_routing_form_view" model="ir.ui.view">
245             <field name="name">mrp.routing.form</field>
246             <field name="model">mrp.routing</field>
247             <field name="type">form</field>
248             <field name="arch" type="xml">
249                 <form string="Routing">
250                     <group colspan="4" col="6">
251                         <field name="name"/>
252                         <field name="code"/>
253                         <field name="active"/>
254                         <field name="location_id"/>
255                         <field name="company_id" widget="selection" groups="base.group_multi_company"/>
256                     </group>
257                     <notebook colspan="4">
258                         <page string="Work Center Operations">
259                            <field colspan="4" name="workcenter_lines" nolabel="1" widget="one2many_list"/>
260                         </page>
261                         <page string="Notes">
262                            <field colspan="4" name="note" nolabel="1"/>
263                         </page>
264                     </notebook>
265                 </form>
266             </field>
267         </record>
268         <record id="mrp_routing_tree_view" model="ir.ui.view">
269             <field name="name">mrp.routing.tree</field>
270             <field name="model">mrp.routing</field>
271             <field name="type">tree</field>
272             <field name="arch" type="xml">
273                 <tree string="Routing">
274                     <field name="code"/>
275                     <field name="name"/>
276                     <field name="location_id"/>
277                     <field name="company_id" groups="base.group_multi_company"/>
278                 </tree>
279             </field>
280         </record>
281         <record id="mrp_routing_search_view" model="ir.ui.view">
282             <field name="name">mrp.routing.search</field>
283             <field name="model">mrp.routing</field>
284             <field name="type">search</field>
285             <field name="arch" type="xml">
286                 <search string="Routing">
287                     <filter string="Inactive" icon="terp-gdu-smart-failing" domain="[('active','=',False)]"/>
288                     <separator orientation="vertical"/>
289                     <field name="code"/>
290                     <field name="name"/>
291                     <field name="location_id"/>
292                     <field name="company_id" groups="base.group_multi_company"/>
293                     <newline/>
294                     <group expand="0" string="Group By...">
295                         <filter string="Production Location" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'location_id'}"/>
296                     </group>
297                 </search>
298             </field>
299         </record>
300         <record id="mrp_routing_action" model="ir.actions.act_window">
301             <field name="name">Routings</field>
302             <field name="type">ir.actions.act_window</field>
303             <field name="res_model">mrp.routing</field>
304             <field name="view_type">form</field>
305             <field name="view_id" ref="mrp_routing_tree_view"/>
306             <field name="search_view_id" ref="mrp_routing_search_view"/>
307             <field name="help">Routings allow you to create and manage the manufacturing operations that should be followed within your work centers in order to produce a product. They are attached to bills of materials that will define the required raw materials.</field>
308         </record>
309         <menuitem action="mrp_routing_action" id="menu_mrp_routing_action" parent="mrp.menu_mrp_bom" groups="mrp.group_mrp_routings" sequence="15"/>
310
311         <!--
312           Bill of Materials
313         -->
314
315         <record id="mrp_bom_form_view" model="ir.ui.view">
316             <field name="name">mrp.bom.form</field>
317             <field name="model">mrp.bom</field>
318             <field name="type">form</field>
319             <field name="arch" type="xml">
320                 <form string="Bill of Material">
321                     <group colspan="4" col="6">
322                         <field name="product_id" on_change="onchange_product_id(product_id, name, context)" select="1"/>
323                         <field name="name" select="1"/>
324                         <field name="code" select="1" string="Reference"/>
325                         <newline/>
326                         <field name="product_qty"/>
327                         <field name="product_uom"/>
328                         <field name="routing_id"  groups="mrp.group_mrp_routings"/>
329                         <newline/>
330                         <field name="product_uos_qty" groups="product.group_uos" />
331                         <field name="product_uos"  groups="product.group_uos"/>
332                         <newline/>
333                         <field name="type"/>
334                         <field name="company_id" select="1" groups="base.group_multi_company" widget="selection"/>
335                     </group>
336                     <notebook colspan="4" >
337                         <page string="Components">
338                             <field colspan="4" name="bom_lines" nolabel="1" widget="one2many_list">
339                                 <tree string="Components" editable="bottom">
340                                     <field name="product_id" on_change="onchange_product_id(product_id, name)" select="1"/>
341                                     <field name="product_qty"/>
342                                     <field name="product_uom"/>
343                                     <field name="name" invisible="1"/>
344                                     <field name="date_start"/>
345                                     <field name="date_stop"/>
346                                 </tree>
347                                 <form string="Bill of Material">
348                                     <group colspan="4" col="6">
349                                     <field name="product_id" on_change="onchange_product_id(product_id, name)" select="1"/>
350                                     <field name="name" select="1"/>
351                                     <field name="code" select="1" string="Reference"/>
352                                     <newline/>
353                                     <field name="product_qty"/>
354                                     <field name="product_uom"/>
355                                     <field name="routing_id"  groups="mrp.group_mrp_routings"/>
356                                     <newline/>
357                                     <field name="product_uos_qty" groups="product.group_uos" />
358                                     <field name="product_uos"  groups="product.group_uos"/>
359                                     <newline/>
360                                     <field name="type"/>
361                                     <field name="company_id" select="1" groups="base.group_multi_company" widget="selection"/>
362                                 </group>
363                                 <group>
364                                 <notebook colspan="4">
365                                     <page string="Components">
366                                         <field colspan="4" name="bom_lines" nolabel="1" widget="one2many_list">
367                                             <tree string="Components" editable="bottom">
368                                                 <field name="product_id" on_change="onchange_product_id(product_id, name)" select="1"/>
369                                                 <field name="product_qty"/>
370                                                 <field name="product_uom"/>
371                                                 <field name="name" invisible="1"/>
372                                                 <field name="date_start"/>
373                                                 <field name="date_stop"/>
374                                             </tree>
375                                         </field>
376                                     </page>
377                                     <page string="Revisions" attrs="{'invisible': [('bom_id','!=',False)]}">
378                                         <field colspan="4" name="revision_ids" nolabel="1" widget="one2many_list"/>
379                                     </page>
380                                     <page string="Properties" groups="product.group_mrp_properties">
381                                         <field name="position"/>
382                                         <field name="active"/>
383                                         <field name="sequence"/>
384                                         <field name="bom_id"/>
385
386                                         <field name="date_start"/>
387                                         <field name="date_stop"/>
388                                         <field name="product_rounding"/>
389                                         <field name="product_efficiency"/>
390                                         <field colspan="4" name="property_ids" nolabel="2"/>
391                                     </page>
392                                 </notebook>
393                                 </group>
394                             </form>
395                             </field>
396                         </page>
397                         <page string="Revisions" attrs="{'invisible': [('bom_id','!=',False)]}">
398                             <field colspan="4" name="revision_ids" nolabel="1" widget="one2many_list"/>
399                         </page>
400                         <page string="Properties" groups="product.group_mrp_properties">
401                             <field name="position"/>
402                             <field name="active"/>
403                             <field name="sequence"/>
404                             <field name="bom_id"/>
405
406                             <field name="date_start"/>
407                             <field name="date_stop"/>
408                             <field name="product_rounding"/>
409                             <field name="product_efficiency"/>
410                             <separator string="Properties" colspan="4"/>
411                             <newline/>
412                             <field colspan="4" name="property_ids" nolabel="1"/>
413                         </page>
414                     </notebook>
415                     <newline/>
416                 </form>
417             </field>
418         </record>
419
420         <record id="view_mrp_bom_filter" model="ir.ui.view">
421             <field name="name">mrp.bom.select</field>
422             <field name="model">mrp.bom</field>
423            <field name="type">search</field>
424             <field name="arch" type="xml">
425                 <search string="Search Bill Of Material">
426                     <group>
427                          <field name="name"/>
428                          <field name="code" string="Reference"/>
429                          <field name="product_id"/>
430                          <field name="company_id" groups="base.group_multi_company"/>
431                     </group>
432                     <newline/>
433                     <group expand="0" string="Group By...">
434                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
435                         <filter string='Default Unit of Measure' icon="terp-mrp" domain="[]" context="{'group_by' : 'product_uom'}" />
436                         <separator orientation="vertical"/>
437                         <filter string="Routing" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'routing_id'}"/>
438                         <filter string='Type' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'type'}" />
439                         <separator orientation="vertical"/>
440                         <filter string="Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_start'}" help="Starting Date"/>
441                    </group>
442                 </search>
443             </field>
444         </record>
445
446        <record id="mrp_bom_tree_view" model="ir.ui.view">
447             <field name="name">mrp.bom.tree</field>
448             <field name="model">mrp.bom</field>
449             <field name="type">tree</field>
450             <field name="field_parent">child_complete_ids</field>
451             <field name="arch" type="xml">
452                 <tree string="Bill of Materials" colors="blue:method">
453                     <field name="sequence" invisible="1"/>
454                     <field name="name"/>
455                     <field name="code"/>
456                     <field name="product_id"/>
457                     <field name="product_qty"/>
458                     <field name="product_uom"/>
459                     <field name="type"/>
460                     <field name="method"/>
461                     <field name="routing_id" groups="mrp.group_mrp_routings"/>
462                     <field name="date_start"/>
463                     <field name="date_stop"/>
464                 </tree>
465             </field>
466         </record>
467        <record id="mrp_bom_component_tree_view" model="ir.ui.view">
468             <field name="name">mrp.bom.component.tree</field>
469             <field name="model">mrp.bom</field>
470             <field name="type">tree</field>
471             <field name="field_parent">child_complete_ids</field>
472             <field name="arch" type="xml">
473                 <tree string="BoM Structure" colors="blue:method">
474                     <field name="sequence" invisible="1"/>
475                     <field name="name" string="Component Name"/>
476                     <field name="code"/>
477                     <field name="product_id" string="Component Product"/>
478                     <field name="bom_id"/>
479                     <field name="product_qty"/>
480                     <field name="product_uom"/>
481                     <field name="type"/>
482                     <field name="method"/>
483                     <field name="routing_id" groups="mrp.group_mrp_routings"/>
484                     <field name="date_start"/>
485                     <field name="date_stop"/>
486                 </tree>
487             </field>
488         </record>
489         <record id="mrp_bom_form_action" model="ir.actions.act_window">
490             <field name="name">Bill of Materials</field>
491             <field name="type">ir.actions.act_window</field>
492             <field name="res_model">mrp.bom</field>
493             <field name="view_type">form</field>
494             <field name="domain">[('bom_id','=',False)]</field>
495             <field name="search_view_id" ref="view_mrp_bom_filter"/>
496             <field name="help">Master Bills of Materials allow you to create and manage the list of necessary raw materials used to make a finished product. OpenERP will use these BoMs to automatically propose manufacturing orders according to product needs. You can either create a bill of materials to define specific production steps or define a single multi-level bill of materials.</field>
497         </record>
498         <record id="mrp_bom_form_action2" model="ir.actions.act_window">
499             <field name="name">Bill of Material Components</field>
500             <field name="type">ir.actions.act_window</field>
501             <field name="res_model">mrp.bom</field>
502             <field name="view_type">form</field>
503             <field name="view_id" ref="mrp_bom_component_tree_view"/>
504             <field name="domain">[('bom_id','!=',False)]</field>
505             <field name="help">Bills of materials components are components and sub-products used to create master bills of materials. Use this menu to search in which BoM a specific component is used.</field>
506         </record>
507
508         <!-- BOM menus -->
509
510         <menuitem
511             action="mrp_bom_form_action"
512             id="menu_mrp_bom_form_action"
513             parent="menu_mrp_bom"
514             sequence="10"/>
515         <menuitem
516             action="mrp_bom_form_action2"
517             id="menu_mrp_bom_form_action2"
518             parent="menu_mrp_bom"
519             sequence="20"/>
520
521         <record id="action2" model="ir.actions.act_window">
522             <field name="name">Bill of Materials Structure</field>
523             <field name="type">ir.actions.act_window</field>
524             <field name="res_model">mrp.bom</field>
525             <field name="domain">[('id','in',active_ids)]</field>
526             <field name="view_type">tree</field>
527             <field name="view_mode">tree</field>
528             <field name="view_id" ref="mrp_bom_tree_view"/>
529         </record>
530         <record id="ir_BOM_structure" model="ir.values">
531             <field eval="'client_action_multi'" name="key2"/>
532             <field eval="'mrp.bom'" name="model"/>
533             <field name="name">Bill of Materials Structure</field>
534             <field eval="'ir.actions.act_window,'+str(action2)" name="value"/>
535         </record>
536
537         <record id="mrp_bom_revision_tree" model="ir.ui.view">
538             <field name="name">mrp.bom.revision</field>
539             <field name="model">mrp.bom.revision</field>
540             <field name="type">tree</field>
541             <field name="arch" type="xml">
542                 <tree string="BoM Revisions">
543                     <field name="indice"/>
544                     <field name="author_id"/>
545                     <field name="date"/>
546                     <field colspan="4" name="name"/>
547                 </tree>
548             </field>
549         </record>
550         <record id="mrp_bom_revision_form" model="ir.ui.view">
551             <field name="name">mrp.bom.revision</field>
552             <field name="model">mrp.bom.revision</field>
553             <field name="type">form</field>
554             <field name="arch" type="xml">
555                 <form string="BoM Revisions">
556                     <field colspan="4" name="name"/>
557                     <field colspan="1" name="indice"/>
558                     <field colspan="1" name="date"/>
559                     <field name="author_id" readonly="1"/>
560                     <separator colspan="4" string="Description"/>
561                     <field colspan="4" name="description" nolabel="1"/>
562                 </form>
563             </field>
564         </record>
565
566         <!--
567         Production Management
568         -->
569         <record id="mrp_production_tree_view" model="ir.ui.view">
570             <field name="name">mrp.production.tree</field>
571             <field name="model">mrp.production</field>
572             <field name="type">tree</field>
573             <field name="arch" type="xml">
574                 <tree fonts="bold:needaction_pending==True" colors="blue:state in ('draft','confirmed');red:date_planned&lt;current_date and state not in ('done','cancel');black:date_planned&gt;=current_date;gray:state in ('done','cancel') " string="Manufacturing Orders">
575                     <field name="needaction_pending" invisible="1"/>
576                     <field name="name"/>
577                     <field name="date_planned"/>
578                     <field name="product_id"/>
579                     <field name="product_qty" sum="Total Qty"/>
580                     <field name="product_uom"/>
581                     <field name="routing_id" groups="mrp.group_mrp_routings"/>
582                     <field name="hour_total" sum="Total Hours"/>
583                     <field name="cycle_total" sum="Total Cycles"/>
584                     <field name="origin"/>
585                     <field name="state"/>
586                 </tree>
587             </field>
588         </record>
589
590         <record id="view_production_calendar" model="ir.ui.view">
591             <field name="name">mrp.production.calendar</field>
592             <field name="model">mrp.production</field>
593             <field name="type">calendar</field>
594             <field eval="2" name="priority"/>
595             <field name="arch" type="xml">
596                 <calendar color="routing_id" date_start="date_planned" string="Manufacturing Orders">
597                     <field name="name"/>
598                     <field name="product_id"/>
599                     <field name="product_qty"/>
600                 </calendar>
601             </field>
602         </record>
603
604
605         <record id="view_production_gantt" model="ir.ui.view">
606             <field name="name">mrp.production.gantt</field>
607             <field name="model">mrp.production</field>
608             <field name="type">gantt</field>
609             <field name="arch" type="xml">
610                 <gantt date_stop="date_finished" date_start="date_start" string="Productions" default_group_by="routing_id">
611                 </gantt>
612             </field>
613         </record>
614
615
616         <record model="ir.ui.view" id="view_production_graph">
617             <field name="name">mrp.production.graph</field>
618             <field name="model">mrp.production</field>
619             <field name="type">graph</field>
620             <field name="arch" type="xml">
621                 <graph string="Manufacturing Orders" type="bar">
622                     <field name="date_planned_date"/>
623                     <field name="hour_total" operator="+"/>
624                     <field name="cycle_total" operator="+"/>
625                 </graph>
626             </field>
627         </record>
628
629         <record id="mrp_production_form_view" model="ir.ui.view">
630             <field name="name">mrp.production.form</field>
631             <field name="model">mrp.production</field>
632             <field name="type">form</field>
633             <field name="arch" type="xml">
634                 <form layout="manual">
635                 <div class="oe_form_topbar">
636                     <button name="button_confirm" states="draft" string="Confirm Production"/>
637                     <button name="button_produce" states="ready" string="Start Production"/>
638                     <button name="%(act_mrp_product_produce)d" states="in_production" string="Produce" type="action"/>
639                     <button name="force_production" states="confirmed,picking_except" string="Force Reservation" type="object"/>
640                     <button name="button_recreate" states="picking_except" string="Recreate Picking"/>
641                     <button name="button_cancel" states="draft,ready,in_production,picking_except" string="Cancel"/>
642                     <button name="action_cancel" type="object" states="confirmed" string="Cancel"/>
643                     <div class="oe_right">
644                         <field name="state" widget="statusbar" nolabel="1" statusbar_visible="draft,ready,in_production,done" statusbar_colors='{"picking_except":"red","confirmed":"blue"}'/>
645                     </div>
646                     <div class="oe_clear"/>
647                 </div>
648                 <sheet string="Manufacturing Orders" layout="auto">
649                     <group colspan="4" col="7">
650                         <field name="name" string="Reference"/>
651                         <field name="date_planned"/>
652                         <field name="origin"/>
653                         <newline/>
654                         <field name="product_id" on_change="product_id_change(product_id)" domain="[('supply_method','=','produce')]"/>
655                         <field name="product_qty"/>
656                         <field name="product_uom"/>
657                         <button type="action"
658                             icon="terp-accessories-archiver+"
659                             name="%(mrp.action_change_production_qty)d"
660                             string="Change Qty" states="ready,confirmed" />
661                     </group>
662                     <group colspan="4" col="4">
663                         <label string="" colspan="2"/>
664                         <field name="product_uos_qty" groups="product.group_uos"/>
665                         <field name="product_uos" groups="product.group_uos"/>
666                         <field name="user_id"/>
667                     </group>
668
669                     <notebook colspan="4">
670                         <page string="Consumed Products">
671                             <field name="bom_id" domain="[('product_id','=',product_id),('bom_id','=',False)]" on_change="bom_id_change(bom_id)"/>
672                             <field name="routing_id" groups="mrp.group_mrp_routings" select="1"/>
673                             <field name="location_src_id" domain="[('usage','=','internal')]" on_change="location_id_change(location_src_id,location_dest_id)"/>
674                             <field name="location_dest_id" domain="[('usage','=','internal')]"/>
675                             <separator string="" colspan="4"/>
676
677                             <field colspan="2" name="move_lines" nolabel="1" widget="one2many_list"
678                                 mode="tree,form" height="275" domain="[('state','&lt;&gt;', ('done', 'cancel'))]">
679                                 <tree colors="blue:state == 'draft';black:state in ('picking_except','confirmed','ready','in_production');gray:state in ('cancel','done') " string="Products to Consume">
680                                     <field name="product_id" />
681                                     <field name="product_qty"  string="Qty"/>
682                                     <field name="product_uom"  string="Unit of Measure"/>
683                                     <field name="location_id"  string="Source Loc."/>
684                                     <field name="state" invisible="1"/>
685                                     <button name="%(stock.move_consume)d"
686                                         string="Consume Products" type="action"
687                                         icon="gtk-go-forward" context="{'consume': True}"
688                                         states="draft,waiting,confirmed,assigned" />
689                                     <button
690                                            name="%(stock.track_line)d"
691                                            string="Split in Serial Numbers"
692                                            type="action" icon="gtk-justify-fill"
693                                            states="draft,waiting,confirmed,assigned" />
694                                     <button name="%(stock.move_scrap)d"
695                                         string="Scrap Products" type="action"
696                                         icon="gtk-convert" context="{'scrap': True}"
697                                         states="draft,waiting,confirmed,assigned"/>
698                                 </tree>
699                             </field>
700
701                             <field colspan="2" name="move_lines2" nolabel="1"  domain="[('state','in', ('done', 'cancel'))]"
702                                        widget="one2many_list" mode="tree,form" height="275">
703                                    <tree colors="red:scrapped==True;blue:state == 'draft';black:state in('picking_except','confirmed','ready','in_production');gray:state == 'cancel' " string="Consumed Products" editable="bottom">
704                                        <field name="product_id" readonly="1"/>
705                                        <field name="product_qty" readonly="1" string="Qty"/>
706                                        <field name="product_uom" readonly="1" string="Unit of Measure"/>
707                                        <field name="prodlot_id" context="{'product_id': product_id}"/>
708                                        <field name="state" invisible="1"/>
709                                        <field name="scrapped" invisible="1"/>
710                                        <button
711                                            name="%(stock.move_scrap)d"
712                                            string="Scrap Products" type="action"
713                                            icon="gtk-convert"
714                                            states="done,cancel"/>
715                                    </tree>
716                                </field>
717                         </page>
718                         <page string="Finished Products">
719                             <field colspan="2" name="move_created_ids" nolabel="1" widget="one2many_list"
720                                 mode="tree,form" height="275" domain="[('state','&lt;&gt;', ('done', 'cancel'))]">
721                                 <tree string="Products to Finish">
722                                     <field name="product_id" />
723                                     <field name="product_qty"  string="Qty"/>
724                                     <field name="product_uom"  string="Unit of Measure"/>
725                                     <field name="state" invisible="1"/>
726                                     <button name="%(stock.action_partial_move_server)d"
727                                         string="Partial"
728                                         type="action" states="confirmed,assigned"
729                                         icon="gtk-justify-fill"/>
730                                     <button name="%(stock.move_scrap)d"
731                                         string="Scrap Products" type="action"
732                                         icon="gtk-convert" context="{'scrap': True}"
733                                         states="draft,waiting,confirmed,assigned" />
734                                 </tree>
735                             </field>
736
737                             <field colspan="2" name="move_created_ids2" nolabel="1"  domain="[('state','in', ('done', 'cancel'))]"
738                                        widget="one2many_list" mode="tree,form" height="275">
739                                    <tree colors="red:scrapped==True;blue:state == 'draft';black:state in('picking_except','confirmed','ready','in_production');gray:state in('cancel','done') " string="Finished Products">
740                                        <field name="product_id" readonly="1"/>
741                                        <field name="product_qty" readonly="1" string="Qty"/>
742                                        <field name="product_uom" readonly="1" string="Unit of Measure"/>
743                                        <field name="location_dest_id"  readonly="1" string="Destination Loc." widget="selection"/>
744                                        <field name="prodlot_id" context="{'product_id': product_id}"/>
745                                        <field name="scrapped" invisible="1"/>
746                                        <field name="state" invisible="1"/>
747                                        <button name="%(stock.track_line)d"
748                                             string="Split in Serial Numbers" type="action" icon="gtk-justify-fill" states="done,cancel"/>
749                                        <button name="%(stock.move_scrap)d"
750                                            string="Scrap Products" type="action" icon="gtk-convert"
751                                            states="done,cancel" />
752                                    </tree>
753                                </field>
754                         </page>
755                         <page string="Work Orders">
756                             <button name="action_compute" states="draft"
757                                 string="Compute Data" type="object"
758                                 icon="terp-stock_format-scientific"
759                                 colspan="2" />
760                             <field colspan="4" name="workcenter_lines" nolabel="1">
761                                 <form string="Production Work Centers">
762                                     <field colspan="4" name="name"/>
763                                     <field name="workcenter_id" widget="selection"/>
764                                     <field name="sequence"/>
765                                     <field name="cycle"/>
766                                     <field name="hour"/>
767                                 </form>
768                                 <tree string="Production Work Centers">
769                                     <field name="sequence"/>
770                                     <field name="name"/>
771                                     <field name="workcenter_id" widget="selection"/>
772                                     <field name="cycle"/>
773                                     <field name="hour"/>
774                                 </tree>
775                             </field>
776                         </page>
777                         <page string="Scheduled Products">
778                             <button name="action_compute" states="draft"
779                                 string="Compute Data" type="object"
780                                 icon="terp-stock_format-scientific"
781                                 colspan="2" />
782                             <field colspan="4" name="product_lines" nolabel="1" widget="one2many_list"/>
783                         </page>
784                         <page string="Extra Information">
785                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
786                             <field name="priority"/>
787                             <newline/>
788                             <field name="date_start"/>
789                             <field name="date_finished"/>
790                             <field name="picking_id"/>
791                             <field name="move_prod_id"/>
792                         </page>
793                     </notebook>
794                 </sheet>
795                 <div class="oe_form_sheet_width">
796                     <field name="message_ids" colspan="4" widget="ThreadView" nolabel="1"/>
797                 </div>
798                 </form>
799             </field>
800         </record>
801
802         <record id="view_mrp_production_filter" model="ir.ui.view">
803             <field name="name">mrp.production.select</field>
804             <field name="model">mrp.production</field>
805             <field name="type">search</field>
806             <field name="arch" type="xml">
807                 <search string="Search Production">
808                    <group>
809                        <filter icon="terp-gtk-media-pause" string="Pending" name="pending"
810                            domain="[('state','=','confirmed')]"
811                            help="Manufacturing Orders which are waiting for raw materials."/>
812                        <filter icon="terp-camera_test" string="Ready" name="ready"
813                            domain="[('state','=','ready')]"
814                            help="Manufacturing Orders which are ready to start production."/>
815                        <filter icon="terp-check" string="In Production" name="inprogress"
816                            domain="[('state','=','in_production')]"
817                            help="Manufacturing Orders which are currently in production."/>
818                        <separator orientation="vertical"/>
819                        <filter icon="terp-gnome-cpu-frequency-applet+" string="Late"
820                            domain="['&amp;', ('date_planned','&lt;', current_date), ('state', 'in', ('draft', 'confirmed', 'ready'))]"
821                            help="Production started late" />
822                        <separator orientation="vertical"/>
823                        <field name="name"/>
824                        <field name="product_id"/>
825                        <field name="routing_id" groups="mrp.group_mrp_routings"/>
826                        <field name="origin"/>
827                     </group>
828                     <newline/>
829                     <group expand="0" string="Group By...">
830                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
831                         <separator orientation="vertical"/>
832                         <filter string="Routing" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'routing_id'}"/>
833                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
834                         <separator orientation="vertical"/>
835                         <filter string="Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_planned'}" help="Scheduled Date"/>
836                     </group>
837                </search>
838             </field>
839         </record>
840
841         <record id="mrp_production_action" model="ir.actions.act_window">
842             <field name="name">Manufacturing Orders</field>
843             <field name="type">ir.actions.act_window</field>
844             <field name="res_model">mrp.production</field>
845             <field name="view_type">form</field>
846             <field name="view_mode">tree,form,calendar,graph,gantt</field>
847             <field name="view_id" eval="False"/>
848             <field name="search_view_id" ref="view_mrp_production_filter"/>
849             <field name="context">{}</field>
850             <field name="help">Manufacturing Orders are usually proposed automatically by OpenERP based on the bill of materials and the procurement rules, but you can also create manufacturing orders manually. OpenERP will handle the consumption of the raw materials (stock decrease) and the production of the finished products (stock increase) when the order is processed.</field>
851         </record>
852         <menuitem action="mrp_production_action" id="menu_mrp_production_action"
853             parent="menu_mrp_manufacturing" sequence="1"/>
854
855         <record id="mrp_production_action_planning" model="ir.actions.act_window">
856             <field name="name">Manufacturing Orders</field>
857             <field name="type">ir.actions.act_window</field>
858             <field name="res_model">mrp.production</field>
859             <field name="view_type">form</field>
860             <field name="view_mode">calendar,tree,form,graph</field>
861             <field name="domain">[('state','in',('ready','confirmed','in_production'))]</field>
862             <field name="help">Manufacturing Orders describe the operations that need to be carried out and the raw materials usage for each production stage. You use specifications (bills of materials or BoM) to work out the raw material requirements and the manufacturing orders needed for the finished products. Once the bills of materials have been defined, OpenERP is capable of automatically deciding on the manufacturing route depending on the needs of the company.</field>
863         </record>
864
865         <record id="mrp_production_action2" model="ir.actions.act_window">
866             <field name="name">Manufacturing Orders To Start</field>
867             <field name="type">ir.actions.act_window</field>
868             <field name="res_model">mrp.production</field>
869             <field name="view_type">form</field>
870             <field name="view_mode">tree,form,calendar,graph,gantt</field>
871             <field name="domain">[('state','=','ready')]</field>
872             <field name="filter" eval="True"/>
873             <field name="search_view_id" ref="view_mrp_production_filter"/>
874         </record>
875
876         <record id="mrp_production_action3" model="ir.actions.act_window">
877             <field name="name">Manufacturing Orders in Progress</field>
878             <field name="type">ir.actions.act_window</field>
879             <field name="res_model">mrp.production</field>
880             <field name="view_type">form</field>
881             <field name="view_mode">tree,form,calendar,graph,gantt</field>
882             <field name="domain">[('state','=','in_production')]</field>
883             <field name="filter" eval="True"/>
884             <field name="search_view_id" ref="view_mrp_production_filter"/>
885         </record>
886
887         <record id="mrp_production_action4" model="ir.actions.act_window">
888             <field name="name">Manufacturing Orders Waiting Products</field>
889             <field name="type">ir.actions.act_window</field>
890             <field name="res_model">mrp.production</field>
891             <field name="view_type">form</field>
892             <field name="view_mode">tree,form,calendar,graph,gantt</field>
893             <field name="domain">[('state','=','confirmed')]</field>
894             <field name="filter" eval="True"/>
895             <field name="search_view_id" ref="view_mrp_production_filter"/>
896         </record>
897
898         <record id="mrp_production_lot_form_view" model="ir.ui.view">
899             <field name="name">mrp.production.lot.line.form</field>
900             <field name="model">mrp.production.lot.line</field>
901             <field name="type">form</field>
902             <field name="arch" type="xml">
903                 <form string="Production Products">
904                     <field colspan="4" name="move_id" on_change="onchange_lot_line_id(lot_id)"/>
905                     <field name="name"/>
906                     <field name="product_id"/>
907                     <field name="product_qty"/>
908                     <field name="product_uom"/>
909                     <field name="product_uos_qty" groups="product.group_uos"/>
910                     <field name="product_uos" groups="product.group_uos"/>
911                     <field name="tracking_id"/>
912                 </form>
913             </field>
914         </record>
915         <record id="mrp_production_lot_tree_view" model="ir.ui.view">
916             <field name="name">mrp.production.lot.line.tree</field>
917             <field name="model">mrp.production.lot.line</field>
918             <field name="type">tree</field>
919             <field name="arch" type="xml">
920                 <tree string="Production Products Consommation">
921                     <field name="product_id"/>
922                     <field name="product_qty"/>
923                     <field name="product_uom"/>
924                     <field name="product_uos_qty" groups="product.group_uos"/>
925                     <field name="product_uos" groups="product.group_uos"/>
926                     <field name="tracking_id"/>
927                 </tree>
928             </field>
929         </record>
930
931         <record id="mrp_production_product_form_view" model="ir.ui.view">
932             <field name="name">mrp.production.product.line.form</field>
933             <field name="model">mrp.production.product.line</field>
934             <field name="type">form</field>
935             <field name="arch" type="xml">
936                 <form string="Scheduled Products">
937                     <field name="name"/>
938                     <field name="product_id"/>
939                     <field name="product_qty"/>
940                     <field name="product_uom"/>
941                     <field name="product_uos_qty" groups="product.group_uos"/>
942                     <field name="product_uos" groups="product.group_uos"/>
943                 </form>
944             </field>
945         </record>
946         <record id="mrp_production_product_tree_view" model="ir.ui.view">
947             <field name="name">mrp.production.product.line.tree</field>
948             <field name="model">mrp.production.product.line</field>
949             <field name="type">tree</field>
950             <field name="arch" type="xml">
951                 <tree string="Scheduled Products">
952                     <field name="product_id"/>
953                     <field name="product_qty"/>
954                     <field name="product_uom"/>
955                     <field name="product_uos_qty" groups="product.group_uos"/>
956                     <field name="product_uos" groups="product.group_uos"/>
957                 </tree>
958             </field>
959         </record>
960
961         <!--
962             Procurements
963         -->
964
965         <record id="view_procurement_form_inherit" model="ir.ui.view">
966             <field name="name">procurement.order.form.inherit</field>
967             <field name="model">procurement.order</field>
968             <field name="inherit_id" ref="procurement.procurement_form_view"/>
969             <field name="type">form</field>
970             <field name="arch" type="xml">
971             <data>
972                 <xpath expr="/form/sheet/notebook/page/field[@name='move_id']" position="before">
973                     <field name="bom_id" domain="[('product_id','=',product_id),('bom_id','=',False)]"/>
974                 </xpath>
975                 <xpath expr="/form/sheet/notebook/page/field[@name='close_move']" position="after">
976                     <group colspan="4"  groups="product.group_mrp_properties">
977                     <separator colspan="4" string="Properties" />
978                     <field colspan="4" name="property_ids" nolabel="1"/>
979                      </group>
980                 </xpath>
981                </data>
982             </field>
983         </record>
984
985         <record id="product_normal_form_view" model="ir.ui.view">
986             <field name="name">product.normal.form.mrp.inherit</field>
987             <field name="model">product.product</field>
988             <field name="type">form</field>
989             <field name="inherit_id" ref="product.product_normal_form_view"/>
990             <field name="arch" type="xml">
991                 <group name="misc" position="after">
992                     <separator string="Bill of Materials" colspan="4"/>
993                     <field name="bom_ids" nolabel="1" colspan="4" context="{'default_product_id': active_id}"/>
994                 </group>
995             </field>
996         </record>
997
998         <act_window
999             context="{'search_default_product_id': [active_id]}"
1000             id="act_product_manufacturing_open"
1001             name="Manufacturing Orders"
1002             view_id="mrp_production_tree_view"
1003             res_model="mrp.production"
1004             src_model="product.product"/>
1005
1006         <act_window
1007             id="action_product_bom_structure"
1008             name="Product BoM Structure"
1009             domain="[('product_id', 'in', active_ids),('bom_id','=',False)]"
1010             context="{'default_product_id': active_id}"
1011             view_type="tree"
1012             view_mode="tree"
1013             view_id="mrp_bom_tree_view"
1014             res_model="mrp.bom"
1015             src_model="product.product"
1016             groups="mrp.group_mrp_user"/>
1017
1018         <!-- Menu for Resource for MRP-->
1019
1020         <record id="mrp_workcenter_action" model="ir.actions.act_window">
1021             <field name="name">Work Centers</field>
1022             <field name="type">ir.actions.act_window</field>
1023             <field name="res_model">mrp.workcenter</field>
1024             <field name="view_type">form</field>
1025             <field name="view_id" ref="mrp_workcenter_tree_view"/>
1026             <field name="search_view_id" ref="view_mrp_workcenter_search"/>
1027             <field name="help">Work Centers allow you to create and manage manufacturing units.  They consist of workers and/or machines, which are considered as units for capacity and planning forecast.  Keep in mind that the working time and resource leave are not taken into account in the time computation of the work center.</field>
1028         </record>
1029
1030         <menuitem id="menu_pm_resources_config" name="Resources" parent="menu_mrp_configuration"/>
1031         <menuitem action="mrp_workcenter_action" id="menu_view_resource_search_mrp" groups="mrp.group_mrp_routings" parent="mrp.menu_mrp_bom" sequence="25"/>
1032         <menuitem action="resource.action_resource_calendar_form" id="menu_view_resource_calendar_search_mrp" parent="menu_pm_resources_config" sequence="1" groups="base.group_no_one"/>
1033         <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves_search_mrp" parent="menu_pm_resources_config" sequence="1" groups="base.group_no_one"/>
1034
1035         <!-- Planning -->
1036
1037         <menuitem id="menu_mrp_planning" name="Planning"
1038                 parent="base.menu_mrp_root" sequence="2"/>
1039         <menuitem action="mrp.mrp_production_action_planning"
1040                 id="menu_mrp_production_order_action" name="Orders Planning"
1041                 parent="menu_mrp_planning" sequence="1"/>
1042
1043     </data>
1044 </openerp>