[IMP] Adapt nomenclature
[odoo/odoo.git] / addons / product / product_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4         <menuitem id="prod_config_main" name="Products" parent="base.menu_base_config" sequence="70"/>
5
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"/>
14                    <separator/>
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"/>
20                    </group>
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"/>
27                    </group>
28                 </search>
29             </field>
30         </record>
31
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"/>
39                     <field name="name"/>
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"/>
47                     <field name="state"/>
48                     <field name="company_id" groups="base.group_multi_company" invisible="1"/>
49                     <field name="product_tmpl_id" invisible="1"/>
50                 </tree>
51             </field>
52         </record>
53
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">
60                     <sheet>
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)]}"/>
70                             </div>
71                             <h1>
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"/>
80                                 </span>
81                             </h1>
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"/>
85                                 </p>
86                             </span>
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"/>
94                             </div>
95                         </div>
96                         <div class="oe_right oe_button_box" name="buttons">
97                         </div>
98                         <notebook>
99                             <page string="Information">
100                                 <group>
101                                     <group>
102                                         <field name="type"
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)]}"/>
110                                     </group>
111                                     <group>
112                                         <field name="default_code"/>
113                                         <label for="ean13"/>
114                                         <div name="ean">
115                                             <field name="ean13" placeholder="e.g. 5901234123457"/>
116                                         </div>
117                                         <field name="company_id" groups="base.group_multi_company" widget="selection"
118                                             attrs="{'invisible': [('is_only_child', '=', False)]}"/>
119                                     </group>
120                                 </group>
121                                 <field name="description" placeholder="describe the product characteristics..."
122                                     attrs="{'readonly': [('is_only_child', '=', False)]}"/>
123                             </page>
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)]}"/>
129                                     </group>
130                                     <group name="procurement_uom" groups="product.group_uom" string="Purchase">
131                                         <field name="uom_po_id"
132                                             attrs="{'readonly': [('is_only_child', '=', False)]}"/>
133                                     </group>
134                                 </group>
135                                 <separator string="Description for Suppliers"/>
136                                 <field name="description_purchase" placeholder="This note will be displayed on requests for quotation..."/>
137                             </page>
138                             <page string="Inventory" groups="base.group_user">
139                                 <group name="inventory">
140                                     <group name="status" string="Status">
141                                         <field name="state"
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']}"/>
146                                     </group>
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)]}"/>
150                                         <field name="weight"
151                                             attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
152                                         <field name="weight_net" 
153                                             attrs="{'readonly': ['|', ('type','=','service'), ('is_only_child', '=', False)]}"/>
154                                     </group>
155                                 </group>
156                             </page>
157                             <page string="Sales" attrs="{'invisible':[('sale_ok','=',False)]}">
158                                 <group name="sale">
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
163                                         </div>
164                                     </group>
165                                     <group groups="product.group_uos" string="Unit of Measure">
166                                         <field name="uos_id"
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)]}"/>
172                                     </group>
173                                 </group>
174                                 <field name="packaging" groups="product.group_stock_packaging"
175                                         attrs="{'readonly': [('is_only_child', '=', False)]}">
176                                     <form string="Packaging" version="7.0">
177                                         <group col="4">
178                                             <field name="ean"/>
179                                             <field name="sequence" invisible="1"/>
180                                             <newline/>
181                                             <field name="qty"/>
182                                             <field name="ul"/>
183                                             <separator colspan="4" string="Palletization"/>
184                                             <field name="ul_qty"/>
185                                             <field name="ul_container"/>
186                                             <field name="rows"/>
187                                             <field name="weight"/>
188                                         </group>
189                                         <separator colspan="4" string="Description"/>
190                                         <field name="name"/>
191                                     </form>
192                                 </field>
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)]}"/>
196                             </page>
197                         </notebook>
198                     </sheet>
199                     <div class="oe_chatter">
200                         <field name="message_follower_ids" widget="mail_followers"/>
201                         <field name="message_ids" widget="mail_thread"/>
202                     </div>
203                 </form>
204             </field>
205         </record>
206
207         <!-- Product Kanban View  -->
208
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">
213                 <kanban>
214                     <field name="color"/>
215                     <field name="type"/>
216                     <field name="image_small"/>
217                     <field name="list_price"/>
218                     <templates>
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">
223                                     <h4>
224                                         <a type="open">
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>
226                                         </a>
227                                     </h4>
228                                     <div name="tags"/>
229                                     <ul>
230                                         <li>Price: <field name="lst_price"></field></li>
231                                     </ul>
232                                 </div>
233                             </div>
234                         </t>
235                     </templates>
236                 </kanban>
237             </field>
238         </record>
239
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.
251               </p><p>
252                 You must define a product for everything you buy or sell,
253                 whether it's a physical product, a consumable or service.
254               </p>
255             </field>
256         </record>
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.
269               </p><p>
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
272                 customers.
273               </p><p>
274                 The product form contains information to simplify the sale
275                 process: price, notes in the quotation, accounting data,
276                 procurement methods, etc.
277               </p>
278             </field>
279         </record>
280
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"/>
286         </record>
287
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"/>
293         </record>
294
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"/>
300         </record>
301
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"/>
304
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.
317               </p><p>
318                 You must define a product for everything you purchase, whether
319                 it's a physical product, a consumable or services you buy to
320                 subcontractants.
321               </p><p>
322                 The product form contains detailed information to improve the
323                 purchase process: prices, procurement logistics, accounting data,
324                 available suppliers, etc.
325               </p>
326             </field>
327         </record>
328
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"/>
336                 </search>
337             </field>
338         </record>
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">
344                     <sheet>
345                         <div class="oe_title">
346                             <label for="name" class="oe_edit_only"/>
347                             <h1>
348                                 <field name="name"/>
349                             </h1>
350                         </div>
351                         <group>
352                             <group name="parent" col="4">
353                                 <field name="parent_id"/>
354                                 <field name="type"/>
355                             </group>
356                         </group>
357                     </sheet>
358                 </form>
359             </field>
360         </record>
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"/>
368                 </tree>
369             </field>
370         </record>
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">
377                     <field name="name"/>
378                 </tree>
379             </field>
380         </record>
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">
389               <p>
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.
393               </p>
394             </field>
395         </record>
396         <menuitem
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"/>
408         </record>
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"/>
413
414
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>
422         </record>
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"/>
428         </record>
429
430
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">
437                     <sheet>
438                         <field name="image_medium" widget='image' class="oe_avatar oe_right"/>
439                         <div class="oe_left">
440                             <group>
441                                 <field name="name"/>
442                                 <field name="parent_id"/>
443                                 <field name="sequence"/>
444                             </group>
445                         </div>
446                     </sheet>
447                 </form>
448             </field>
449         </record>
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"/>
458                 </tree>
459             </field>
460         </record>
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.
471               </p><p>
472                 Categories are used to browse your products through the
473                 touchscreen interface.
474               </p><p>
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.
478               </p>
479             </field>
480         </record>
481         <menuitem action="product_public_category_action" id="menu_product_public_category" parent="prod_config_main" sequence="10" />
482         <!-- END -->
483
484         <!-- Unit of Measure -->
485
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">
491                     <field name="name"/>
492                     <field name="category_id"/>
493                 </tree>
494             </field>
495         </record>
496
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">
502                     <group>
503                         <group>
504                             <field name="name"/>
505                             <field name="category_id"/>
506                             <field name="uom_type" on_change="onchange_type(uom_type)"/>
507                             <label for="factor"/>
508                             <div>
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)
513                                 </p>
514                                 <p attrs="{'invisible':[('uom_type','!=','bigger')]}" class="oe_grey">
515                                     e.g: 1 * (this unit) = ratio * (reference unit)
516                                 </p>
517                             </div>
518                         </group>
519                         <group>
520                             <field name="active"/>
521                             <field name="rounding"/>
522                         </group>
523                     </group>
524                 </form>
525             </field>
526         </record>
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.
536               </p><p>
537                 You must define a conversion rate between several Units of
538                 Measure within the same category.
539               </p>
540             </field>
541         </record>
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"/>
544
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">
550                     <group>
551                         <field name="name"/>
552                     </group>
553                 </form>
554             </field>
555         </record>
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.
565               </p><p>
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:
569                 Hours, Days.
570               </p>
571             </field>
572         </record>
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"/>
574
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">
580                     <group>
581                         <field name="name"/>
582                         <field name="type"/>
583                     </group>
584                     <group>
585                         <field name="height"/>
586                         <field name="width"/>
587                         <field name="length"/>
588                         <field name="weight"/>
589                     </group>
590                 </form>
591             </field>
592         </record>
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">
598                     <field name="name"/>
599                     <field name="type"/>
600                 </tree>
601             </field>
602         </record>
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
612               </p><p>
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 
615                 size. 
616               </p>
617             </field>
618         </record>
619         <menuitem
620             action="product_ul_form_action" groups="product.group_stock_packaging" id="menu_product_ul_form_action" parent="prod_config_main" sequence="5"/>
621
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"/>
628                     <field name="ean"/>
629                     <field name="qty"/>
630                     <field name="ul"/>
631                     <field name="ul_container"/>
632                 </tree>
633             </field>
634         </record>
635
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">
641                     <group col="4">
642                         <field name="product_id"/>
643                         <newline/>
644                         <field name="ean"/>
645                         <field name="sequence" invisible="1"/>
646                         <newline/>
647                         <field name="qty"/>
648                         <field name="ul"/>
649                         <separator colspan="4" string="Palletization"/>
650                         <field name="ul_qty"/>
651                         <field name="rows"/>
652                         <field name="ul_container"/>
653                         <field name="weight"/>
654                         <separator colspan="4" string="Other Info"/>
655                         <field colspan="4" name="name"/>
656                     </group>
657                 </form>
658             </field>
659         </record>
660
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">
666                     <group col="4">
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"/>
675                     </group>
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"/>
681                         </tree>
682                         <form version="7.0">
683                             <group>
684                                 <field name="min_quantity"/>
685                                 <field name="price"/>
686                             </group>
687                         </form>
688                     </field>
689                 </form>
690             </field>
691         </record>
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"/>
698                     <field name="name"/>
699                     <field name="delay"/>
700                     <field name="min_qty"/>
701                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
702                 </tree>
703             </field>
704         </record>
705
706         <!-- Variants -->
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'}"/>
716                    </group>
717                 </search>
718             </field>
719         </record>
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">
725                     <group col="4">
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"/>
732                     </group>
733                 </form>
734             </field>
735         </record>
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"/>
750                 </tree>
751             </field>
752         </record>
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.
765               </p>
766             </field>
767         </record>
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"/>
773         </record>
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"/>
779         </record>
780         <menuitem action="product.product_variant_action" id="product.menu_variant_product" parent="prod_config_main" sequence="4" groups="product.group_product_variant"/>
781
782         <!-- templates -->
783
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"/>
792                     <separator/>
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'}"/>
799                     </group>
800                 </search>
801             </field>
802         </record>
803
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">
809                     <field name="name"/>
810                     <field name="categ_id"/>
811                     <field name="type"/>
812                     <field name="state"/>
813                     <field name="uom_id" invisible="1"/>
814                 </tree>
815             </field>
816         </record>
817
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">
823                     <sheet>
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"/>
828                             </div>
829                             <h1>
830                                 <field name="name"/>
831                             </h1>
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"/>
839                             </div>
840                         </div>
841                         <notebook>
842                             <page string="Information">
843                                 <group  colspan="4">
844                                     <group>
845                                         <field name="type"/>
846                                         <field name="uom_id" on_change="onchange_uom(uom_id,uom_po_id)" groups="product.group_uom"/>
847                                         <field name="list_price"/>
848                                     </group>
849                                     <group>
850                                         <field name="company_id" groups="base.group_multi_company" widget="selection"/>
851                                     </group>
852                                 </group>
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"/>
860                                         </tree>
861                                     </field>
862                                 </group>
863                                 <field name="description" placeholder="describe the product characteristics..."/>
864                             </page>
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)]}"/>
869                                     </group>
870                                     <group name="procurement_uom" groups="product.group_uom" string="Purchase">
871                                         <field name="uom_po_id"/>
872                                     </group>
873                                 </group>
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..."/>
878                             </page>
879                             <page string="Inventory">
880                                 <group name="inventory">
881                                      <group name="status" string="Status">
882                                         <field name="state"/>
883                                         <field name="product_manager"/>
884                                     </group>
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')]}"/>
889                                     </group>
890                                 </group>
891                             </page>
892                             <page string="Sales" attrs="{'invisible':[('sale_ok','=',False)]}">   
893                                 <group name="sale">
894                                     <group name="sale_condition" string="Sale Conditions">
895                                         <label for="warranty"/>
896                                         <div>
897                                             <field name="warranty" class="oe_inline" style="vertical-align:baseline"/> months
898                                         </div>
899                                     </group>
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"/>
904                                     </group>
905                                 </group>
906                                 <separator string="Description for Quotations"/>
907                                 <field name="description_sale" placeholder="note to be displayed on quotations..."/>
908                             </page>
909                         </notebook>
910                     </sheet>
911                     <div class="oe_chatter">
912                         <field name="message_follower_ids" widget="mail_followers"/>
913                         <field name="message_ids" widget="mail_thread"/>
914                     </div>
915                 </form>
916             </field>
917         </record>
918
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">
923                 <kanban>
924                     <field name="image_small"/>
925                     <field name="list_price"/>
926                     <templates>
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">
931                                     <h4>
932                                         <a type="open">
933                                              <field name="name"/> 
934                                         </a>
935                                     </h4>
936                                     <div name="tags"/>
937                                     <ul>
938                                         <li>Price: <field name="list_price"></field></li>
939                                     </ul>
940                                 </div>
941                             </div>
942                         </t>
943                     </templates>
944                 </kanban>
945             </field>
946         </record>
947
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"/>
955         </record>
956
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"/>
961
962     </data>
963 </openerp>