Variable quantity in contract recurrent invoicing
Con este módulo, podrás definir en contratos recurrentes algunas líneas con cantidad variable según una fórmula proporcionada.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 19.0Permite establecer líneas de contrato para facturar una cantidad calculada mediante una fórmula en lugar de un número fijo, y opcionalmente omitir las líneas cuya cantidad calculada sea cero.
Este módulo amplía los contratos recurrentes para que cada línea de contrato pueda ser de cantidad fija o de cantidad variable.
- En las líneas de contrato y en las líneas de plantilla de contrato aparece una opción "Tipo de cantidad" (Cantidad fija / Cantidad variable). Al seleccionar Cantidad variable, el campo de cantidad normal se oculta y en su lugar aparece un campo "Fórmula de cantidad".
- Las fórmulas se gestionan en una nueva pantalla, "Fórmulas (cantidad)", que se encuentra en el menú de configuración de Contratos. Cada fórmula tiene un nombre y un bloque de código Python que debe almacenar la cantidad a facturar en una variable llamada 'result'. El código puede usar el usuario actual, el contexto, la línea de contrato, el contrato y la factura que se está creando.
- Cuando se genera una factura recurrente, la cantidad de una línea variable se calcula ejecutando su fórmula para el periodo de facturación; las líneas fijas conservan su cantidad habitual.
- En la cabecera del contrato hay una opción "Omitir líneas con cantidad cero". Si está marcada, las líneas de contrato cuya cantidad calculada sea cero no crean ninguna línea de factura.
- Las fórmulas se validan al guardarse: un código no válido o un código que no produzca un 'result' genera un error.
Modifica contract.contract, contract.line, contract.template.line y añade el nuevo modelo contract.line.qty.formula. Solo los responsables de contabilidad pueden crear o modificar fórmulas; los usuarios de contabilidad pueden leerlas.
Depende de
Lo necesitan otros módulos
Menús que añade
Modelos y campos (4)
- contract.line · amplía un modelo existente
- contract.contract · amplía un modelo existenteskip_zero_qty (Skip Zero Qty Lines)
- contract.template.line · amplía un modelo existenteqty_type (Qty. type), qty_formula_id (Qty. formula)
- contract.line.qty.formula · modelo nuevocode, name
Texto generado por IA (DeepSeek) al leer el código de la versión 19.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 8 confirmadas, 1 sin información de 9 versiones.
Fuentes · Odoo 12.0
Confirmado el 2026-11-03 en la rama 12.0 de OCA/contract.
terminal Instalación y uso
Documentación de OCA · Odoo 19.0Configuración
Fuente · Odoo 19.0- Vaya a Facturación \> Configuración \> Contratos \> Fórmulas (cantidad).
- Defina cualquier fórmula basada en código Python que almacene en algún momento un valor float/integer de la cantidad a facturar en la variable 'result'. Puede usar estas variables para calcular su fórmula:
- env: Variable de entorno para obtener otros modelos.
- context: Diccionario de contexto actual.
- user: Usuario actual.
- line: Línea de factura recurrente del contrato que activa esta fórmula.
- contract: Contrato al que pertenece la línea.
- invoice: Factura (cabecera) que se está creando.
Para usar este módulo, necesita:
- Vaya a Facturación \> Clientes \> Contratos de clientes y seleccione o cree un nuevo contrato.
- Marque Generar facturas recurrentes automáticamente.
- Añada una nueva línea de facturación recurrente.
- Seleccione "Cantidad variable" en la columna "Tipo de cantidad".
- Seleccione una de las posibles fórmulas a usar (creada previamente).
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.