Le mer. 05 mars 2014 16:08:34 CET, Cédric Krier a écrit :
On 05 Mar 02:15, Pascal Obstetar wrote:
Bonjour,

J'ai une classe equipement avec les attributs (code, name, active), une
classe ug avec les attributs (code, name, active, ancien_equipement) avec
ancien_equipement relation many2many avec equipement mais dont le domain
est restreint aux équipements dont active est à False.

dans la relation many2many j'ai ajouté un domain=[('active', '=', False)]
au many2one equipement mais lorsque j'ajoute un ancien équipement dans la
vue ug il m'affiche les équipements actifs mais pas les équipements inactif
dont active=false ? Où est l'erreur ?

Sans le code c'est très difficile d'aider car la description n'est pas
univoque.



Voici le code :

class equipement(ModelSQL, ModelView):
   u'Équipement'
   __name__ = 'cg.equipement'
   _rec_name = 'code'

   code = fields.Char(
           string = u'Code équipement',
           required = False,
           readonly = False,
       )
   name = fields.Char(
           string = u'Nom de la route',
           required = False,
           readonly = False,
       )
   ug = fields.Many2Many(
           'cg.equipement-cg.ug',
           'equipement',
           'ug',
           string='UG',
           help=u'Unités de gestion de l\'équipement',
           required=False,
           states=STATES,
           depends=DEPENDS,
       )
   active = fields.Boolean(
           string=u'Active',
           help=u'Active',
       )

class ug(ModelSQL, ModelView):
   u'Unité de gestion'
   __name__ = 'cg.ug'
   _rec_name = 'code'

   code = fields.Char(
           string = u'Code UG',
           help=u'Unité de gestion',
           required = True,
           states=STATES,
           depends=DEPENDS,
       )
   name = fields.Char(
           string = u'Nom de la route',
           required = False,
           readonly = False,
       )
   acequipement = fields.Many2Many(
           'cg.ug-cg.equipement',
           'ug',
           'equipement',
           string=u'Anciens équipements',
           help=u'Anciens codes équipement',
           readonly=True,

       )
   active = fields.Boolean(
           string=u'Active',
           help=u'Active',
       )

class UgEquipement(ModelSQL):
   u'Ug - Equipement'
   __name__ = 'cg.ug-cg.equipement'
   _table = 'ug_acequipement_rel'
   ug = fields.Many2One(
           'cg.ug',
           string=u'UG',
           ondelete='CASCADE',
           required=True
       )
   equipement = fields.Many2One(
           'cg.equipement',
           string=u'Equipement',
           ondelete='CASCADE',
           required=True,
           domain=[('active', '=', False)],
       )

Répondre à