env: environnement dans lequel l'action est déclenchéemodel: modèle de l'enregistrement sur lequel l'action est déclenchée ; est un jeu d'enregistrements voidrecord : enregistrement sur lequel l'action est déclenchéerecords: jeu d'enregistrements de tous les enregistrements sur lesquels l'action est déclenchée en mode multitime, datetime, dateutil, timezone: bibliothèques Python utilesfloat_compare(): fonction 'utility' pour comparer les flottants en fonction d'une précision spécifiqueSi plusieurs actions filles renvoient une action, seule la dernière sera exécutée. Cela peut se produire lorsque plusieurs actions-serveur exécutent du code qui renvoie une action ; ou lorsque des actions-serveur renvoient une action-client.
Les variables suivantes peuvent être utilisées :
env: environnement dans lequel l'action est déclenchéemodel: modèle de l'enregistrement sur lequel l'action est déclenchée ; est un jeu d'enregistrements voidrecord : enregistrement sur lequel l'action est déclenchée ; peut être voidrecords: jeu d'enregistrements de tous les enregistrements sur lesquels l'action est déclenchée en mode multi ; peut être voidtime, datetime, dateutil, timezone: bibliothèques Python utilesfloat_compare(): fonction 'utility' pour comparer les flottants en fonction d'une précision spécifiquelog(message, level='info'): fonction de journalisation pour enregistrer des informations de débogage dans le tableau ir.logging_logger.info(message): logger pour émettre des messages dans les logs du serveurUserError : classe Exception permettant d'afficher des messages d'avertissement à l'intention des utilisateursCommand : espace de nom de commande x2Manyaction = {...}env['ir.cron']._notify_progress(done=task_done_count, remaining=task_remaining_count)Exemple du code Python :
partner_name = record.name + '_code'
env['res.partner'].create({'name': partner_name})