• openerp学习笔记 自定义小数精度(小数位数)



    小数位数标识定义:

    lx_purchase/data/lx_purchase_data.xml

    <?xml version="1.0" encoding="utf-8"?>
    <openerp>
        <data noupdate="1">

            <record forcecreate="True" id="decimal_payment" model="decimal.precision">
                <field name="name">lx_purchase_price</field>
                <field name="digits">2</field>
            </record>

        </data>
    </openerp>

    小数位数标识引用:

    lx_purchase/lx_purchase.py

    class lx_purchase_order_line(osv.osv):

        def _amount_line(self, cr, uid, ids, prop, arg, context=None):
            res={}
            for line in self.browse(cr,uid,ids,context=context):
                a=self.read(cr,uid,line.id,["price","product_qty"])
                res[line.id]=a["price"]*a["product_qty"]
            return res

        _name='lx.purchase.order.line'
        _description=u"lx采购单明细"
        _columns={
            'order_id':fields.many2one('lx.purchase.order',u'采购单ID',select=True, ondelete='cascade'),
            'product':fields.char(u'产品',size=128,required=True),
            'price':fields.float(u'价格', digits_compute = dp.get_precision('lx_purchase_price'), required=True),
            'product_qty':fields.integer(u'数量',required=True),
            'unit': fields.char(u'计量单位',size=6),
            'subtotal':fields.function(_amount_line, string=u'小计', digits=(18, 2)),
        }
        _defaults={
            'product_qty': lambda *a: 1.0,
        }

    lx_purchase_order_line()

    自定义小数位数需引用的模块:

    lx_purchase/__openerp__.py

        'depends' : ['base', 'hr', 'process', 'decimal_precision'], #依赖的模块
        'data' : [
            'security/purchase_security.xml',
            'security/ir.model.access.csv',
            'data/lx_purchase_data.xml',
            'lx_purchase_view.xml',
            'lx_purchase_sequence.xml',
            'lx_purchase_workflow.xml',
            'lx_purchase_report.xml'
                        ], #模块安装、更新的时候会读入的文件

  • 相关阅读:
    MySQL索引背后的数据结构及算法原理 [转]
    5.5下对DDL操作提速的测试
    由浅入深理解索引的实现(2) [转]
    由浅入深理解索引的实现(1) [转]
    两个比较有用的字符串函数
    在慢查询里保留注释部分
    想在Innodb表上做OPTIMIZE操作?先等等看再说!
    Win CE和smartphone和pocket pc和windows mobile比较(zt)
    学习笔记(配置SQL Server 2005允许远程连接)
    配置程序集的版本策略(zt)
  • 原文地址:https://www.cnblogs.com/cnshen/p/3164765.html
Copyright © 2020-2023  润新知