zoukankan      html  css  js  c++  java
  • odoo多公司开发建议

    开发需求

    建立多公司多语言的一个进销存系统
    

    关于界面

    由于各个分公司对界面的需求不同,多数是不希望界面出现别的国家或者是用不上的字段
    

    odoo界面主要核心要素

    tree form等视图
    各种语言翻译
    
    tree form等视图
    1.设置权限组
    <record id="group_mx_base_user" model="res.groups">
        <field name="name">XXX分公司</field>
        <field name="category_id" ref="peru_base.module_peru_base_category"/>
    </record>
                
    2.将界面关联到权限组
    <record id="view_order_form_mx" model="ir.ui.view">
        <field name="name">sale.order.form.mx</field>
        <field name="model">sale.order</field>
        <field name="inherit_id" ref="sale.view_order_form"/>
        <field name="groups_id" eval="[(4, ref('group_mx_base_user'))]"/>
        <field name="arch" type="xml">
            <xpath expr="//label[@for='discount']" position="before">
                <field name="price_zx" string="Precio unitario sin impuestos"
                <field name="price_unit"/>
            </xpath>
         </field>
         
    3.后期再有新的分公司类似开发,最后只需要调整权限就能通用
    
    各种语言翻译
    关于语言翻译等问题
    强烈建议给各个国家设置独立的语言,即使母语是同一种语言
    特别是在产品数据,即使语言一样,各个地区同一个产品的叫法也会出现各种各样的不同
    

    关于数据

    1.各种数据一样要加上,company_id字段,防止数据乱掉,同时要设置字段不可编辑
    company_id = fields.Many2one('res.company', 'Company', required=True,
                                     default=lambda self: self.env.user.company_id)
    2.配置权限,可以在用户界面勾选更改,也可以进入技术进行增加权限,但是涉及减少权限用户等操作要注意,会出现清空其他分公司所有用户的状况
    3.如需定制某个用户权限,最好新增一个专门的权限组,减少冲突和增加后续拓展性
    
  • 相关阅读:
    IE浏览器中js使用中文标识符的bug
    Javascript变量作用域
    利用JS的动态语言特性对数组排序
    Javascript动态方法调用与参数修改的问题
    数组的平衡点
    Javascript中各种trim的实现
    js對象的比較
    返回两个数组中非相同的元素
    Javascript中匿名函数的多种调用方式
    SQL Server PreLogin Handshake Acknowledgement Error [duplicate]
  • 原文地址:https://www.cnblogs.com/zx125/p/15796419.html
Copyright © 2011-2022 走看看