這裏是mycode。我想當前記錄的id_employee之前定義的模型類:Odoo:_get_state()在xml視圖中至少需要4個參數(給出4個參數)
def _get_state(self, cr, uid, context=None):
idemployee = ""
for adv in self.browse(cr, uid, ids, context):
id_employee = adv.id_employee
if id_employee is None:
idemployee = _default_employee(self, cr, uid, context=None)
else:
idemployee = id_employee
sql = " SELECT C.id AS id, C.sequence, C.name \
FROM wf_group_member A \
LEFT JOIN wf_group B ON B.id = A.group_id \
LEFT JOIN wf_process BB ON BB.id = B.process_id \
LEFT JOIN wf_state C ON C.group_id = B.id \
LEFT JOIN hr_employee D ON D.id = A.member_id \
WHERE LOWER(code) = 'ca' AND member_id = %s ORDER BY sequence "
res = []
cr.execute(sql, [(idemployee)])
ardata = cr.fetchall()
for data in ardata:
res.append((data[1], data[2]))
return res
,這就是我把它_get_state功能
class cashadvance(osv.osv):
_name = 'ga.cashadvance'
_columns = {
'id_user' : fields.many2one('res.users', string='User', required=True, readonly=True),
'state' : fields.selection(_get_state, 'Status', readonly=True),
'id_employee' : fields.many2one('hr.employee', string='Employee', required=True, readonly=True),
}
當我打電話_get_state功能後,我的模型類,它提出錯誤:
Error details:
global name 'ids' is not defined
None" while parsing /opt/custom-addons/comben/views/cashadvance_view.xml:4, near
<record id="cashadvance_list" model="ir.ui.view">
<field name="name">cashadvance_list</field>
<field name="model">ga.cashadvance</field>
<field name="arch" type="xml">
<tree string="Cashadvance List">
<field name="id_employee"/>
<field name="category_id"/>
<field name="est_date_from" string="Est Date From"/>
<field name="est_date_to" string="Est Date To"/>
<field name="description"/>
<field name="state"/>
</tree>
</field>
</record>
可以somebady請幫助我,謝謝
什麼是t他應該做'idemployee = _default_employee(self,cr,uid,context = None)',具體是什麼'_default_employee'? – danidee
_default_employee是一個函數,通過uid調用hr_employee中的employee_id,它將返回employee_id,並且它沒有問題 – yogakumboro