Le lundi 10 août 2015 13:55:03 UTC+2, Cédric Krier a écrit :
>
> On 2015-08-10 04:33, Pascal Obstetar wrote: 
> > Est-il possible d'afficher le code du tiers à la création et pas après 
> sa 
> > création ? 
>
> Si tu veux mais alors il y aura des trous dans la numérotation puisque 
> le numéro ainsi réservé pourait ne pas être utiliser finallement. 
> Pour ce faire, il faut définir un méthode default_code. 
>
>
> -- 
> Cédric Krier - B2CK SPRL 
> Email/Jabber: cedric...@b2ck.com <javascript:> 
> Tel: +32 472 54 46 59 
> Website: http://www.b2ck.com/ 
>


En fait c'est un peu plus complexe. J'ai les deux classes ci-dessous :

class Exit(Mapable, ModelSQL, ModelView):
    u'Sortie de terrain'
    __name__ = 'inventory.exit' 

typeinv = fields.Many2One(
            'inventory.code',
            string=u'Type',
            help=u'Type d\'inventaire / Type de protocole',
            domain=[('code', '=', 'TYPEINV'), ('name', '=', 
Eval('methode_name', ''))]
        )           
    points = fields.One2Many(
            'inventory.point',
            'exit',
            'Dispositif (Points)',
            states={'invisible': Not(Bool(Equal(Eval('dispositif'), 
'point')))},
            depends=['dispositif'],
         )


class PointSession(Session):
    u'Point - Session'
    __name__ = 'inventory.point-inventory.session'
    _rec_name= 'point'
    
    point = fields.Many2One(
            'inventory.point',
            string=u'Point',
            ondelete='CASCADE',
            required=True
        )            
        
    typeinv = fields.Function(
                fields.Many2One(
                    'inventory.code',
                    string=u'Type',
                    help=u'Type d\'inventaire / Type de protocole',         
      
                ),
            '_get_typeinv',
        )
        
    def _get_typeinv(self, ids):
        u'Type inventaire'
        return self.point.exit.typeinv.id
        
    @staticmethod
    def default_typeinv():
        return point.exit.typeinv.id

Donc je voudrais récupérer à la création d'un nouveau PointSession le 
numéro de typeinv avec la fonction default_typeinv mais 
point.exit.typeinv.id est faux et self ne fonctionne pas avec la fonction 
default ?

Répondre à