使用另一个函数odoo 8返回的值

时间:2019-03-17 08:38:29

标签: odoo

知道结果是一个列表,如何在第一个函数on_change_type_Fiche_id中使用第一个函数on_change_processus_id的结果?

class Fiche(models.Model):
    _name = 'conformite.fiche'
    _description = 'Fiche Nom Conformite'

    type_Fiche = fields.Many2one('conformite.fichepour')
    processus_id = fields.Many2one('conformite.processus')

    @api.multi
    def on_change_type_Fiche_id(self, type_Fiche):
        lis=[]
        if type_Fiche:
            print 'type_Fiche',type_Fiche
            self.env.cr.execute("SELECT activite_id FROM conformite_activite_fichepour_rel where fichepour_id=%s"%(type_Fiche,))
            activite=self._cr.fetchall()
            print activite
            for x in activite:
                lis.append(x[0])
        return lis

    @api.multi
    def on_change_processus_id(self, processus_id):
        if processus_id:
            print 'processus_id',processus_id
            print 'context value',self.env.context.get('type_Fiche')
            # print  'function',self.on_change_type_Fiche_id(vals.get('type_Fiche'))
            p=self.env['conformite.activite'].search([('processus_id','=',processus_id),('id','in',Result of on_change_type_Fiche_id function)])
            liste=[]
            for x in p:
                liste.append(x.id)
            print 'liste',liste
            return {'domain': {'activite_id': [('id', 'in', liste)]}}
        return {}

0 个答案:

没有答案