Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
1 Beantwoorden
8017 Weergaven

Hello,

I'm creating a module to manage the no-compliance. To do that a create the object named 'incident' like that :

class non_compliance_incident(osv.osv): _name = "non.compliance.incident" _description = "Incident"

_columns = {
    'date': fields.datetime('Date de création', readonly=True),
    'product_id': fields.many2one('product.product', 'Produit', required=True),
    'partner_id': fields.many2one('res.partner', 'Fournisseur', required=True),
    'reference':fields.char('Référence',size=64),
    'description':fields.char('Description de la non-conformité',size=128),
    'user_id': fields.many2one('res.users', 'Crée par', readonly=True),
    'state': fields.selection([('draft','Brouillon'),('confirmed','En cours'),('done','Soldée'),('cancel','Annulée')],'Statut', size=32),
    'quantity': fields.integer('Quantité'),
}
_defaults = {
    'date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
    'user_id': lambda object,cr,uid,context: uid,
    'state': lambda * a:'draft',
}

nctm_incident()

I want to use the id of the object to define the default value of the field 'description'. For exemple :

id = 1 => description IS "NC1" id = 9852 => description IS "NC9852"

Please let me know how to define the default value of the field "description", so my question :

'description': lambda ???

Thank you very much,

CGS

Avatar
Annuleer
Beste antwoord

You can't use ID as parametr for calculation default value. Because when you open form for create new records, ID yet not assigned, so at this moment it undefined. You can redefine create method and calculate your "description" base on new ID, that you receive after creating record. But while you don't save record, "description" will uncalculated.

If you need unique identificator, then better use builtin model - sequence.

Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
1
mrt. 15
4758
1
mrt. 15
9420
1
jan. 17
6427
2
mrt. 15
6308
0
mrt. 15
7079