1 <?xml version="1.0" encoding="utf-8"?>
4 <menuitem id="prod_config_main" name="Products" parent="base.menu_base_config" sequence="70"/>
6 <record id="product_search_form_view" model="ir.ui.view">
7 <field name="name">product.search.form</field>
8 <field name="model">product.product</field>
9 <field name="arch" type="xml">
10 <search string="Product">
11 <field name="name" string="Product" filter_domain="['|',('name','ilike',self),('default_code','ilike',self)]"/>
12 <filter string="Services" icon="terp-accessories-archiver" domain="[('type','=','service')]"/>
13 <filter string="Products" icon="terp-accessories-archiver" domain="['|',('type','=','product'),('type','=','consu')]" help="Both stockable and consumable products"/>
15 <filter string="Can be Sold" name="filter_to_sell" icon="terp-accessories-archiver-minus" domain="[('sale_ok','=',1)]"/>
16 <field name="categ_id" operator="child_of"/>
17 <group expand="0" string="Context...">
18 <field name="pricelist_id" context="{'pricelist': self}" groups="product.group_sale_pricelist"/>
19 <field name="company_id" groups="base.group_multi_company"/>
21 <group expand='0' string='Group by...'>
22 <filter string='Category' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'categ_id'}"/>
23 <filter string='Default Unit of Measure' icon="terp-mrp" domain="[]" context="{'group_by' : 'uom_id'}"/>
24 <filter string='Type' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'type'}"/>
25 <filter string='Company' icon="terp-go-home" domain="[]" context="{'group_by' : 'company_id'}" groups="base.group_multi_company"/>
31 <record id="product_product_tree_view" model="ir.ui.view">
32 <field name="name">product.product.tree</field>
33 <field name="model">product.product</field>
34 <field eval="7" name="priority"/>
35 <field name="arch" type="xml">
36 <tree colors="red:virtual_available<0;blue:virtual_available>=0 and state in ('draft', 'end', 'obsolete');black:virtual_available>=0 and state not in ('draft', 'end', 'obsolete')" string="Products">
37 <field name="default_code"/>
39 <field name="categ_id" invisible="1"/>
40 <field name="type" invisible="1"/>
41 <field name="variants" groups="product.group_product_variant"/>
42 <field name="uom_id" string="Unit of Measure" groups="product.group_uom"/>
43 <field name="qty_available"/>
44 <field name="virtual_available"/>
45 <field name="lst_price"/>
46 <field name="price" invisible="not context.get('pricelist',False)"/>
47 <field name="standard_price" invisible="1"/>
49 <field name="company_id" groups="base.group_multi_company" invisible="1"/>
54 <record id="product_normal_form_view" model="ir.ui.view">
55 <field name="name">product.normal.form</field>
56 <field name="model">product.product</field>
57 <field eval="7" name="priority"/>
58 <field name="arch" type="xml">
59 <form string="Product" version="7.0">
61 <field name="image_medium" widget="image" class="oe_avatar oe_right"/>
62 <div class="oe_title">
63 <div class="oe_edit_only">
64 <label for="name" string="Product Name"/>
69 <label for="categ_id" class="oe_edit_only"/>
70 <h2><field name="categ_id"/></h2>
71 <div name="options" groups="base.group_user">
72 <field name="sale_ok"/>
73 <label for="sale_ok"/>
76 <div class="oe_right oe_button_box" name="buttons">
79 <page string="Information">
83 <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
84 <field name="list_price"/>
87 <field name="default_code"/>
90 <field name="ean13" placeholder="e.g. 5901234123457"/>
94 <field groups="product.group_product_variant" name="variants"/>
95 <field name="price_margin" groups="product.group_product_variant"/>
96 <field name="price_extra" groups="product.group_product_variant"/>
99 <field name="description" placeholder="describe the product's characteristics for internal use..."/>
101 <page string="Procurements" groups="base.group_user">
102 <group name="procurement">
104 <field name="procure_method" groups="base.group_user"/>
105 <field name="supply_method" groups="base.group_user" invisible="1"/>
106 <field name="cost_method" groups="product.group_costing_method"/>
107 <field name="standard_price" attrs="{'readonly':[('cost_method','=','average')]}"/>
109 <group name="procurement_help" class="oe_grey" col="1" groups="base.group_user">
110 <p attrs="{'invisible': [('type','<>','service'),('procure_method','<>','make_to_stock')]}">
111 When you sell this service, nothing special will be trigered
112 to deliver the customer, as you set the procurement method as
115 <p attrs="{'invisible': [('type','<>','product'),('procure_method','<>','make_to_stock')]}">
116 When you sell this product, OpenERP will <b>use the available
117 inventory</b> for the delivery order.
119 If there are not enough quantities available, the delivery order
120 will wait for new products. To fulfill the inventory, you should
121 create others rules like orderpoints.
123 <p attrs="{'invisible': [('type','<>','consu'),('procure_method','<>','make_to_stock')]}">
124 When you sell this product, a delivery order will be created.
125 OpenERP will consider that the <b>required quantities are always
126 available</b> as it's a consumable (as a result of this, the quantity
127 on hand may become negative).
130 <group groups="product.group_uom">
131 <field name="uom_po_id"/>
134 <separator string="Notes for Suppliers"/>
135 <field name="description_purchase" placeholder="This note will be displayed on requests for quotation..."/>
137 <page string="Inventory" groups="base.group_user">
138 <group name="inventory">
139 <group name="status" string="Status">
140 <field name="state"/>
141 <field name="product_manager"/>
143 <group name="Weights" groups="product.group_stock_packaging" string="Weights">
144 <field digits="(14, 3)" name="volume" attrs="{'readonly':[('type','=','service')]}"/>
145 <field name="weight" attrs="{'readonly':[('type','=','service')]}"/>
146 <field name="weight_net" attrs="{'readonly':[('type','=','service')]}"/>
150 <page string="Sales" attrs="{'readonly':[('sale_ok','=',0)]}">
152 <group string="Sale Conditions">
153 <label for="warranty"/>
155 <field name="warranty" class="oe_inline"/> months
158 <group groups="product.group_uos" string="Unit of Measure">
159 <field name="uos_id"/>
160 <field name="uos_coeff"/>
161 <field name="mes_type"/>
164 <field name="packaging" groups="product.group_stock_packaging">
165 <form string="Packaging" version="7.0">
168 <field name="sequence" invisible="1"/>
172 <field name="weight_ul"/>
173 <separator colspan="4" string="Palletization"/>
174 <field name="ul_qty"/>
176 <field name="weight"/>
177 <separator colspan="4" string="Pallet Dimension"/>
178 <field name="height"/>
179 <field name="width"/>
180 <field name="length"/>
182 <separator colspan="4" string="Description"/>
186 <separator string="Notes on Quotations"/>
187 <field name="description_sale" placeholder="note to be displayed on quotations..."/>
191 <div class="oe_chatter">
192 <field name="message_ids" widget="mail_thread"/>
193 <field name="message_follower_ids" widget="mail_followers"/>
199 <!-- Product Kanban View -->
201 <record model="ir.ui.view" id="product.product_kanban_view">
202 <field name="name">Product Kanban</field>
203 <field name="model">product.product</field>
204 <field name="arch" type="xml">
206 <field name="color"/>
208 <field name="image_small"/>
209 <field name="list_price"/>
211 <t t-name="kanban-box">
212 <div class="oe_kanban_vignette oe_semantic_html_override">
213 <a type="open"><img t-att-src="kanban_image('product.product', 'image_small', record.id.value)" class="oe_kanban_image"/></a>
214 <div class="oe_kanban_details">
217 <t t-if="record.code.raw_value">[<field name="code"/>]</t> <field name="name"/>
222 <li>Price: <field name="lst_price"></field></li>
232 <record id="product_normal_action" model="ir.actions.act_window">
233 <field name="name">Products</field>
234 <field name="type">ir.actions.act_window</field>
235 <field name="res_model">product.product</field>
236 <field name="view_type">form</field>
237 <field name="view_mode">tree,form,kanban</field>
238 <field name="view_id" ref="product_product_tree_view"/>
239 <field name="search_view_id" ref="product_search_form_view"/>
240 <field name="help" type="html">
241 <p class="oe_view_nocontent_create">
242 Click to define a new product.
244 You must define a product for everything you buy or sell,
245 wether it's a physical product, a consumable or service.
249 <record id="product_normal_action_sell" model="ir.actions.act_window">
250 <field name="name">Products</field>
251 <field name="type">ir.actions.act_window</field>
252 <field name="res_model">product.product</field>
253 <field name="view_mode">kanban,tree,form</field>
254 <field name="view_type">form</field>
255 <field name="context">{"search_default_filter_to_sell":1}</field>
256 <field name="view_id" ref="product_product_tree_view"/>
257 <field name="search_view_id" ref="product_search_form_view"/>
258 <field name="help" type="html">
259 <p class="oe_view_nocontent_create">
260 Click to define a new product.
262 You must define a product for everything you sell, wether it's
263 a physical product, a consumable or a service you offer to
266 The product form contains information to simplify the sale
267 process: price, notes in the quotation, accounting data,
268 procurement methods, etc.
273 <record id="open_view_product_tree1" model="ir.actions.act_window.view">
274 <field name="sequence" eval="2"/>
275 <field name="view_mode">tree</field>
276 <field name="view_id" ref="product_product_tree_view"/>
277 <field name="act_window_id" ref="product_normal_action_sell"/>
280 <record id="open_view_product_form1" model="ir.actions.act_window.view">
281 <field name="sequence" eval="3"/>
282 <field name="view_mode">form</field>
283 <field name="view_id" ref="product_normal_form_view"/>
284 <field name="act_window_id" ref="product_normal_action_sell"/>
287 <record id="open_view_product_kanban1" model="ir.actions.act_window.view">
288 <field name="sequence" eval="1"/>
289 <field name="view_mode">kanban</field>
290 <field name="view_id" ref="product_kanban_view"/>
291 <field name="act_window_id" ref="product_normal_action_sell"/>
294 <menuitem id="base.menu_product" name="Products" parent="base.menu_base_partner" sequence="9"/>
295 <menuitem action="product.product_normal_action_sell" id="product.menu_products" parent="base.menu_product" sequence="1"/>
297 <record id="product_normal_action_puchased" model="ir.actions.act_window">
298 <field name="name">Products</field>
299 <field name="type">ir.actions.act_window</field>
300 <field name="res_model">product.product</field>
301 <field name="view_type">form</field>
302 <field name="view_mode">kanban,tree,form</field>
303 <field name="context">{"search_default_filter_to_purchase":1}</field>
304 <field name="view_id" ref="product_kanban_view"/>
305 <field name="search_view_id" ref="product_search_form_view"/>
306 <field name="help" type="html">
307 <p class="oe_view_nocontent_create">
308 Click to define a new product.
310 You must define a product for everything you purchase, wheter
311 it's a physical product, a consumable or services you buy to
314 The product form contains detailed information to improve the
315 purchase process: prices, procurement logistics, accounting data,
316 available suppliers, etc.
321 <record id="product_category_search_view" model="ir.ui.view">
322 <field name="name">product.category.search</field>
323 <field name="model">product.category</field>
324 <field name="arch" type="xml">
325 <search string="Product Categories">
326 <field name="name" string="Product Categories"/>
327 <field name="parent_id"/>
331 <record id="product_category_form_view" model="ir.ui.view">
332 <field name="name">product.category.form</field>
333 <field name="model">product.category</field>
334 <field name="arch" type="xml">
335 <form string="Product Categories" version="7.0">
337 <div class="oe_title">
338 <label for="name" class="oe_edit_only"/>
345 <field name="parent_id"/>
352 <group name="account_property" string="Account Properties"/>
353 <group name="account_stock_property" string="Account Stock Properties"/>
359 <record id="product_category_list_view" model="ir.ui.view">
360 <field name="name">product.category.list</field>
361 <field name="model">product.category</field>
362 <field name="priority">1</field>
363 <field name="arch" type="xml">
364 <tree string="Product Categories">
365 <field name="complete_name"/>
369 <record id="product_category_tree_view" model="ir.ui.view">
370 <field name="name">product.category.tree</field>
371 <field name="model">product.category</field>
372 <field name="field_parent">child_id</field>
373 <field name="arch" type="xml">
374 <tree toolbar="True" string="Product Categories">
379 <record id="product_category_action" model="ir.actions.act_window">
380 <field name="name">Products by Category</field>
381 <field name="type">ir.actions.act_window</field>
382 <field name="res_model">product.category</field>
383 <field name="domain">[('parent_id','=',False)]</field>
384 <field name="view_type">tree</field>
385 <field name="view_id" ref="product_category_tree_view"/>
386 <field name="help" type="html">
388 Here is a list of all your products classified by category. You
389 can click a category to get the list of all products linked to
390 this category or to a child of this category.
395 action="product_category_action"
396 id="product.menu_products_category"
397 parent="base.menu_product"
398 sequence="0" groups="base.group_no_one"/>
399 <record id="product_category_action_form" model="ir.actions.act_window">
400 <field name="name">Product Categories</field>
401 <field name="type">ir.actions.act_window</field>
402 <field name="res_model">product.category</field>
403 <field name="view_type">form</field>
404 <field name="search_view_id" ref="product_category_search_view"/>
405 <field name="view_id" ref="product_category_list_view"/>
407 <menuitem action="product_category_action_form"
408 groups="base.group_no_one"
409 id="menu_product_category_action_form"
410 parent="prod_config_main" sequence="2"/>
413 <record id="product_normal_action_tree" model="ir.actions.act_window">
414 <field name="name">Products</field>
415 <field name="type">ir.actions.act_window</field>
416 <field name="res_model">product.product</field>
417 <field name="view_type">form</field>
418 <field name="view_mode">tree,form,kanban</field>
419 <field name="context">{'categ_id':active_id, 'search_default_categ_id':active_id}</field>
421 <record id="ir_product_category_open" model="ir.values">
422 <field eval="'tree_but_open'" name="key2"/>
423 <field eval="'product.category'" name="model"/>
424 <field name="name">Products by Categories</field>
425 <field eval="'ir.actions.act_window,%d'%product_normal_action_tree" name="value"/>
429 <!-- Unit of Measure -->
431 <record id="product_uom_tree_view" model="ir.ui.view">
432 <field name="name">product.uom.tree</field>
433 <field name="model">product.uom</field>
434 <field name="arch" type="xml">
435 <tree string="Units of Measure">
437 <field name="category_id"/>
438 <field name="factor"/>
443 <record id="product_uom_form_view" model="ir.ui.view">
444 <field name="name">product.uom.form</field>
445 <field name="model">product.uom</field>
446 <field name="arch" type="xml">
447 <form string="Units of Measure" version="7.0">
451 <field name="category_id"/>
452 <field name="active"/>
455 <field name="uom_type" on_change="onchange_type(uom_type)"/>
456 <p attrs="{'invisible':[('uom_type','!=','smaller')]}" colspan="2">
457 e.g: 1 * (reference unit) = ratio * (this unit)
459 <p attrs="{'invisible':[('uom_type','!=','bigger')]}" colspan="2">
460 e.g: 1 * (this unit) = ratio * (reference unit)
462 <field name="rounding"/>
463 <field name="factor" attrs="{'invisible':[('uom_type','!=','smaller')]}"/>
464 <field name="factor_inv" attrs="{'invisible':[('uom_type','!=','bigger')]}"/>
470 <record id="product_uom_form_action" model="ir.actions.act_window">
471 <field name="name">Units of Measure</field>
472 <field name="type">ir.actions.act_window</field>
473 <field name="res_model">product.uom</field>
474 <field name="view_type">form</field>
475 <field name="view_id" ref="product_uom_tree_view"/>
476 <field name="help" type="html">
477 <p class="oe_view_nocontent_create">
478 Click to add a new unit of measure.
480 You must define a conversion rate between several Units of
481 Measure within the same category.
485 <menuitem id="next_id_16" name="Units of Measure" parent="prod_config_main" sequence="30" groups="product.group_uom"/>
486 <menuitem action="product_uom_form_action" id="menu_product_uom_form_action" parent="base.menu_base_config" sequence="30" groups="product.group_uom"/>
488 <record id="product_uom_categ_form_view" model="ir.ui.view">
489 <field name="name">product.uom.categ.form</field>
490 <field name="model">product.uom.categ</field>
491 <field name="arch" type="xml">
492 <form string="Units of Measure categories" version="7.0">
499 <record id="product_uom_categ_form_action" model="ir.actions.act_window">
500 <field name="name">Unit of Measure Categories</field>
501 <field name="type">ir.actions.act_window</field>
502 <field name="res_model">product.uom.categ</field>
503 <field name="view_type">form</field>
504 <field name="view_mode">tree,form</field>
505 <field name="help" type="html">
506 <p class="oe_view_nocontent_create">
507 Click to add a new unit of measure category.
509 Units of measure belonging to the same category can be
510 converted between each others. For example, in the category
511 <i>'Time'</i>, you will have the following units of measure:
516 <menuitem action="product_uom_categ_form_action" id="menu_product_uom_categ_form_action" parent="base.menu_base_config" sequence="25" groups="base.group_no_one"/>
518 <record id="product_ul_form_view" model="ir.ui.view">
519 <field name="name">product.ul.form.view</field>
520 <field name="model">product.ul</field>
521 <field name="arch" type="xml">
522 <form string="Packaging" version="7.0">
530 <record id="product_ul_tree" model="ir.ui.view">
531 <field name="name">product.ul.tree</field>
532 <field name="model">product.ul</field>
533 <field name="arch" type="xml">
534 <tree string="Packaging">
540 <record id="product_ul_form_action" model="ir.actions.act_window">
541 <field name="name">Packaging</field>
542 <field name="type">ir.actions.act_window</field>
543 <field name="res_model">product.ul</field>
544 <field name="view_type">form</field>
545 <field name="view_mode">tree,form</field>
546 <field name="help" type="html">
547 <p class="oe_view_nocontent_create">
548 Click to add a new packaging type.
550 The packaging type define the dimensions as well as the number
551 of products per package. This will ensure salesperson sell the
552 right number of products according to the package selected.
557 action="product_ul_form_action" groups="product.group_stock_packaging" id="menu_product_ul_form_action" parent="prod_config_main" sequence="3"/>
559 <record id="product_packaging_tree_view" model="ir.ui.view">
560 <field name="name">product.packaging.tree.view</field>
561 <field name="model">product.packaging</field>
562 <field name="arch" type="xml">
563 <tree string="Packaging">
564 <field name="sequence" widget="handle"/>
572 <record id="product_packaging_form_view" model="ir.ui.view">
573 <field name="name">product.packaging.form.view</field>
574 <field name="model">product.packaging</field>
575 <field name="arch" type="xml">
576 <form string="Packaging" version="7.0">
578 <field name="product_id"/>
581 <field name="sequence" invisible="1"/>
585 <field name="weight_ul"/>
586 <separator colspan="4" string="Palletization"/>
587 <field name="ul_qty"/>
589 <field name="weight"/>
590 <separator colspan="4" string="Pallet Dimension"/>
591 <field name="height"/>
592 <field name="width"/>
593 <field name="length"/>
594 <separator colspan="4" string="Other Info"/>
595 <field colspan="4" name="name"/>
601 <record id="product_supplierinfo_form_view" model="ir.ui.view">
602 <field name="name">product.supplierinfo.form.view</field>
603 <field name="model">product.supplierinfo</field>
604 <field name="arch" type="xml">
605 <form string="Supplier Information" version="7.0">
607 <field name="name" context="{'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1}"/>
608 <field name="sequence"/>
609 <field name="product_name"/>
610 <field name="product_code"/>
611 <field name="min_qty"/>
612 <field name="product_uom" groups="product.group_uom"/>
613 <field name="delay"/>
614 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
616 <field groups="product.group_sale_pricelist" name="pricelist_ids">
617 <tree editable="bottom" string="Pricelist">
618 <field name="min_quantity"/>
619 <field name="price"/>
623 <field name="min_quantity"/>
624 <field name="price"/>
631 <record id="product_supplierinfo_tree_view" model="ir.ui.view">
632 <field name="name">product.supplierinfo.tree.view</field>
633 <field name="model">product.supplierinfo</field>
634 <field name="arch" type="xml">
635 <tree string="Supplier Information">
636 <field name="sequence" widget="handle"/>
638 <field name="delay"/>
639 <field name="min_qty"/>
640 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
645 <record id="product_variant_form_view" model="ir.ui.view">
646 <field name="name">product.variant.form</field>
647 <field name="model">product.product</field>
648 <field name="arch" type="xml">
649 <form string="Product Variant" version="7.0">
651 <field name="product_tmpl_id"/>
652 <field name="active"/>
653 <field name="variants"/>
654 <field name="default_code"/>
655 <field name="price_margin"/>
656 <field name="price_extra"/>
662 <record id="product_variant_tree_view" model="ir.ui.view">
663 <field name="name">product.variant.tree</field>
664 <field name="model">product.product</field>
665 <field name="arch" type="xml">
666 <tree string="Product Variant">
667 <field name="product_tmpl_id"/>
668 <field name="active"/>
669 <field name="variants"/>
670 <field name="default_code"/>
671 <field name="price_margin"/>
672 <field name="price_extra"/>
677 <record id="product_template_tree_view" model="ir.ui.view">
678 <field name="name">product.template.product.tree</field>
679 <field name="model">product.template</field>
680 <field name="arch" type="xml">
681 <tree string="Product Template">
683 <field name="categ_id"/>
685 <field name="state"/>
690 <record id="product_template_form_view" model="ir.ui.view">
691 <field name="name">product.template.product.form</field>
692 <field name="model">product.template</field>
693 <field name="arch" type="xml">
694 <form string="Product Template" version="7.0">
695 <label for="name" class="oe_edit_only"/>
696 <h1><field name="name"/></h1>
697 <label for="categ_id" class="oe_edit_only"/>
698 <h2><field name="categ_id"/></h2>
700 <page string="Information">
702 <group string="Product Type">
703 <field name="sale_ok"/>
705 <group string="Procurement">
707 <field name="procure_method"/>
708 <field name="supply_method"/>
711 <group string="Base Prices">
712 <field name="list_price"/>
713 <field name="standard_price" attrs="{'readonly':[('cost_method','=','average')]}"/>
714 <field name="cost_method"/>
716 <group string="Weights">
717 <field digits="(14, 3)" name="volume" attrs="{'readonly':[('type','=','service')]}"/>
718 <field digits="(14, 3)" name="weight" attrs="{'readonly':[('type','=','service')]}"/>
719 <field digits="(14, 3)" name="weight_net" attrs="{'readonly':[('type','=','service')]}"/>
721 <group name="uom" string="Unit of Measure">
722 <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
723 <field name="uom_po_id"/>
726 <group name="uos" groups="product.group_uom" string="Second Unit of Measure">
727 <field name="uos_id"/>
728 <field name="uos_coeff"/>
729 <field name="mes_type"/>
733 <page string="Procurement & Locations">
735 <group name="delay" string="Delays">
736 <label for="produce_delay"/>
738 <field name="produce_delay" class="oe_inline"/> days
740 <field name="warranty"/>
745 <page string="Suppliers">
746 <field name="seller_ids"/>
748 <page string="Descriptions">
749 <separator string="Internal Description"/>
750 <field name="description"/>
751 <separator string="Sale Description"/>
752 <field name="description_sale"/>
753 <separator string="Purchase Description"/>
754 <field name="description_purchase"/>
761 <record id="product_template_action_tree" model="ir.actions.act_window">
762 <field name="name">Product Templates</field>
763 <field name="type">ir.actions.act_window</field>
764 <field name="res_model">product.template</field>
765 <field name="view_type">form</field>
766 <field name="view_id" ref="product_template_tree_view"/>