Para ello, en un archivo .py, incluimos nuestro campo:
from odoo import fields, models, api |
Nota: El atributo config_parameter, permitirá generar el valor de este campo como un registro de ir.config_parameter (o parámetro del sistema), teniendo en cuenta que ir.config.settings es un TransientModel, no podremos persistir la info de forma 'tradicional'.
Luego vamos a crear un .xml para definir dónde incluir este campo en la vista de Configuración del módulo:
<?xml version="1.0" encoding="utf-8"?> |
El resultado será como se muestra en la siguiente imagen.
Si vamos a Ajustes -> Técnico -> Parámetros-> Parámetros del sistema, podemos ver el registro que hemos generado al seleccionar nuestra cuenta contable.
Para acceder a ese dato que acabamos de guardar solo tenemos que hacerlo de la siguiente forma:
my_config_data = self.env['ir.config_parameter'].sudo().get_param('res_config_settings_sample.expense_account_id') |
Y listo... ya podemos usar la cuenta configurada desde cualquier parte.... ;)
Pero si quieres profundizar un poco más en las diferentes opciones, puedes ver la descripción del modelo ResConfigSetting (en /base/models/res_config.py), donde se describe cómo procede Odoo para cada situación.