我有這個代碼的問題。我希望可以得到一些幫助。計算字段自己的類和不同的類? - Openerp
class demo(osv.osv):
_inherit = 'compresores.datos'
def _buscar_compresor(self, cr, uid, ids, context=None):
auxpower = self.browse(cr, uid, id).power
obj = self.pool.get('compresores.datos')
ids = obj.search(cr, uid, [])
res = obj.read(cr, uid, ids, ['name', 'id', 'comp_a1','comp_a2'], context)
res = [(r['id'], r['name'], r['comp_a1'],r['comp_a2'])
for r in res
if (r['comp_a1'] >= auxpower)]
return res
_name = "demo_datos"
_description = "Demo"
_columns = {
'power': fields.float('Potencia frigorifica',digits=(3,2)),
'compresor1': fields.selection(_buscar_compresor,method="True", type="char", size=256, string="Compresor"),
}
demo()
這裏是班裏XML
<record model="ir.ui.view" id="demo_form">
<field name="name">demo.form</field>
<field name="model">demo_datos</field>
<field name="arch" type="xml">
<form string="DEMO" version="7.0">
<group col='4' colspan='2'>
<field name="power" class="oe_inline" />
<field name="compresor1" />
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="demo_tree">
<field name="name">demo.tree</field>
<field name="model">demo_datos</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="DEMO general">
<field name="power" />
</tree>
</field>
</record>
我有場power
。我需要一個函數來比較另一個類(comp_a1)中的字段是否更高,並返回該類中的寄存器。
我用self.pool.get
打電話給其他班,它沒問題,可以工作。但是,當我使用self.browse
在同一個函數中讀取字段power
(帶有auxpower)時,我認爲有一些參數問題...我應該怎麼做?
感謝您的回覆。 當我嘗試更新模塊時,現在有一個XML錯誤...但是我的XML沒問題... 我將編輯問題以顯示XML。 Regards – bernybenz
無論如何,我需要幫助與auxpower,每當我改變代碼有一個錯誤的XML或參數...在這種情況下xml 文件「/opt/openerp/server/openerp/osv/orm.py」 ,第1557行,在_validate raise except_orm('ValidateError','\ n'.join(error_msgs)) except_orm:('ValidateError',u'Error al validar el campo(s)dearch:View Architecture for XML無效! ') – bernybenz
可以請你檢查一下,我已經更新了答案 –