楼上说的方法,我试过了,不行。
price的默认值是0,当用户选定产品后,根据产品中的价格设置而获得产品单价值。
因此在views上设置field为readonly后,price_unit字段就一直会是0,不能获得新值。

Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn
由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解
本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!
开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号
如果您登录系统碰到问题,请在微信公众号留言:
liu198619 发布的最新帖子
-
RE: 【求助】如何实现添加采购明细时,采购员不能修改采购单价?
-
【求助】如何实现添加采购明细时,采购员不能修改采购单价?
采购员添加采购明细时,一旦选择了产品,相应的价格、计量单位等都由系统自动完成,采购员可以改变数量、单价、单位等。
但现在要求采购人员不能改变单价。我把 price_unit这个field设置成readonly,但price_unit的值是在用户选择产品后,触发product_id_change这个方法才获得的,如果一开始在view里设置成readonly,那price_unit就永远是0,无法获得新值。
在purchase.py源文件里,把price_unit改为'price_unit': fields.float('Unit Price', required=True, digits=(16, int(config['price_accuracy'])),read=['group_purchase_user']) 重启ERP系统后,不论是系统管理员还是采购员,如果打开包括采购明细内容的采购订单就报错,如果采购订单里没有采购订单明细可以正常打开订单。错误信息如下所示:
Traceback (most recent call last):
File "netsvc.pyo", line 245, in dispatch
File "netsvc.pyo", line 74, in call
File "service\web_services.pyo", line 576, in execute
File "osv\osv.pyo", line 58, in wrapper
File "osv\osv.pyo", line 119, in execute
File "osv\osv.pyo", line 111, in execute_cr
File "osv\orm.pyo", line 2225, in read
File "osv\orm.pyo", line 2355, in _read_flat
File "osv\fields.pyo", line 650, in get
File "d:\OpenERP\Server\addons\purchase\purchase.py", line 446, in _amount_line
File "osv\orm.pyo", line 240, in getattr
File "osv\orm.pyo", line 189, in getitem
File "osv\orm.pyo", line 2225, in read
File "osv\orm.pyo", line 2379, in _read_flat
IndexError: list index out of range
如果想实现类似price_unit这样实时计算字段值的只读,换句话说,就是禁止用户自己编辑值。在系统里如何实现? -
RE: 【求助】如何实现不同组对某一字段有不同权限?
谢谢回复。
现在我使用的方法是根据不同组用户,使用不同的view。如,“新的采购我订单”菜单使用purchase.order.form,对应采购经理组;“新的采购订单1”菜单使用purchase.order1.form,对应采购员组。这样就造成了许多菜单,使用超级管理员登陆后,界面惨不忍睹啊! -
【求助】如何实现不同组对某一字段有不同权限?
对于一个字段,不同用户组拥有不同的编辑权限。如,单价对于采购员来说是只读的,采购经理可以修改单价字段。
在英文官方论坛也遇到有人提这个问题,但没有人回复。不知道现在OE在权限控制上,能不能实现基于组不同,字段有不同权限。 -
RE: 需求文档
现在都在讲市场细分,要选定一类客户做。现在选择使用OpenERP的,大部分是中小企业。而中小企业,虽然想上ERP,可实际上他们的需求就是中国企业特色的进销存。ERP的严谨在中小企业中很不合适。
建议有在中小企业中实施过ERP或OpenERP的网友们,写写自己遇到的一些问题。
我先简单说一下我遇到比较多的两类问题。
一、销售、采购时的寄售、寄存问题。
二、细粒度权限控制。如:同一个字段内容,不同组用户有不同的权限。 -
【求助】切换视图后,在Web客户端,groups限制竟然无效了!
刚发现一个权限问题,对于普通采购员,在采购订单中不需要看到"History"、"Invoicing"页。系统中purchase.order.line.form表单已经增加了定义了"History"、"Invoicing"页的groups="base.group_extended,stock.group_stock_user"。
以采购员的身份新建采购单,点击“采购订单明细”行右边的“新建记录”按钮,出现的“采购订单明细”窗口中没有"History"、"Invoicing"页。如下图所示。
[img [检测到链接无效,已移除] /img]
但如果在“采购订单”主窗口中,点“采购订单明细”行右边的“切换视图”按钮,"History"、"Invoicing"页就会显示。如下图所示。
[img [检测到链接无效,已移除] /img]
在purchase.order.line.tree中,没有关于"History"、"Invoicing"的内容。
不知道是系统的BUG还是什么问题。我用的是5.0.12版本。
今天在OpenERP GTK Client中测试,按“切换视图”后,没有出现"History"、"Invoicing"页。如下图所示。
[attach=3]
点“新建”按钮,也没有出现"History"、"Invoicing"页。如下图所示。
[attach=4]
难道真的是Web端的BUG?