1

我有一个与fields.property() 有关的问题。当我为相关分公司更改“库存输入/输出帐户”时,其他分公司数据将丢失在 ir.property 表中。

我为“股票输入/输出帐户”字段创建了带有 on_change 函数的内部模块。当 on_change 函数完成时...如果表中没有相关数据,它将保存在 ir.property 表中。但是...当我单击“保存”按钮时,更新的数据(首先保存数据)和添加的数据将在表中。但他们只会使用更新的数据。不使用新添加的数据。为什么?

on_change 函数:

 def onChangeAcc(self,cr,uid,ids,aid,name,context=None):
            print "on chang acc......................"
            print("IDS",ids,"AID",aid,"name",name)
            if ids and aid:
                val_ref = 'account.account,'+str(aid)
                res_id = 'product.template,'+str(ids[0])
                company_id = self.pool.get('res.users').browse(cr, uid, uid, context).company_id.id
                cr.execute("SELECT id FROM ir_property WHERE name='"+name+"' AND value_reference='"+val_ref+"' AND res_id='"+res_id+"' AND company_id="+str(company_id))        
                result = cr.fetchall()
                if not result: 
                    print "if not result..................."
                    company_id = self.pool.get('res.users').browse(cr, uid, uid, context).company_id.id
                    fields_id = self.pool.get('ir.model.fields').search(cr, uid, [('name','=',name)])[0]
                    vals = {
                        'name':name,
                        'value_reference':val_ref,
                        'res_id':res_id,
                        'company_id':company_id,
                        'fields_id':fields_id,
                    } 
                    print("vals",vals)
                    self.pool.get('ir.property').create(cr,uid,vals,context)

如果我需要多公司的任何配置..请解释一下。我对配置一无所知。:( 谢谢。

4

1 回答 1

1

首先,属性字段不是您应该即时创建的东西,因为它会影响整个系统。

您可以参考此视频进行配置:https ://www.youtube.com/watch?v=_S6M0ibLW3g&wadsworth=1

于 2013-10-25T07:29:52.913 回答