[FIX] product: force empty view_id for action `product_variant_action`
[odoo/odoo.git] / addons / product / product_view.xml
index 2c729f4..c764ab0 100644 (file)
@@ -50,6 +50,7 @@
             <field name="arch" type="xml">
                 <form string="Product">
                     <field name="is_product_variant" invisible="1"/>
+                    <field name='product_variant_count' invisible='1'/>
                     <sheet>
                         <field name="id" invisible="True"/>
                         <div class="oe_right oe_button_box" style="width: 300px;" name="buttons">
@@ -77,8 +78,6 @@
                                     </group>
                                     <group>
                                         <field name="active"/>
-                                        <field name="ean13"/>
-                                        <field name="default_code"/>
                                     </group>
                                 </group>
                                 <group colspan="4">
                                         <field digits="(14, 3)" name="weight_net"/>
                                     </group>
                                 </group>
+                                <group name="packaging" string="Packaging" attrs="{'invisible':[('type','=','service')]}" groups="product.group_stock_packaging" colspan="4">
+                                    <field name="packaging_ids" string="Configurations" context="{'tree_view_ref':'product.product_packaging_tree_view_product', 'form_view_ref': 'product.product_packaging_form_view_without_product'}"/>
+                                </group>
                             </page>
                             <page string="Sales" attrs="{'invisible':[('sale_ok','=',False)]}" name="sales">
                                 <group name="sale">
             <field name="view_type">form</field>
             <field name="context">{'search_default_product_tmpl_id': [active_id], 'default_product_tmpl_id': active_id}</field>
             <field name="search_view_id" ref="product_search_form_view"/>
+            <field name="view_id" eval="False"/> <!-- Force empty -->
             <field name="help" type="html">
               <p class="oe_view_nocontent_create">
                 Click to define a new product.
                 <xpath expr="//form" position="attributes">
                     <attribute name="name">Product Template</attribute>
                 </xpath>
+                <field name="active" position="after">
+                    <field name="ean13" attrs="{'invisible': [('product_variant_count', '>', 1)]}"/>
+                    <field name="default_code" attrs="{'invisible': [('product_variant_count', '>', 1)]}"/>
+                </field>
                 <xpath expr="//page[@string='Sales']" position="after">
                     <page name="variants" string="Variants">
                         <div class="oe_right">
                                 <field string="List of Variants" name="product_variant_count" widget="statinfo" />
                             </button>
                         </div>
-                        <field name="attribute_line_ids" widget="one2many_list">
+                        <field name="attribute_line_ids" widget="one2many_list" context="{'show_attribute': False}">
                             <tree string="Variants" editable="bottom">
                                 <field name="attribute_id"/>
                                 <field name="value_ids" widget="many2many_tags" options="{'no_create_edit': True}" domain="[('attribute_id', '=', attribute_id)]" context="{'default_attribute_id': attribute_id}"/>
                 <form position="attributes">
                     <attribute name="string">Product Variant</attribute>
                 </form>
+                <field name="active" position="after">
+                    <field name="ean13"/>
+                    <field name="default_code"/>
+                </field>
                 <field name="list_price" position="attributes">
                    <attribute name="name">lst_price</attribute>
                 </field>
                             <field name="uom_type" on_change="onchange_type(uom_type)"/>
                             <label for="factor"/>
                             <div>
-                                <field name="factor" attrs="{'invisible':[('uom_type','!=','smaller')]}"/>
-                                <field name="factor_inv" attrs="{'invisible':[('uom_type','!=','bigger')]}"/>
+                                <field name="factor"
+                                    digits="[42,5]"
+                                    attrs="{'invisible':[('uom_type','!=','smaller')],
+                                            'readonly':[('uom_type','=','bigger')]}"/>
+                                <field name="factor_inv"
+                                    digits="[42,5]"
+                                    attrs="{'invisible':[('uom_type','!=','bigger')],
+                                            'readonly':[('uom_type','!=','bigger')]}"/>
                                 <p attrs="{'invisible':[('uom_type','!=','smaller')]}" class="oe_grey">
                                     e.g: 1 * (reference unit) = ratio * (this unit)
                                 </p>
                         </group>
                         <group>
                             <field name="active"/>
-                            <field name="rounding"/>
+                            <field name="rounding" digits="[42, 5]"/>
                         </group>
                     </group>
                 </form>
             <field name="arch" type="xml">
                 <tree string="Packaging">
                     <field name="sequence" widget="handle"/>
+                    <field name="product_tmpl_id"/>
                     <field name="ean"/>
                     <field name="qty"/>
                     <field name="ul"/>
             </field>
         </record>
 
+        <record id="product_packaging_tree_view_product" model="ir.ui.view">
+            <field name="name">product.packaging.tree.view.product</field>
+            <field name="model">product.packaging</field>
+            <field name="arch" type="xml">
+                <tree string="Packaging">
+                    <field name="qty"/>
+                    <field name="ul"/>
+                    <field name="ul_qty"/>
+                    <field name="rows"/>
+                    <field name="ul_container"/>
+                </tree>
+            </field>
+        </record>
+
         <record id="product_packaging_form_view" model="ir.ui.view">
             <field name="name">product.packaging.form.view</field>
             <field name="model">product.packaging</field>
             </field>
         </record>
 
+        <record id="product_packaging_form_view_without_product" model="ir.ui.view">
+            <field name="name">product.packaging.form.view.without.product</field>
+            <field name="model">product.packaging</field>
+            <field name="arch" type="xml">
+                <form string="Packaging">
+                    <group col="4">
+                        <field name="ean"/>
+                        <field name="sequence" invisible="1"/>
+                        <newline/>
+                        <field name="qty"/>
+                        <field name="ul"/>
+                        <separator colspan="4" string="Palletization"/>
+                        <field name="ul_qty"/>
+                        <field name="rows"/>
+                        <field name="ul_container"/>
+                        <field name="weight"/>
+                        <separator colspan="4" string="Other Info"/>
+                        <field colspan="4" name="name"/>
+                    </group>
+                </form>
+            </field>
+        </record>
+
         <record id="product_supplierinfo_form_view" model="ir.ui.view">
             <field name="name">product.supplierinfo.form.view</field>
             <field name="model">product.supplierinfo</field>