我想修改一个名为mrp_bom_history的OpenERP插件,以获取现有bom行的默认值作为默认值。OpenERP one2many默认值
我做了一个_read_line方法来返回类似于how to initialize a default one2many fields in OpenERP的bom_line id的列表,但是我得到了'记录未正确加载'异常,并且我无法找出原因。从save_bom_history.py
Python代码:
class save_bom_history(osv.osv_memory):
def _read_line(self,cr,uid,context=None):
bom = self.pool.get('mrp.bom').browse(cr,uid,context['active_id'])
result = []
for lines in bom.bom_lines:
result.append(lines.id)
return result
_name = "save.bom.history"
_columns = {
'name' : fields.char('Name'),
'cut_off_date' : fields.date('Cut-off Date'),
'new_bom_ids' : fields.one2many('save.bom.history.line','\
wizard_id','New Bill of Material'),
}
_defaults = {
'name' : "History",
'cut_off_date' : time.strftime('%Y-%m-%d'),
'new_bom_ids' : _read_line,
}
对象save.bom.history.line工作,它是一个向导? – yannicksoldati
Save_bom_history是一个带有名称字段和截止日期字段的向导,然后它具有一个new_bom_ids行,其中包含产品名称,产品数量,测量单位,有效期限,有效期限。 – MortenS
Save.bom.history.line也是一个用于将产品添加到BoM的向导。当创建新的BoM时,将使用save_bom_history_line向导创建的行中的数据。所以它嵌入到save.bom.history向导中。 – MortenS