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: [email protected] <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 ?