1 <?xml version="1.0" encoding="utf-8"?>
6 <menuitem name="Manufacturing"
7 id="base.menu_mrp_root"
8 groups="group_mrp_user,group_mrp_manager"
11 <menuitem name="Manufacturing"
12 id="menu_mrp_manufacturing"
13 parent="base.menu_mrp_root"
16 <menuitem name="Products"
18 parent="base.menu_mrp_root"
22 Property / Property Group
25 <record id="mrp_property_group_form_view" model="ir.ui.view">
26 <field name="name">mrp.property.group.form</field>
27 <field name="model">mrp.property.group</field>
28 <field name="arch" type="xml">
29 <form string="Properties categories" version="7.0">
32 <label for="description"/>
33 <field name="description"/>
37 <record id="mrp_property_group_action" model="ir.actions.act_window">
38 <field name="name">Property Groups</field>
39 <field name="type">ir.actions.act_window</field>
40 <field name="res_model">mrp.property.group</field>
41 <field name="view_type">form</field>
42 <field name="view_mode">tree,form</field>
43 <field name="help" type="html">
44 <p class="oe_view_nocontent_create">
45 Click to create a group of properties.
47 Define specific property groups that can be assigned to your
48 bill of materials and sales orders. Properties allows OpenERP
49 to automatically select the right bill of materials according
50 to properties selected in the sales order by salesperson.
52 For instance, in the property group "Warranty", you an have
53 two properties: 1 year warranty, 3 years warranty. Depending
54 on the propoerties selected in the sales order, OpenERP will
55 schedule a production using the matching bill of materials.
60 id="menu_mrp_configuration"
62 parent="base.menu_mrp_root"
63 groups="group_mrp_manager"
66 <record id="mrp_property_tree_view" model="ir.ui.view">
67 <field name="name">mrp.property.tree</field>
68 <field name="model">mrp.property</field>
69 <field name="arch" type="xml">
70 <tree string="Properties">
72 <field name="composition"/>
73 <field name="group_id"/>
77 <record id="mrp_property_form_view" model="ir.ui.view">
78 <field name="name">mrp.property.form</field>
79 <field name="model">mrp.property</field>
80 <field name="arch" type="xml">
81 <form string="Properties" version="7.0">
83 <field colspan="4" name="name"/>
84 <field name="group_id"/>
85 <field name="composition"/>
87 <label for="description"/>
88 <field name="description"/>
93 <record id="view_mrp_property_search" model="ir.ui.view">
94 <field name="name">mrp.property.search</field>
95 <field name="model">mrp.property</field>
96 <field name="arch" type="xml">
97 <search string="Search">
98 <field name="name" string="Name"/>
99 <field name="composition"/>
100 <field name="group_id" />
101 <group expand="0" string="Group By...">
102 <filter string="Property Group" icon="terp-personal" domain="[]" context="{'group_by':'group_id'}"/>
109 <record id="mrp_property_action" model="ir.actions.act_window">
110 <field name="name">Properties</field>
111 <field name="type">ir.actions.act_window</field>
112 <field name="res_model">mrp.property</field>
113 <field name="view_type">form</field>
114 <field name="view_mode">tree,form</field>
115 <field name="search_view_id" ref="view_mrp_property_search"/>
116 <field name="help" type="html">
117 <p class="oe_view_nocontent_create">
118 Click to create a new property.
120 The Properties in OpenERP are used to select the right bill of
121 materials for manufacturing a product when you have different
122 ways of building the same product. You can assign several
123 properties to each bill of materials. When a salesperson
124 creates a sales order, they can relate it to several properties
125 and OpenERP will automatically select the BoM to use according
130 <menuitem name="Master Bill of Materials"
131 id="menu_mrp_property"
132 parent="menu_mrp_configuration"
133 groups="mrp.group_mrp_routings,product.group_mrp_properties"
136 action="mrp_property_action"
137 id="menu_mrp_property_action"
138 groups="product.group_mrp_properties"
139 parent="menu_mrp_configuration"
142 action="mrp_property_group_action"
143 parent="menu_mrp_configuration"
144 groups="base.group_no_one,product.group_mrp_properties"
145 id="menu_mrp_property_group_action"
152 <record id="mrp_workcenter_tree_view" model="ir.ui.view">
153 <field name="name">mrp.workcenter.tree</field>
154 <field name="model">mrp.workcenter</field>
155 <field name="arch" type="xml">
156 <tree string="Work Center">
159 <field name="resource_type"/>
160 <field name="company_id" groups="base.group_multi_company"/>
164 <record id="mrp_workcenter_view" model="ir.ui.view">
165 <field name="name">mrp.workcenter.form</field>
166 <field name="model">mrp.workcenter</field>
167 <field name="arch" type="xml">
168 <form string="Work Center" version="7.0">
172 <field name="resource_type"/>
173 <field name="calendar_id" widget="selection"/>
177 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
178 <field name="active"/>
182 <page string="General Information">
184 <group string="Capacity Information">
185 <field name="time_efficiency"/>
186 <field name="capacity_per_cycle"/>
187 <field name="time_cycle" widget="float_time"/>
188 <field name="time_start" widget="float_time"/>
189 <field name="time_stop" widget="float_time"/>
191 <group string="Costing Information">
192 <field name="product_id" on_change="on_change_product_cost(product_id)" context="{'default_supply_method':'produce'}"/>
193 <field name="costs_hour"/>
194 <field name="costs_hour_account_id" groups="analytic.group_analytic_accounting"/>
195 <field name="costs_cycle"/>
196 <field name="costs_cycle_account_id" groups="analytic.group_analytic_accounting"/>
197 <field name="costs_journal_id" attrs="{'required':['|',('costs_hour_account_id', '=', True),('costs_cycle_account_id', '=', True)]}" groups="analytic.group_analytic_accounting"/>
198 <field name="costs_general_account_id" attrs="{ 'required':['|',('costs_cycle_account_id', '=', True),('costs_hour_account_id', '=', True)]}" groups="analytic.group_analytic_accounting"/>
209 <!-- Search Views -->
211 <record id="view_mrp_workcenter_search" model="ir.ui.view">
212 <field name="name">mrp.workcenter.search</field>
213 <field name="model">mrp.workcenter</field>
214 <field name="arch" type="xml">
215 <search string="Search for mrp workcenter">
216 <field name="name" string="Mrp Workcenter" filter_domain="['|',('name','ilike',self),('code','ilike',self)]"/>
217 <field name="resource_type"/>
218 <filter string="Inactive" icon="terp-gdu-smart-failing" domain="[('active','=',False)]"/>
219 <group expand="0" string="Group By...">
220 <filter string="Type" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'resource_type'}"/>
221 <filter string="Company" icon="terp-go-home" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
231 <record id="mrp_routing_workcenter_tree_view" model="ir.ui.view">
232 <field name="name">mrp.routing.workcenter.tree</field>
233 <field name="model">mrp.routing.workcenter</field>
234 <field name="arch" type="xml">
235 <tree string="Routing Work Centers">
236 <field name="sequence"/>
238 <field name="workcenter_id"/>
239 <field name="cycle_nbr"/>
240 <field name="hour_nbr"/>
241 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
246 <record id="mrp_routing_workcenter_form_view" model="ir.ui.view">
247 <field name="name">mrp.routing.workcenter.form</field>
248 <field name="model">mrp.routing.workcenter</field>
249 <field name="arch" type="xml">
250 <form string="Routing Work Centers" version="7.0">
252 <field colspan="4" name="name"/>
253 <field name="sequence"/>
254 <field name="workcenter_id"/>
255 <field name="cycle_nbr"/>
256 <field name="hour_nbr" widget="float_time"/>
257 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
265 <record id="mrp_routing_form_view" model="ir.ui.view">
266 <field name="name">mrp.routing.form</field>
267 <field name="model">mrp.routing</field>
268 <field name="arch" type="xml">
269 <form string="Routing" version="7.0">
276 <field name="location_id"/>
277 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
278 <field name="active"/>
282 <page string="Work Center Operations">
283 <field name="workcenter_lines" string="Operation"/>
285 <page string="Notes">
292 <record id="mrp_routing_tree_view" model="ir.ui.view">
293 <field name="name">mrp.routing.tree</field>
294 <field name="model">mrp.routing</field>
295 <field name="arch" type="xml">
296 <tree string="Routing">
299 <field name="location_id"/>
300 <field name="company_id" groups="base.group_multi_company"/>
304 <record id="mrp_routing_search_view" model="ir.ui.view">
305 <field name="name">mrp.routing.search</field>
306 <field name="model">mrp.routing</field>
307 <field name="arch" type="xml">
308 <search string="Routing">
309 <field name="name" string="Routing" filter_domain="['|',('name','ilike',self),('code','ilike',self)]"/>
310 <filter string="Inactive" icon="terp-gdu-smart-failing" domain="[('active','=',False)]"/>
311 <field name="location_id"/>
312 <field name="company_id" groups="base.group_multi_company"/>
313 <group expand="0" string="Group By...">
314 <filter string="Production Location" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'location_id'}"/>
319 <record id="mrp_routing_action" model="ir.actions.act_window">
320 <field name="name">Routings</field>
321 <field name="type">ir.actions.act_window</field>
322 <field name="res_model">mrp.routing</field>
323 <field name="view_type">form</field>
324 <field name="view_id" ref="mrp_routing_tree_view"/>
325 <field name="search_view_id" ref="mrp_routing_search_view"/>
326 <field name="help" type="html">
327 <p class="oe_view_nocontent_create">
328 Click to create a routing.
330 Routings allow you to create and manage the manufacturing
331 operations that should be followed within your work centers in
332 order to produce a product. They are attached to bills of
333 materials that will define the required raw materials.
337 <menuitem action="mrp_routing_action" id="menu_mrp_routing_action" parent="mrp.menu_mrp_bom" groups="mrp.group_mrp_routings" sequence="15"/>
343 <record id="mrp_bom_form_view" model="ir.ui.view">
344 <field name="name">mrp.bom.form</field>
345 <field name="model">mrp.bom</field>
346 <field name="arch" type="xml">
347 <form string="Bill of Material" version="7.0">
350 <field name="product_id" on_change="onchange_product_id(product_id, name, context)" context="{'default_supply_method':'produce'}" class="oe_inline"/>
351 <label for="product_qty" string="Quantity"/>
353 <field name="product_qty" class="oe_inline"/>
354 <field name="product_uom" class="oe_inline" on_change="onchange_uom(product_id, product_uom)" groups="product.group_uom"/>
356 <label for="product_uos_qty" groups="product.group_uos"/>
357 <div groups="product.group_uos" >
358 <field name="product_uos_qty"
360 <label string="-" attrs="{'invisible':[('product_uos','=',False)]}" class="oe_inline"/>
361 <field name="product_uos" class="oe_inline"/>
363 <label for="routing_id" class="oe_inline" groups="mrp.group_mrp_routings"/>
364 <div groups="mrp.group_mrp_routings">
365 <field name="routing_id" class="oe_inline"/>
369 <field name="name" groups="base.group_no_one"/>
370 <field name="code" string="Reference"/>
372 <p colspan="2" class="oe_grey" attrs="{'invisible': [('type','=','normal')]}">
373 When processing a sales order for this product, the delivery order
374 will contain the raw materials, instead of the finished product.
376 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
380 <page string="Components">
381 <field name="bom_lines" widget="one2many_list">
382 <tree string="Components" editable="bottom">
383 <field name="product_id" context="{'default_supply_method':'produce'}" on_change="onchange_product_id(product_id, name)"/>
384 <field name="product_qty"/>
385 <field name="product_uom" on_change="onchange_uom(product_id, product_uom)" groups="product.group_uom"/>
386 <field name="name" invisible="1"/>
387 <field name="date_start"/>
388 <field name="date_stop"/>
392 <page string="Properties" groups="product.group_mrp_properties">
395 <field name="position"/>
396 <field name="bom_id"/>
397 <field name="sequence"/>
398 <field name="active"/>
401 <field name="date_start"/>
402 <field name="date_stop"/>
403 <field name="product_rounding"/>
404 <field name="product_efficiency"/>
407 <separator string="Properties"/>
408 <field name="property_ids" widget="many2many_tags"/>
411 <div class="oe_chatter">
412 <field name="message_follower_ids" widget="mail_followers"/>
413 <field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
419 <record id="view_mrp_bom_filter" model="ir.ui.view">
420 <field name="name">mrp.bom.select</field>
421 <field name="model">mrp.bom</field>
422 <field name="arch" type="xml">
423 <search string="Search Bill Of Material">
424 <field name="name" string="Bill Of Material" filter_domain="['|',('name','ilike',self),('code','ilike',self)]"/>
425 <field name="bom_lines" string="Components"/>
426 <field name="product_id"/>
427 <field name="company_id" groups="base.group_multi_company"/>
428 <group expand="0" string="Group By...">
429 <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
430 <filter string='Default Unit of Measure' icon="terp-mrp" domain="[]" context="{'group_by' : 'product_uom'}"/>
431 <filter string="Routing" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'routing_id'}"/>
432 <filter string='Type' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'type'}"/>
433 <filter string="Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_start'}" help="Starting Date"/>
439 <record id="mrp_bom_tree_view" model="ir.ui.view">
440 <field name="name">mrp.bom.tree</field>
441 <field name="model">mrp.bom</field>
442 <field name="field_parent">child_complete_ids</field>
443 <field name="arch" type="xml">
444 <tree string="Bill of Materials" colors="blue:method">
445 <field name="sequence" invisible="1"/>
446 <field name="name" invisible="1"/>
447 <field name="product_id"/>
448 <field name="product_qty"/>
449 <field name="product_uom" groups="product.group_uom"/>
452 <field name="method"/>
453 <field name="routing_id" groups="mrp.group_mrp_routings"/>
454 <field name="date_start"/>
455 <field name="date_stop"/>
459 <record id="mrp_bom_component_tree_view" model="ir.ui.view">
460 <field name="name">mrp.bom.component.tree</field>
461 <field name="model">mrp.bom</field>
462 <field name="field_parent">child_complete_ids</field>
463 <field name="arch" type="xml">
464 <tree string="BoM Structure" colors="blue:method">
465 <field name="name" groups="base.group_no_one"/>
467 <field name="product_id"/>
468 <field name="bom_id"/>
469 <field name="product_qty"/>
470 <field name="product_uom" groups="product.group_uom"/>
472 <field name="method"/>
473 <field name="routing_id" groups="mrp.group_mrp_routings"/>
474 <field name="date_start"/>
475 <field name="date_stop"/>
479 <record id="mrp_bom_form_action" model="ir.actions.act_window">
480 <field name="name">Bill of Materials</field>
481 <field name="type">ir.actions.act_window</field>
482 <field name="res_model">mrp.bom</field>
483 <field name="view_type">form</field>
484 <field name="domain">[('bom_id','=',False)]</field>
485 <field name="search_view_id" ref="view_mrp_bom_filter"/>
486 <field name="help" type="html">
487 <p class="oe_view_nocontent_create">
488 Click to create a bill of material.
490 Bills of Materials allow you to define the list of required raw
491 materials used to make a finished product; through a manufacturing
492 order or a pack of products.
494 OpenERP uses these BoMs to automatically propose manufacturing
495 orders according to procurement needs.
499 <record id="mrp_bom_form_action2" model="ir.actions.act_window">
500 <field name="name">Bill of Material Components</field>
501 <field name="type">ir.actions.act_window</field>
502 <field name="res_model">mrp.bom</field>
503 <field name="view_type">form</field>
504 <field name="view_id" ref="mrp_bom_component_tree_view"/>
505 <field name="domain">[]</field>
506 <field name="help" type="html">
507 <p class="oe_view_nocontent_create">
508 Click to add a component to a bill of material.
510 Bills of materials components are components and by-products
511 used to create master bills of materials. Use this menu to
512 search in which BoM a specific component is used.
516 <record id="product_search_form_view_procurment" model="ir.ui.view">
517 <field name="name">product.search.bom</field>
518 <field name="model">product.product</field>
519 <field name="inherit_id" ref="product.product_search_form_view"/>
520 <field name="arch" type="xml">
521 <xpath expr="//filter[@string='Consumable']" position="after">
523 <filter string="Components" name="components" icon="terp-accessories-archiver" domain="[('bom_ids','not in',[]),('bom_ids.bom_id','!=',False)]" invisible="not context.get('search_default_filter_supply_method_produce', False)"/>
528 <record id="product_supply_method_produce" model="ir.actions.act_window">
529 <field name="name">Products</field>
530 <field name="res_model">product.product</field>
531 <field name="view_type">form</field>
532 <field name="view_mode">kanban,tree,form</field>
533 <field name="context">{'search_default_filter_supply_method_produce' : 1}</field>
534 <field name="search_view_id" ref="product.product_search_form_view"/>
539 action="mrp_bom_form_action"
540 id="menu_mrp_bom_form_action"
541 parent="menu_mrp_bom"
543 <menuitem name="Products"
544 id="menu_mrp_product_form"
545 action="product_supply_method_produce"
546 parent="menu_mrp_bom"/>
548 action="mrp_bom_form_action2"
549 id="menu_mrp_bom_form_action2"
550 parent="menu_mrp_configuration"
553 <record id="action2" model="ir.actions.act_window">
554 <field name="name">Bill of Materials Structure</field>
555 <field name="type">ir.actions.act_window</field>
556 <field name="res_model">mrp.bom</field>
557 <field name="domain">[('id', 'in', active_ids)]</field>
558 <field name="view_id" ref="mrp_bom_tree_view"/>
559 <field name="view_type">tree</field>
561 <record id="ir_BOM_structure" model="ir.values">
562 <field eval="'client_action_multi'" name="key2"/>
563 <field eval="'mrp.bom'" name="model"/>
564 <field name="name">Bill of Materials Structure</field>
565 <field eval="'ir.actions.act_window,'+str(action2)" name="value"/>
569 Production Management
571 <record id="mrp_production_tree_view" model="ir.ui.view">
572 <field name="name">mrp.production.tree</field>
573 <field name="model">mrp.production</field>
574 <field name="arch" type="xml">
575 <tree fonts="bold:message_unread==True" colors="blue:state in ('draft','confirmed');red:date_planned<current_date and state not in ('done','cancel');black:date_planned>=current_date;gray:state in ('done','cancel') " string="Manufacturing Orders">
576 <field name="message_unread" invisible="1"/>
578 <field name="date_planned"/>
579 <field name="product_id"/>
580 <field name="product_qty" sum="Total Qty"/>
581 <field name="product_uom" groups="product.group_uom"/>
582 <field name="routing_id" groups="mrp.group_mrp_routings"/>
583 <field name="hour_total" sum="Total Hours"/>
584 <field name="cycle_total" sum="Total Cycles"/>
585 <field name="origin"/>
586 <field name="state"/>
591 <record id="view_production_calendar" model="ir.ui.view">
592 <field name="name">mrp.production.calendar</field>
593 <field name="model">mrp.production</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">
598 <field name="product_id"/>
599 <field name="product_qty"/>
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="arch" type="xml">
609 <gantt date_stop="date_finished" date_start="date_start" string="Productions" default_group_by="routing_id">
615 <record model="ir.ui.view" id="view_production_graph">
616 <field name="name">mrp.production.graph</field>
617 <field name="model">mrp.production</field>
618 <field name="arch" type="xml">
619 <graph string="Manufacturing Orders" type="bar">
620 <field name="date_planned"/>
621 <field name="hour_total" operator="+"/>
622 <field name="cycle_total" operator="+"/>
627 <record id="mrp_production_form_view" model="ir.ui.view">
628 <field name="name">mrp.production.form</field>
629 <field name="model">mrp.production</field>
630 <field name="arch" type="xml">
631 <form string="Manufacturing Orders" version="7.0">
633 <button name="button_confirm" states="draft" string="Confirm Production" class="oe_highlight"/>
634 <button name="%(act_mrp_product_produce)d" states="ready,in_production" string="Produce" type="action" class="oe_highlight"/>
635 <button name="force_production" states="confirmed" string="Force Reservation" type="object" class="oe_highlight"/>
636 <button name="force_production" states="picking_except" string="Force Reservation" type="object"/>
637 <button name="button_produce" states="ready" string="Mark as Started"/>
638 <button name="button_recreate" states="picking_except" string="Recreate Picking"/>
639 <button name="button_cancel" states="draft,ready,in_production,picking_except" string="Cancel Production"/>
640 <button name="action_cancel" type="object" states="confirmed" string="Cancel Production"/>
641 <field name="state" widget="statusbar" statusbar_visible="draft,ready,in_production,done" statusbar_colors='{"picking_except":"red","confirmed":"blue"}'/>
644 <div class="oe_title">
645 <h1>Manufacturing Order <field name="name" class="oe_inline"/></h1>
649 <field name="product_id" on_change="product_id_change(product_id)" domain="[('bom_ids','!=',False),('bom_ids.bom_id','=',False)]" class="oe_inline" context='{"default_supply_method":"produce", "default_type": "product"}'/>
650 <label for="product_qty"/>
652 <field name="product_qty" class="oe_inline"/>
653 <field name="product_uom" groups="product.group_uom" class="oe_inline"/>
654 <button type="action"
655 icon="terp-accessories-archiver+"
656 name="%(mrp.action_change_production_qty)d"
657 string="(Update)" states="confirmed" class="oe_edit_only oe_link"/>
659 <label for="product_uos_qty" groups="product.group_uos"/>
660 <div groups="product.group_uos">
661 <field name="product_uos_qty" class="oe_inline"/>
662 <label string="-" attrs="{'invisible':[('product_uos','=',False)]}" class="oe_inline"/>
663 <field name="product_uos" class="oe_inline"/>
665 <field name="date_planned"/>
668 <field name="bom_id" domain="[('product_id','=',product_id)]" context="{'default_product_id': product_id}" on_change="bom_id_change(bom_id)" required="1"/>
669 <field name="routing_id" class="oe_inline" groups="mrp.group_mrp_routings"/>
670 <field name="user_id"/>
671 <field name="origin"/>
673 <group groups="stock.group_locations">
674 <field name="location_src_id" domain="[('usage','=','internal')]" on_change="location_id_change(location_src_id,location_dest_id)"/>
675 <field name="location_dest_id" domain="[('usage','=','internal')]"/>
679 <page string="Consumed Products">
681 <group string="Products to Consume">
682 <field name="move_lines" nolabel="1" options="{'reload_on_button': true}">
683 <tree colors="blue:state == 'draft';black:state in ('picking_except','confirmed','ready','in_production');gray:state in ('cancel','done') " string="Products to Consume">
684 <field name="product_id"/>
685 <field name="product_qty" string="Quantity"/>
686 <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
687 <field name="prodlot_id" groups="stock.group_production_lot" context="{'product_id': product_id}"/>
688 <field name="state" invisible="1"/>
689 <button name="%(stock.move_consume)d"
690 string="Consume Products" type="action"
691 icon="gtk-go-forward" context="{'consume': True}"
692 states="draft,waiting,confirmed,assigned"/>
694 name="%(stock.track_line)d"
695 string="Split in Serial Numbers"
696 type="action" icon="gtk-justify-fill"
697 states="draft,waiting,confirmed,assigned"
698 groups="stock.group_production_lot"/>
699 <button name="%(stock.move_scrap)d"
700 string="Scrap Products" type="action"
701 icon="terp-gtk-jump-to-ltr" context="{'scrap': True}"
702 states="draft,waiting,confirmed,assigned"/>
706 <group string="Consumed Products">
707 <field name="move_lines2" nolabel="1" options="{'reload_on_button': true}">
708 <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">
709 <field name="product_id" readonly="1"/>
710 <field name="product_qty" readonly="1"/>
711 <field name="product_uom" readonly="1" string="Unit of Measure" groups="product.group_uom"/>
712 <field name="prodlot_id" context="{'product_id': product_id}" groups="stock.group_production_lot"/>
713 <field name="state" invisible="1"/>
714 <field name="scrapped" invisible="1"/>
720 <page string="Finished Products">
722 <group string="Products to Produce">
723 <field name="move_created_ids" nolabel="1" options="{'reload_on_button': true}">
724 <tree string="Products to Finish">
725 <field name="product_id"/>
726 <field name="product_qty"/>
727 <field name="product_uom" string="Unit of Measure" groups="product.group_uom"/>
728 <field name="state" invisible="1"/>
729 <button name="%(stock.action_partial_move_server)d"
731 type="action" states="confirmed,assigned"
732 icon="gtk-justify-fill"/>
736 <group string="Produced Products">
737 <field name="move_created_ids2" nolabel="1" options="{'reload_on_button': true}">
738 <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">
739 <field name="product_id" readonly="1"/>
740 <field name="product_qty" readonly="1"/>
741 <field name="product_uom" readonly="1" string="Unit of Measure" groups="product.group_uom"/>
742 <field name="location_dest_id" readonly="1" string="Destination Loc." widget="selection" groups="stock.group_locations"/>
743 <field name="prodlot_id" context="{'product_id': product_id}" groups="stock.group_production_lot"/>
744 <field name="scrapped" invisible="1"/>
745 <field name="state" invisible="1"/>
746 <button name="%(stock.track_line)d"
747 string="Split in Serial Numbers" type="action" icon="gtk-justify-fill" states="done,cancel"/>
748 <button name="%(stock.move_scrap)d"
749 string="Scrap Products" type="action" icon="terp-gtk-jump-to-ltr"
750 states="done,cancel"/>
756 <page string="Work Orders" groups="mrp.group_mrp_routings">
757 <button name="action_compute" states="draft"
758 string="Compute Data" type="object"
759 icon="terp-stock_format-scientific"/>
760 <field name="workcenter_lines">
761 <form string="Production Work Centers" version="7.0">
763 <field colspan="4" name="name"/>
764 <field name="workcenter_id"/>
765 <field name="sequence"/>
766 <field name="cycle"/>
767 <field name="hour" widget="float_time"/>
770 <tree string="Production Work Centers">
771 <field name="sequence"/>
773 <field name="workcenter_id"/>
774 <field name="cycle"/>
775 <field name="hour" widget="float_time"/>
779 <page string="Scheduled Products">
780 <button name="action_compute" states="draft"
781 string="Compute Data" type="object"
782 icon="terp-stock_format-scientific"/>
783 <field name="product_lines"/>
785 <page string="Extra Information">
788 <field name="priority"/>
789 <field name="date_start" invisible="1"/>
790 <field name="date_finished" invisible="1"/>
793 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
794 <field name="picking_id"/>
795 <field name="move_prod_id" groups="stock.group_locations"/>
801 <div class="oe_chatter">
802 <field name="message_follower_ids" widget="mail_followers"/>
803 <field name="message_ids" widget="mail_thread"/>
809 <record id="view_mrp_production_filter" model="ir.ui.view">
810 <field name="name">mrp.production.select</field>
811 <field name="model">mrp.production</field>
812 <field name="arch" type="xml">
813 <search string="Search Production">
814 <field name="name" string="Production" filter_domain="['|',('name','ilike',self),('origin','ilike',self)]"/>
815 <filter icon="terp-gtk-media-pause" string="Pending" name="pending" domain="[('state','=','confirmed')]"
816 help="Manufacturing Orders which are waiting for raw materials."/>
817 <filter icon="terp-camera_test" string="Ready" name="ready" domain="[('state','=','ready')]"
818 help="Manufacturing Orders which are ready to start production."/>
819 <filter icon="terp-check" string="In Production" name="inprogress" domain="[('state','=','in_production')]"
820 help="Manufacturing Orders which are currently in production."/>
822 <filter icon="terp-gnome-cpu-frequency-applet+" string="Late" domain="['&', ('date_planned','<', current_date), ('state', 'in', ('draft', 'confirmed', 'ready'))]"
823 help="Production started late"/>
824 <field name="product_id"/>
825 <field name="routing_id" groups="mrp.group_mrp_routings"/>
826 <group expand="0" string="Group By...">
827 <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
828 <filter string="Routing" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'routing_id'}"/>
829 <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
830 <filter string="Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_planned'}" help="Scheduled Date"/>
836 <record id="mrp_production_action" model="ir.actions.act_window">
837 <field name="name">Manufacturing Orders</field>
838 <field name="type">ir.actions.act_window</field>
839 <field name="res_model">mrp.production</field>
840 <field name="view_type">form</field>
841 <field name="view_mode">tree,form,calendar,graph,gantt</field>
842 <field name="view_id" eval="False"/>
843 <field name="search_view_id" ref="view_mrp_production_filter"/>
844 <field name="context">{}</field>
845 <field name="help" type="html">
846 <p class="oe_view_nocontent_create">
847 Click to create a manufacturing order.
849 A manufacuring order, based on a bill of materials, will
850 consume raw materials and produce finished products.
852 Manufacturing orders are usually proposed automatically based
853 on customer requirements or automated rules like the minimum
858 <menuitem action="mrp_production_action" id="menu_mrp_production_action"
859 parent="menu_mrp_manufacturing" sequence="1"/>
861 <record id="mrp_production_action_planning" model="ir.actions.act_window">
862 <field name="name">Manufacturing Orders</field>
863 <field name="type">ir.actions.act_window</field>
864 <field name="res_model">mrp.production</field>
865 <field name="view_type">form</field>
866 <field name="view_mode">calendar,tree,form,graph</field>
867 <field name="domain">[('state','in',('ready','confirmed','in_production'))]</field>
868 <field name="help" type="html">
869 <p class="oe_view_nocontent_create">
870 Click to start a new manufacturing order.
872 A manufacuring order, based on a bill of materials, will
873 consume raw materials and produce finished products.
875 Manufacturing orders are usually proposed automatically based
876 on customer requirements or automated rules like the minimum
882 <record id="mrp_production_action2" model="ir.actions.act_window">
883 <field name="name">Manufacturing Orders To Start</field>
884 <field name="type">ir.actions.act_window</field>
885 <field name="res_model">mrp.production</field>
886 <field name="view_type">form</field>
887 <field name="view_mode">tree,form,calendar,graph,gantt</field>
888 <field name="domain">[('state','=','ready')]</field>
889 <field name="filter" eval="True"/>
890 <field name="search_view_id" ref="view_mrp_production_filter"/>
893 <record id="mrp_production_action3" model="ir.actions.act_window">
894 <field name="name">Manufacturing Orders in Progress</field>
895 <field name="type">ir.actions.act_window</field>
896 <field name="res_model">mrp.production</field>
897 <field name="view_type">form</field>
898 <field name="view_mode">tree,form,calendar,graph,gantt</field>
899 <field name="domain">[('state','=','in_production')]</field>
900 <field name="filter" eval="True"/>
901 <field name="search_view_id" ref="view_mrp_production_filter"/>
904 <record id="mrp_production_action4" model="ir.actions.act_window">
905 <field name="name">Manufacturing Orders Waiting Products</field>
906 <field name="type">ir.actions.act_window</field>
907 <field name="res_model">mrp.production</field>
908 <field name="view_type">form</field>
909 <field name="view_mode">tree,form,calendar,graph,gantt</field>
910 <field name="domain">[('state','=','confirmed')]</field>
911 <field name="filter" eval="True"/>
912 <field name="search_view_id" ref="view_mrp_production_filter"/>
915 <record id="mrp_production_product_form_view" model="ir.ui.view">
916 <field name="name">mrp.production.product.line.form</field>
917 <field name="model">mrp.production.product.line</field>
918 <field name="arch" type="xml">
919 <form string="Scheduled Products" version="7.0">
922 <field name="product_id"/>
923 <field name="product_qty"/>
924 <field name="product_uom" groups="product.group_uom"/>
925 <field name="product_uos_qty" groups="product.group_uos"/>
926 <field name="product_uos" groups="product.group_uos"/>
931 <record id="mrp_production_product_tree_view" model="ir.ui.view">
932 <field name="name">mrp.production.product.line.tree</field>
933 <field name="model">mrp.production.product.line</field>
934 <field name="arch" type="xml">
935 <tree string="Scheduled Products">
936 <field name="product_id"/>
937 <field name="product_qty"/>
938 <field name="product_uom" groups="product.group_uom"/>
939 <field name="product_uos_qty" groups="product.group_uos"/>
940 <field name="product_uos" groups="product.group_uos"/>
949 <record id="view_procurement_form_inherit" model="ir.ui.view">
950 <field name="name">procurement.order.form.inherit</field>
951 <field name="model">procurement.order</field>
952 <field name="inherit_id" ref="procurement.procurement_form_view"/>
953 <field name="arch" type="xml">
955 <xpath expr="//field[@name='move_id']" position="before">
956 <field name="bom_id" domain="[('product_id','=',product_id),('bom_id','=',False)]"/>
957 <field name="production_id" attrs="{'invisible': [('production_id','=',False)]}"/>
959 <xpath expr="//field[@name='close_move']" position="after">
960 <group colspan="4" groups="product.group_mrp_properties">
961 <field colspan="4" name="property_ids" widget="many2many_tags"/>
967 <record id="product_product_normal_form_supply_view" model="ir.ui.view">
968 <field name="name">product.normal.form.mrp.inherit</field>
969 <field name="model">product.product</field>
970 <field name="inherit_id" ref="procurement.product_form_view_procurement_button"/>
971 <field name="arch" type="xml">
972 <xpath expr="//field[@name='supply_method']" position="attributes">
973 <attribute name="invisible">False</attribute>
975 <group name="procurement_help" position="inside">
976 <p attrs="{'invisible': ['|','|',('type','=','service'),('procure_method','<>','make_to_order'),('supply_method','<>','produce')]}">
977 When you sell this product, OpenERP will trigger <b>a manufacturing
978 order</b> using the bill of materials assigned to this product.
979 The delivery order will be ready once the production is done.
986 context="{'search_default_product_id': [active_id]}"
987 id="act_product_manufacturing_open"
988 name="Manufacturing Orders"
989 view_id="mrp_production_tree_view"
990 res_model="mrp.production"
991 src_model="product.product"/>
994 id="action_product_bom_structure"
995 name="Product BoM Structure"
996 domain="[('product_id', 'in', active_ids),('bom_id','=',False)]"
997 context="{'default_product_id': active_id}"
1000 view_id="mrp_bom_tree_view"
1002 src_model="product.product"
1003 groups="mrp.group_mrp_user"/>
1005 <!-- Menu for Resource for MRP-->
1007 <record id="mrp_workcenter_action" model="ir.actions.act_window">
1008 <field name="name">Work Centers</field>
1009 <field name="type">ir.actions.act_window</field>
1010 <field name="res_model">mrp.workcenter</field>
1011 <field name="view_type">form</field>
1012 <field name="view_id" ref="mrp_workcenter_tree_view"/>
1013 <field name="search_view_id" ref="view_mrp_workcenter_search"/>
1014 <field name="help" type="html">
1015 <p class="oe_view_nocontent_create">
1016 Click to add a work center.
1018 Work Centers allow you to create and manage manufacturing
1019 units. They consist of workers and/or machines, which are
1020 considered as units for task assignation as well as capacity
1021 and planning forecast.
1026 <menuitem id="menu_pm_resources_config" name="Resources" parent="menu_mrp_configuration"/>
1027 <menuitem action="mrp_workcenter_action" id="menu_view_resource_search_mrp" groups="mrp.group_mrp_routings" parent="mrp.menu_mrp_configuration" sequence="25"/>
1028 <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"/>
1029 <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"/>
1033 <menuitem id="menu_mrp_planning" name="Planning"
1034 parent="base.menu_mrp_root" sequence="2"/>
1035 <menuitem action="mrp.mrp_production_action_planning"
1036 id="menu_mrp_production_order_action" name="Order Planning"
1037 parent="menu_mrp_planning" sequence="1"/>
1040 <record model="ir.actions.act_window" id="product_open_bom">
1041 <field name="context">{'default_product_id': active_id, 'search_default_product_id': active_id}</field>
1042 <field name="name">Bill of Materials</field>
1043 <field name="domain">[('bom_id','=',False)]</field>
1044 <field name="res_model">mrp.bom</field>
1045 <field name="view_type">form</field>
1048 <record model="ir.ui.view" id="product_form_view_bom_button">
1049 <field name="name">product.product.procurement</field>
1050 <field name="model">product.product</field>
1051 <field name="inherit_id" ref="product.product_normal_form_view"/>
1052 <field name="arch" type="xml">
1053 <xpath expr="//div[@name='buttons']" position="inside">
1054 <button string="Bill of Materials" name="%(product_open_bom)d" type="action"/>