小数位数标识定义:

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'
                   
], #模块安装、更新的时候会读入的文件

openerp学习笔记 自定义小数精度(小数位数)的更多相关文章

  1. iOS学习笔记-自定义过渡动画

    代码地址如下:http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swif ...

  2. openerp学习笔记 按客户电话、名称模糊查找选择客户(name_search)及客户名称自定义显示(name_get)

    #同时按手机.电话.名称模糊查找选择客户    def name_search(self, cr, user, name, args=None, operator='ilike', context=N ...

  3. Angular JS 学习笔记(自定义服务:factory,Promise 模式异步请求查询:$http,过滤器用法filter,指令:directive)

    刚学没多久,作了一个小项目APP,微信企业号开发与微信服务号的开发,使用的是AngularJS开发,目前项目1.0版本已经完结,但是项目纯粹为了赶工,并没有发挥AngularJS的最大作用,这几天项目 ...

  4. #Linux学习笔记# 自定义shell终端提示符

    我使用的Linux发行版是LinuxMint 17.2 Rafaela,默认情况下Terminal中的shell提示包括了用户名.主机名.当前目录(绝对路径)和提示符.这样会导致当进入一个比较深的目录 ...

  5. openerp学习笔记 domain 的应用

    1.在Action中定义,domain用于对象默认的搜索条件: 示例: <record id="action_orders" model="ir.actions.a ...

  6. openerp学习笔记 单据自动编号(编码规则)

    说明: 单据自动编码允许定义 单据前缀+按当前年.月.日.时.分.秒+流水号+单据后缀 单据自动编号允许按所有公司统一编号或按分公司单独编号 单据自动编号中的流水号部分未按月重新编号,不断累计,当超出 ...

  7. JavaScript学习笔记-自定义集合类

    //集合类Set( ES6标准才有的类,目前兼容性较差)//自定义集合类:extend = function (o,p){ //定义一个复制对象属性的类函数 for(var x in p){ o[x] ...

  8. JavaScript学习笔记- 自定义滚动条插件

    此滚动条仅支持竖向(Y轴) 一.Css /*这里是让用户鼠标在里面不能选中文字,避免拖动的时候出错*/ body { -moz-user-select: none; /*火狐*/ -webkit-us ...

  9. JavaScript学习笔记-自定义滚动条

    这是一个基本实现思路,如果有新手和我一样没什么事,喜欢瞎研究话,可以参考下. 一.Html <div class="scroll_con"> <div class ...

随机推荐

  1. Android(java)学习笔记67:多线程程序练习

    需求: 某电影院目前正在上映贺岁大片,共有100张票,而它有3个售票窗口售票,请设计一个程序模拟该电影院售票. 两种方式实现 A:继承Thread类 B:实现Runnable接 1. 首先我们利用方式 ...

  2. Java操作文件夹的工具类

    Java操作文件夹的工具类 import java.io.File; public class DeleteDirectory { /** * 删除单个文件 * @param fileName 要删除 ...

  3. hdu 4711 动态规划

    思路:其实这题是个挺水的动态规划,一开始就能AC,可是不知道错哪了,瞎改瞎交,WA了数十次.AC之后怎么改都是AC,也不知道改了什么地方,郁闷死了~~~难道开始时的测试数据有问题??? dp[i][j ...

  4. 转:YUV RGB 常见视频格式解析

    转: http://www.cnblogs.com/qinjunni/archive/2012/02/23/2364446.html YUV RGB 常见视频格式解析 I420是YUV格式的一种,而Y ...

  5. 使用开源库MagicalRecord操作CoreData

      1. 将 MagicalRecord 文件夹拖入到工程文件中,引入 CoreData.frame 框架 2. 在 .pch 文件中引入头文件 CoreData+MagicalRecord.h 注: ...

  6. 提高HTML5 Canvas性能的技巧

    详细内容请点击 一:使用缓存技术实现预绘制,减少重复绘制Canvs内容 很多时候我们在Canvas上绘制与更新,总是会保留一些不变的内容,对于这些内容 应该预先绘制缓存,而不是每次刷新. 直接绘制代码 ...

  7. ruby学习--varaible

    #全局变量 $global_variable=10 class Class1 def print_global() puts "Global variable in Class1 is #{ ...

  8. Socket 两平台互相 通信 .NET

    两个平台互相通信,对方发送数据过来,我方接收数据,对数据进行处理后发送结果给对方,对方进行相应的操作. 首页,我方开启服务监听: Socket socket = new Socket(AddressF ...

  9. php读取mysql中文数据出现乱码

    1.PHP页面语言本身的编码类型不合适,这时候,你直接在脚本中写的中文肯定是乱码,不用说数据库了:    解决方法:选择'UTF8'或者'gb2312',这样客户浏览器会自动选择并出现正确的中文显示. ...

  10. Java之ConnectionPool连接池

    1.初始化(根据配置信息进行初始化)2.产生一个新的数据库连接3.有存储已经使用的连接集合,空闲连接集合4.提供给外部调用获取连接的方法5.提供给外部释放连接(不是关闭连接,而是将连接闲置)6.销毁连 ...