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),('variants','ilike',self)]"/>
12 <filter string="Services" icon="terp-accessories-archiver" domain="[('type','=','service')]"/>
13 <filter string="Consumable" name="consumable" icon="terp-accessories-archiver" domain="[('type','=','consu')]" help="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" widget="selection" context="{'pricelist': self}" filter_domain="[]" groups="product.group_sale_pricelist"/> <!-- Keep widget=selection on this field to pass numeric `self` value, which is not the case for regular m2o widgets! -->
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"/>
26 <filter string='Template' name="template_id" domain="[]" context="{'group_by' : 'product_tmpl_id'}" groups="product.group_product_variant"/>
32 <record id="product_product_tree_view" model="ir.ui.view">
33 <field name="name">product.product.tree</field>
34 <field name="model">product.product</field>
35 <field eval="7" name="priority"/>
36 <field name="arch" type="xml">
37 <tree string="Products">
38 <field name="default_code"/>
40 <field name="variants" groups="product.group_product_variant"/>
41 <field name="categ_id" invisible="1"/>
42 <field name="type" invisible="1"/>
43 <field name="uom_id" string="Unit of Measure" groups="product.group_uom"/>
44 <field name="lst_price"/>
45 <field name="price" invisible="not context.get('pricelist',False)"/>
46 <field name="standard_price" invisible="1"/>
48 <field name="company_id" groups="base.group_multi_company" invisible="1"/>
49 <field name="product_tmpl_id" 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="is_only_child" invisible="1"/>
62 <field name="image_medium" widget="image" class="oe_avatar oe_left"
63 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
64 <div class="oe_title">
65 <div class="oe_edit_only">
66 <label for="name" name='label_name' string="Product Name"
67 attrs="{'invisible': [('is_only_child', '=', False)]}"/>
68 <label for="name" name='label_name' string="Product Template"
69 attrs="{'invisible': [('is_only_child', '=', True)]}"/>
72 <field name="name" class="oe_inline"
73 attrs="{'required': [('is_only_child', '=', True)],
74 'invisible': [('is_only_child', '=', False)]}"/>
75 <field name="product_tmpl_id" class="oe_inline" readonly="1" required="0"
76 attrs="{'invisible': [('is_only_child', '=', True)]}"/>
77 <span groups="product.group_product_variant"
78 attrs="{'invisible': [('is_only_child', '=', True), ('variants', '=', False)]}">
79 - <field name="variants" placeholder="Variant Name" class="oe_inline"/>
82 <span attrs="{'invisible': [('is_only_child', '=', True)]}">
83 <p>Generic product settings are managed on
84 <button name="open_product_template" type="object" string="the template" class="oe_link"/>
87 <label for="categ_id" class="oe_edit_only"/>
88 <h2><field name="categ_id" attrs="{'readonly': [('is_only_child', '=', False)]}"/></h2>
89 <label for="public_categ_id" class="oe_edit_only"/>
90 <h3><field name="public_categ_id" attrs="{'readonly': [('is_only_child', '=', False)]}"/></h3>
91 <div name="options" groups="base.group_user">
92 <field name="sale_ok"/>
93 <label for="sale_ok"/>
96 <div class="oe_right oe_button_box" name="buttons">
99 <page string="Information">
103 attrs="{'invisible': [('is_only_child', '=', False)]}"/>
104 <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"
105 attrs="{'invisible': [('is_only_child', '=', False)]}"/>
106 <field name="lst_price" string="Public Sale Price"
107 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
108 <field name="price_extra"
109 attrs="{'invisible': [('is_only_child', '=', True)]}"/>
112 <field name="default_code"/>
115 <field name="ean13" placeholder="e.g. 5901234123457"/>
117 <field name="company_id" groups="base.group_multi_company" widget="selection"
118 attrs="{'invisible': [('is_only_child', '=', False)]}"/>
121 <field name="description" placeholder="describe the product characteristics..."
122 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
124 <page string="Procurements" groups="base.group_user">
125 <group name="procurement">
126 <group name="general">
127 <field name="active"/>
128 <field name="standard_price" attrs="{'readonly': [('is_only_child', '=', False)]}"/>
130 <group name="procurement_uom" groups="product.group_uom" string="Purchase">
131 <field name="uom_po_id"
132 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
135 <separator string="Description for Suppliers"/>
136 <field name="description_purchase" placeholder="This note will be displayed on requests for quotation..."/>
138 <page string="Inventory" groups="base.group_user">
139 <group name="inventory">
140 <group name="status" string="Status">
142 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
143 <field name="product_manager"
144 attrs="{'readonly': [('is_only_child', '=', False)]}"
145 context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'base.group_sale_manager']}"/>
147 <group name="Weights" groups="product.group_stock_packaging" string="Weights">
148 <field digits="(14, 3)" name="volume"
149 attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
151 attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
152 <field name="weight_net"
153 attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
157 <page string="Sales" attrs="{'invisible':[('sale_ok','=',False)]}">
159 <group string="Sale Conditions">
160 <label for="warranty"/>
161 <div attrs="{'readonly': [('is_only_child', '=', False)]}">
162 <field name="warranty" class="oe_inline"/> months
165 <group groups="product.group_uos" string="Unit of Measure">
167 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
168 <field name="uos_coeff"
169 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
170 <field name="mes_type"
171 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
174 <field name="packaging" groups="product.group_stock_packaging"
175 attrs="{'readonly': [('is_only_child', '=', False)]}">
176 <form string="Packaging" version="7.0">
179 <field name="sequence" invisible="1"/>
183 <separator colspan="4" string="Palletization"/>
184 <field name="ul_qty"/>
185 <field name="ul_container"/>
187 <field name="weight"/>
189 <separator colspan="4" string="Description"/>
193 <separator string="Description for Quotations"/>
194 <field name="description_sale" placeholder="note to be displayed on quotations..."
195 attrs="{'readonly': [('is_only_child', '=', False)]}"/>
199 <div class="oe_chatter">
200 <field name="message_follower_ids" widget="mail_followers"/>
201 <field name="message_ids" widget="mail_thread"/>
207 <!-- Product Kanban View -->
209 <record model="ir.ui.view" id="product.product_kanban_view">
210 <field name="name">Product Kanban</field>
211 <field name="model">product.product</field>
212 <field name="arch" type="xml">
214 <field name="color"/>
216 <field name="image_small"/>
217 <field name="list_price"/>
219 <t t-name="kanban-box">
220 <div class="oe_kanban_vignette oe_semantic_html_override">
221 <a type="open"><img t-att-src="kanban_image('product.product', 'image_small', record.id.value)" class="oe_kanban_image"/></a>
222 <div class="oe_kanban_details">
225 <t t-if="record.code.raw_value">[<field name="code"/>]</t> <field name="name"/> <t t-if="record.variants.raw_value">(<field name="variants"/>)</t>
230 <li>Price: <field name="lst_price"></field></li>
240 <record id="product_normal_action" model="ir.actions.act_window">
241 <field name="name">Products</field>
242 <field name="type">ir.actions.act_window</field>
243 <field name="res_model">product.product</field>
244 <field name="view_type">form</field>
245 <field name="view_mode">tree,form,kanban</field>
246 <field name="view_id" ref="product_product_tree_view"/>
247 <field name="search_view_id" ref="product_search_form_view"/>
248 <field name="help" type="html">
249 <p class="oe_view_nocontent_create">
250 Click to define a new product.
252 You must define a product for everything you buy or sell,
253 whether it's a physical product, a consumable or service.
257 <record id="product_normal_action_sell" model="ir.actions.act_window">
258 <field name="name">Products</field>
259 <field name="type">ir.actions.act_window</field>
260 <field name="res_model">product.product</field>
261 <field name="view_mode">kanban,tree,form</field>
262 <field name="view_type">form</field>
263 <field name="context">{"search_default_filter_to_sell":1}</field>
264 <field name="view_id" ref="product_product_tree_view"/>
265 <field name="search_view_id" ref="product_search_form_view"/>
266 <field name="help" type="html">
267 <p class="oe_view_nocontent_create">
268 Click to define a new product.
270 You must define a product for everything you sell, whether it's
271 a physical product, a consumable or a service you offer to
274 The product form contains information to simplify the sale
275 process: price, notes in the quotation, accounting data,
276 procurement methods, etc.
281 <record id="open_view_product_tree1" model="ir.actions.act_window.view">
282 <field name="sequence" eval="2"/>
283 <field name="view_mode">tree</field>
284 <field name="view_id" ref="product_product_tree_view"/>
285 <field name="act_window_id" ref="product_normal_action_sell"/>
288 <record id="open_view_product_form1" model="ir.actions.act_window.view">
289 <field name="sequence" eval="3"/>
290 <field name="view_mode">form</field>
291 <field name="view_id" ref="product_normal_form_view"/>
292 <field name="act_window_id" ref="product_normal_action_sell"/>
295 <record id="open_view_product_kanban1" model="ir.actions.act_window.view">
296 <field name="sequence" eval="1"/>
297 <field name="view_mode">kanban</field>
298 <field name="view_id" ref="product_kanban_view"/>
299 <field name="act_window_id" ref="product_normal_action_sell"/>
302 <menuitem id="base.menu_product" name="Products" parent="base.menu_base_partner" sequence="9"/>
303 <menuitem id="product.menu_products" action="product.product_normal_action_sell" parent="base.menu_product" sequence="1"/>
305 <record id="product_normal_action_puchased" model="ir.actions.act_window">
306 <field name="name">Products</field>
307 <field name="type">ir.actions.act_window</field>
308 <field name="res_model">product.product</field>
309 <field name="view_type">form</field>
310 <field name="view_mode">kanban,tree,form</field>
311 <field name="context">{"search_default_filter_to_purchase":1}</field>
312 <field name="view_id" ref="product_kanban_view"/>
313 <field name="search_view_id" ref="product_search_form_view"/>
314 <field name="help" type="html">
315 <p class="oe_view_nocontent_create">
316 Click to define a new product.
318 You must define a product for everything you purchase, whether
319 it's a physical product, a consumable or services you buy to
322 The product form contains detailed information to improve the
323 purchase process: prices, procurement logistics, accounting data,
324 available suppliers, etc.
329 <record id="product_category_search_view" model="ir.ui.view">
330 <field name="name">product.category.search</field>
331 <field name="model">product.category</field>
332 <field name="arch" type="xml">
333 <search string="Product Categories">
334 <field name="name" string="Product Categories"/>
335 <field name="parent_id"/>
339 <record id="product_category_form_view" model="ir.ui.view">
340 <field name="name">product.category.form</field>
341 <field name="model">product.category</field>
342 <field name="arch" type="xml">
343 <form string="Product Categories" version="7.0">
345 <div class="oe_title">
346 <label for="name" class="oe_edit_only"/>
352 <group name="parent" col="4">
353 <field name="parent_id"/>
361 <record id="product_category_list_view" model="ir.ui.view">
362 <field name="name">product.category.list</field>
363 <field name="model">product.category</field>
364 <field name="priority">1</field>
365 <field name="arch" type="xml">
366 <tree string="Product Categories">
367 <field name="complete_name"/>
371 <record id="product_category_tree_view" model="ir.ui.view">
372 <field name="name">product.category.tree</field>
373 <field name="model">product.category</field>
374 <field name="field_parent">child_id</field>
375 <field name="arch" type="xml">
376 <tree toolbar="True" string="Product Categories">
381 <record id="product_category_action" model="ir.actions.act_window">
382 <field name="name">Products by Category</field>
383 <field name="type">ir.actions.act_window</field>
384 <field name="res_model">product.category</field>
385 <field name="domain">[('parent_id','=',False)]</field>
386 <field name="view_type">tree</field>
387 <field name="view_id" ref="product_category_tree_view"/>
388 <field name="help" type="html">
390 Here is a list of all your products classified by category. You
391 can click a category to get the list of all products linked to
392 this category or to a child of this category.
397 action="product_category_action"
398 id="product.menu_products_category"
399 parent="base.menu_product"
400 sequence="30" groups="base.group_no_one"/>
401 <record id="product_category_action_form" model="ir.actions.act_window">
402 <field name="name">Product Categories</field>
403 <field name="type">ir.actions.act_window</field>
404 <field name="res_model">product.category</field>
405 <field name="view_type">form</field>
406 <field name="search_view_id" ref="product_category_search_view"/>
407 <field name="view_id" ref="product_category_list_view"/>
409 <menuitem action="product_category_action_form"
410 groups="base.group_no_one"
411 id="menu_product_category_action_form"
412 parent="prod_config_main" sequence="2"/>
415 <record id="product_normal_action_tree" model="ir.actions.act_window">
416 <field name="name">Products</field>
417 <field name="type">ir.actions.act_window</field>
418 <field name="res_model">product.product</field>
419 <field name="view_type">form</field>
420 <field name="view_mode">tree,form,kanban</field>
421 <field name="context">{'categ_id':active_id, 'search_default_categ_id':active_id}</field>
423 <record id="ir_product_category_open" model="ir.values">
424 <field eval="'tree_but_open'" name="key2"/>
425 <field eval="'product.category'" name="model"/>
426 <field name="name">Products by Categories</field>
427 <field eval="'ir.actions.act_window,%d'%product_normal_action_tree" name="value"/>
431 <!-- Product Public Categories -->
432 <record id="product_public_category_form_view" model="ir.ui.view">
433 <field name="name">product.public.category.form</field>
434 <field name="model">product.public.category</field>
435 <field name="arch" type="xml">
436 <form string="Pos/Public Categories" version="7.0">
438 <field name="image_medium" widget='image' class="oe_avatar oe_right"/>
439 <div class="oe_left">
442 <field name="parent_id"/>
443 <field name="sequence"/>
450 <record id="product_public_category_tree_view" model="ir.ui.view">
451 <field name="name">product.public.category.tree</field>
452 <field name="model">product.public.category</field>
453 <field name="field_parent" eval="False"/>
454 <field name="arch" type="xml">
455 <tree string="Product Product Categories">
456 <field name="sequence" invisible="1"/>
457 <field name="complete_name"/>
461 <record id="product_public_category_action" model="ir.actions.act_window">
462 <field name="name">Pos/Public Product Categories</field>
463 <field name="type">ir.actions.act_window</field>
464 <field name="res_model">product.public.category</field>
465 <field name="view_type">form</field>
466 <field name="view_mode">tree,form</field>
467 <field name="view_id" eval="False"/>
468 <field name="help" type="html">
469 <p class="oe_view_nocontent_create">
470 Click to define a new category.
472 Categories are used to browse your products through the
473 touchscreen interface.
475 If you put a photo on the category, the layout of the
476 touchscreen interface will automatically. We suggest not to put
477 a photo on categories for small (1024x768) screens.
481 <menuitem action="product_public_category_action" id="menu_product_public_category" parent="prod_config_main" sequence="10" />
484 <!-- Unit of Measure -->
486 <record id="product_uom_tree_view" model="ir.ui.view">
487 <field name="name">product.uom.tree</field>
488 <field name="model">product.uom</field>
489 <field name="arch" type="xml">
490 <tree string="Units of Measure">
492 <field name="category_id"/>
497 <record id="product_uom_form_view" model="ir.ui.view">
498 <field name="name">product.uom.form</field>
499 <field name="model">product.uom</field>
500 <field name="arch" type="xml">
501 <form string="Units of Measure" version="7.0">
505 <field name="category_id"/>
506 <field name="uom_type" on_change="onchange_type(uom_type)"/>
507 <label for="factor"/>
509 <field name="factor" attrs="{'invisible':[('uom_type','!=','smaller')]}"/>
510 <field name="factor_inv" attrs="{'invisible':[('uom_type','!=','bigger')]}"/>
511 <p attrs="{'invisible':[('uom_type','!=','smaller')]}" class="oe_grey">
512 e.g: 1 * (reference unit) = ratio * (this unit)
514 <p attrs="{'invisible':[('uom_type','!=','bigger')]}" class="oe_grey">
515 e.g: 1 * (this unit) = ratio * (reference unit)
520 <field name="active"/>
521 <field name="rounding"/>
527 <record id="product_uom_form_action" model="ir.actions.act_window">
528 <field name="name">Units of Measure</field>
529 <field name="type">ir.actions.act_window</field>
530 <field name="res_model">product.uom</field>
531 <field name="view_type">form</field>
532 <field name="view_id" ref="product_uom_tree_view"/>
533 <field name="help" type="html">
534 <p class="oe_view_nocontent_create">
535 Click to add a new unit of measure.
537 You must define a conversion rate between several Units of
538 Measure within the same category.
542 <menuitem id="next_id_16" name="Units of Measure" parent="prod_config_main" sequence="30" groups="product.group_uom"/>
543 <menuitem action="product_uom_form_action" id="menu_product_uom_form_action" parent="base.menu_base_config" sequence="30" groups="product.group_uom"/>
545 <record id="product_uom_categ_form_view" model="ir.ui.view">
546 <field name="name">product.uom.categ.form</field>
547 <field name="model">product.uom.categ</field>
548 <field name="arch" type="xml">
549 <form string="Units of Measure categories" version="7.0">
556 <record id="product_uom_categ_form_action" model="ir.actions.act_window">
557 <field name="name">Unit of Measure Categories</field>
558 <field name="type">ir.actions.act_window</field>
559 <field name="res_model">product.uom.categ</field>
560 <field name="view_type">form</field>
561 <field name="view_mode">tree,form</field>
562 <field name="help" type="html">
563 <p class="oe_view_nocontent_create">
564 Click to add a new unit of measure category.
566 Units of measure belonging to the same category can be
567 converted between each others. For example, in the category
568 <i>'Time'</i>, you will have the following units of measure:
573 <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"/>
575 <record id="product_ul_form_view" model="ir.ui.view">
576 <field name="name">product.ul.form.view</field>
577 <field name="model">product.ul</field>
578 <field name="arch" type="xml">
579 <form string="Logistic Units" version="7.0">
585 <field name="height"/>
586 <field name="width"/>
587 <field name="length"/>
588 <field name="weight"/>
593 <record id="product_ul_tree" model="ir.ui.view">
594 <field name="name">product.ul.tree</field>
595 <field name="model">product.ul</field>
596 <field name="arch" type="xml">
597 <tree string="Logistic Units">
603 <record id="product_ul_form_action" model="ir.actions.act_window">
604 <field name="name">Logistic Units</field>
605 <field name="type">ir.actions.act_window</field>
606 <field name="res_model">product.ul</field>
607 <field name="view_type">form</field>
608 <field name="view_mode">tree,form</field>
609 <field name="help" type="html">
610 <p class="oe_view_nocontent_create">
611 Click to add a new Logistic Unit
613 The logistic unit defines the container used for the package.
614 It has a type (e.g. pallet, box, ...) and you can specify its
620 action="product_ul_form_action" groups="product.group_stock_packaging" id="menu_product_ul_form_action" parent="prod_config_main" sequence="5"/>
622 <record id="product_packaging_tree_view" model="ir.ui.view">
623 <field name="name">product.packaging.tree.view</field>
624 <field name="model">product.packaging</field>
625 <field name="arch" type="xml">
626 <tree string="Packaging">
627 <field name="sequence" widget="handle"/>
631 <field name="ul_container"/>
636 <record id="product_packaging_form_view" model="ir.ui.view">
637 <field name="name">product.packaging.form.view</field>
638 <field name="model">product.packaging</field>
639 <field name="arch" type="xml">
640 <form string="Packaging" version="7.0">
642 <field name="product_id"/>
645 <field name="sequence" invisible="1"/>
649 <separator colspan="4" string="Palletization"/>
650 <field name="ul_qty"/>
652 <field name="ul_container"/>
653 <field name="weight"/>
654 <separator colspan="4" string="Other Info"/>
655 <field colspan="4" name="name"/>
661 <record id="product_supplierinfo_form_view" model="ir.ui.view">
662 <field name="name">product.supplierinfo.form.view</field>
663 <field name="model">product.supplierinfo</field>
664 <field name="arch" type="xml">
665 <form string="Supplier Information" version="7.0">
667 <field name="name" context="{'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1}"/>
668 <field name="sequence"/>
669 <field name="product_name"/>
670 <field name="product_code"/>
671 <field name="min_qty"/>
672 <field name="product_uom" groups="product.group_uom"/>
673 <field name="delay"/>
674 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
676 <p groups="product.group_purchase_pricelist" class="oe_grey">The prices below will only be taken into account when your pricelist is set as based on supplier prices.</p>
677 <field groups="product.group_purchase_pricelist" name="pricelist_ids">
678 <tree editable="bottom" string="Pricelist">
679 <field name="min_quantity"/>
680 <field name="price"/>
684 <field name="min_quantity"/>
685 <field name="price"/>
692 <record id="product_supplierinfo_tree_view" model="ir.ui.view">
693 <field name="name">product.supplierinfo.tree.view</field>
694 <field name="model">product.supplierinfo</field>
695 <field name="arch" type="xml">
696 <tree string="Supplier Information">
697 <field name="sequence" widget="handle"/>
699 <field name="delay"/>
700 <field name="min_qty"/>
701 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
707 <record id="product_variant_search_form_view" model="ir.ui.view">
708 <field name="name">product.variant.search.form</field>
709 <field name="model">product.product</field>
710 <field name="arch" type="xml">
711 <search string="Product Variant">
712 <field name="product_tmpl_id"/>
713 <field name="name" string="Product" filter_domain="['|','|',('name','ilike',self),('default_code','ilike',self),('variants','ilike',self)]"/>
714 <group expand='0' string='Group by...'>
715 <filter string='Template' name="template_id" domain="[]" context="{'group_by' : 'product_tmpl_id'}"/>
720 <record id="product_variant_form_view" model="ir.ui.view">
721 <field name="name">product.variant.form</field>
722 <field name="model">product.product</field>
723 <field name="arch" type="xml">
724 <form string="Product Variant" version="7.0">
726 <field name="product_tmpl_id"/>
727 <field name="active"/>
728 <field name="variants" required="1"/>
729 <field name="default_code"/>
730 <field name="price_margin"/>
731 <field name="price_extra"/>
736 <record id="product_variant_tree_view" model="ir.ui.view">
737 <field name="name">product.variant.tree</field>
738 <field name="model">product.product</field>
739 <field name="arch" type="xml">
740 <tree string="Product Variant">
741 <field name="product_tmpl_id"/>
742 <field name="variants"/>
743 <field name="default_code"/>
744 <field name="price_margin"/>
745 <field name="price_extra"/>
746 <field name="company_id" invisible="1"/>
747 <field name="type" invisible="1"/>
748 <field name="uom_id" invisible="1"/>
749 <field name="categ_id" invisible="1"/>
753 <record id="product_variant_action" model="ir.actions.act_window">
754 <field name="name">Product Variants</field>
755 <field name="type">ir.actions.act_window</field>
756 <field name="domain">[('variants','!=', '')]</field>
757 <field name="res_model">product.product</field>
758 <field name="view_type">form</field>
759 <field name="view_mode">tree,form,kanban</field>
760 <field name="view_id" ref="product_variant_tree_view"/>
761 <field name="search_view_id" ref="product_variant_search_form_view"/>
762 <field name="help" type="html">
763 <p class="oe_view_nocontent_create">
764 Click to define a new variant of product.
768 <record id="tree_view_product_variant" model="ir.actions.act_window.view">
769 <field name="sequence" eval="10"/>
770 <field name="view_mode">tree</field>
771 <field name="view_id" ref="product_variant_tree_view"/>
772 <field name="act_window_id" ref="product_variant_action"/>
774 <record id="form_view_product_variant" model="ir.actions.act_window.view">
775 <field name="sequence" eval="20"/>
776 <field name="view_mode">form</field>
777 <field name="view_id" ref="product_variant_form_view"/>
778 <field name="act_window_id" ref="product_variant_action"/>
780 <menuitem action="product.product_variant_action" id="product.menu_variant_product" parent="prod_config_main" sequence="4" groups="product.group_product_variant"/>
784 <record id="product_template_search_view" model="ir.ui.view">
785 <field name="name">product.template.search</field>
786 <field name="model">product.template</field>
787 <field name="arch" type="xml">
788 <search string="Product Template">
789 <field name="name" string="Product"/>
790 <filter string="Services" icon="terp-accessories-archiver" domain="[('type','=','service')]"/>
791 <filter string="Consumable" name="consumable" icon="terp-accessories-archiver" domain="[('type','=','consu')]" help="Consumable products"/>
793 <filter string="Can be Sold" name="filter_to_sell" icon="terp-accessories-archiver-minus" domain="[('sale_ok','=',1)]"/>
794 <field name="categ_id"/>
795 <group expand='0' string='Group by...'>
796 <filter string='Category' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'categ_id'}"/>
797 <filter string='Default Unit of Measure' icon="terp-mrp" domain="[]" context="{'group_by' : 'uom_id'}"/>
798 <filter string='Type' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'type'}"/>
804 <record id="product_template_tree_view" model="ir.ui.view">
805 <field name="name">product.template.product.tree</field>
806 <field name="model">product.template</field>
807 <field name="arch" type="xml">
808 <tree string="Product Template">
810 <field name="categ_id"/>
812 <field name="state"/>
813 <field name="uom_id" invisible="1"/>
818 <record id="product_template_form_view" model="ir.ui.view">
819 <field name="name">product.template.product.form</field>
820 <field name="model">product.template</field>
821 <field name="arch" type="xml">
822 <form string="Product Template" version="7.0">
824 <field name="image_medium" widget="image" class="oe_avatar oe_left"/>
825 <div class="oe_title">
826 <div class="oe_edit_only">
827 <label for="name" string="Product Name"/>
832 <label for="categ_id" class="oe_edit_only"/>
833 <h2><field name="categ_id"/></h2>
834 <label for="public_categ_id" class="oe_edit_only"/>
835 <h3><field name="public_categ_id"/></h3>
836 <div name="options" groups="base.group_user">
837 <field name="sale_ok"/>
838 <label for="sale_ok"/>
842 <page string="Information">
846 <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
847 <field name="list_price"/>
850 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
853 <group colspan="4" string="Product Variants" groups="product.group_product_variant">
854 <field colspan="4" name="product_variant_ids" nolabel="1" >
855 <tree string="Product Variants" editable="bottom">
856 <field name="variants" required="1"/>
857 <field name="price_margin" string="Variant Price Margin"/>
858 <field name="price_extra"/>
859 <field name="lst_price" string="Sale Price" readonly="1"/>
863 <field name="description" placeholder="describe the product characteristics..."/>
865 <page string="Procurements" groups="base.group_user">
866 <group name="procurement">
867 <group name="general">
868 <field name="standard_price" attrs="{'readonly': [('is_only_child', '=', False)]}"/>
870 <group name="procurement_uom" groups="product.group_uom" string="Purchase">
871 <field name="uom_po_id"/>
874 <separator string="Suppliers"/>
875 <field name="seller_ids"/>
876 <separator string="Description for Suppliers"/>
877 <field name="description_purchase" placeholder="This note will be displayed on requests for quotation..."/>
879 <page string="Inventory">
880 <group name="inventory">
881 <group name="status" string="Status">
882 <field name="state"/>
883 <field name="product_manager"/>
885 <group name ="weight" string="Weights">
886 <field digits="(14, 3)" name="volume" attrs="{'readonly':[('type','=','service')]}"/>
887 <field digits="(14, 3)" name="weight" attrs="{'readonly':[('type','=','service')]}"/>
888 <field digits="(14, 3)" name="weight_net" attrs="{'readonly':[('type','=','service')]}"/>
892 <page string="Sales" attrs="{'invisible':[('sale_ok','=',False)]}">
894 <group name="sale_condition" string="Sale Conditions">
895 <label for="warranty"/>
897 <field name="warranty" class="oe_inline" style="vertical-align:baseline"/> months
900 <group groups="product.group_uos" string="Unit of Measure">
901 <field name="uos_id"/>
902 <field name="uos_coeff"/>
903 <field name="mes_type"/>
906 <separator string="Description for Quotations"/>
907 <field name="description_sale" placeholder="note to be displayed on quotations..."/>
911 <div class="oe_chatter">
912 <field name="message_follower_ids" widget="mail_followers"/>
913 <field name="message_ids" widget="mail_thread"/>
919 <record model="ir.ui.view" id="product_template_kanban_view">
920 <field name="name">Product Template Kanban</field>
921 <field name="model">product.template</field>
922 <field name="arch" type="xml">
924 <field name="image_small"/>
925 <field name="list_price"/>
927 <t t-name="kanban-box">
928 <div class="oe_kanban_vignette oe_semantic_html_override">
929 <a type="open"><img t-att-src="kanban_image('product.template', 'image_small', record.id.value)" class="oe_kanban_image"/></a>
930 <div class="oe_kanban_details">
938 <li>Price: <field name="list_price"></field></li>
948 <record id="product_template_action" model="ir.actions.act_window">
949 <field name="name">Templates</field>
950 <field name="type">ir.actions.act_window</field>
951 <field name="res_model">product.template</field>
952 <field name="view_mode">kanban,tree,form</field>
953 <field name="view_type">form</field>
954 <field name="view_id" ref="product_template_kanban_view"/>
957 <menuitem action="product_template_action"
958 id="menu_product_template_action"
959 parent="base.menu_product" sequence="20"
960 groups="product.group_product_variant"/>