[IMP] Added multi company rules
authorfabian <fabian@fabian-openerp>
Wed, 25 Nov 2009 16:39:58 +0000 (17:39 +0100)
committerfabian <fabian@fabian-openerp>
Wed, 25 Nov 2009 16:39:58 +0000 (17:39 +0100)
bzr revid: fabian@fabian-openerp-20091125163958-m6bokw0m6wbvp3s4

addons/product/security/product_security.xml
addons/project/security/project_security.xml
addons/sale/sale_view.xml
addons/sale/security/sale_security.xml

index 7347c61..1d255af 100644 (file)
@@ -7,6 +7,19 @@
     </record>
     <record id="group_product_manager" model="res.groups">
         <field name="name">Product / Manager</field>
+
+    </record>
+</data>
+<data noupdate="0">
+
+     <record model="ir.rule.group" id="product_comp_rule_group">
+        <field name="name" >Product multi-company</field>
+        <field name="model_id" search="[('model','=','product.product')]" model="ir.model"/>
+        <field name="global" eval="True"/>
+    </record>
+    <record id="product_comp_rule" model="ir.rule">
+        <field name="rule_group" ref="product_comp_rule_group"/>
+        <field name="domain_force">['|',('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id])]</field>
     </record>
 
     <record id="group_product_variant" model="res.groups">
index f9b8af2..cb5bad3 100644 (file)
                <field name="global" eval="True"/>
        </record>
        <record model="ir.rule" id="project_comp_rule">
-               <field name="field_id" search="[('model','=','project.project'),('name','=','company_id')]" model="ir.model.fields"/>
-               <field name="operator">child_of</field>
-               <field name="operand">user.company_id.id</field>
                <field name="rule_group" ref="project_comp_rule_group"/>
+               <field name="domain_force">['|',('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id])]</field>
        </record>
 
        <record model="ir.rule.group" id="task_comp_rule_group">
@@ -37,9 +35,7 @@
                <field name="global" eval="True"/>
        </record>
        <record model="ir.rule" id="task_comp_rule">
-               <field name="field_id" search="[('model','=','project.task'),('name','=','company_id')]" model="ir.model.fields"/>
-               <field name="operator">child_of</field>
-               <field name="operand">user.company_id.id</field>
+               <field name="domain_force">['|',('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id])]</field>
                <field name="rule_group" ref="task_comp_rule_group"/>
        </record>
 
index 7be6350..c8af35d 100644 (file)
                             <field groups="base.group_extended" name="invoice_quantity" attrs="{'readonly':[('order_policy','=','prepaid'),('order_policy','=','picking')]}"/>
                             <field name="payment_term" widget="selection"/>
                             <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
+                            <field name="company_id" groups="base.group_extended" widget="selection"/>
                             <separator colspan="4" string="Notes"/>
                             <field colspan="4" name="note" nolabel="1"/>
                         </page>
index 9778e60..932dd9f 100644 (file)
@@ -2,18 +2,30 @@
 <openerp>
 <data noupdate="0">
 
-    <record id="group_sale_manager" model="res.groups">
-        <field name="name">Sale / Manager</field>
-    </record>
-    <record id="group_sale_user" model="res.groups">
-        <field name="name">Sale / Salesman</field>
-    </record>
+       <record id="group_sale_manager" model="res.groups">
+               <field name="name">Sale / Manager</field>
+       </record>
+       <record id="group_sale_user" model="res.groups">
+               <field name="name">Sale / Salesman</field>
+       </record>
 
 
        <record model='ir.ui.menu' id='menu_shop_configuration'>
                <field name="groups_id" eval="[(6,0,[ref('group_sale_manager')])]"/>
        </record>
 
+       <record model="ir.rule.group" id="sale_order_comp_rule_group">
+               <field name="name">Sale Order multi-company</field>
+               <field name="model_id" search="[('model','=','sale.order')]" model="ir.model"/>
+               <field name="global" eval="True"/>
+       </record>
+       <record model="ir.rule" id="sale_order_comp_rule">
+               <field name="field_id" search="[('model','=','sale.order'),('name','=','company_id')]" model="ir.model.fields"/>
+               <field name="rule_group" ref="sale_order_comp_rule_group"/>
+               <field name="domain_force">['|',('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id])]</field>
+       </record>
+
+       
 
 </data>
 </openerp>