OdooWiki OCA HUB

base_generate_code

base_generate_code folder_open OCA/server-tools open_in_new
Tools Licencia: AGPL-3

Este módulo genera código legible para humanos: no demasiado largo, suficientemente aleatorio, sin algunos caracteres ambiguos como ("O" "0", "I", "L"), no memorable, sin significado (sin palabras), aceptable como código de barras (como code123, 123CoDe, 1code-23, ...).

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 14.0

Proporciona una forma reutilizable de generar automáticamente códigos cortos y legibles por humanos (como códigos de barras) para registros, evitando caracteres confusos como O, 0, I y L. Otros módulos pueden usarlo para rellenar automáticamente un campo de código cuando se crea un registro.

Este módulo añade un bloque de construcción técnico en lugar de una pantalla con la que los usuarios trabajen directamente. Define un mixin de formato de código (code.format.mixin) que otros modelos de Odoo pueden heredar para obtener un campo code generado automáticamente.

Cuando se crea un registro sin un código, el módulo genera uno para él. El código se construye a partir de un patrón de máscara; el patrón predeterminado es XXXXXX-00, donde cada X se convierte en una letra mayúscula aleatoria y cada 0 se convierte en un dígito aleatorio. Las letras I, O y las minúsculas i, o, además de los dígitos 1 y 0, se excluyen deliberadamente para que los códigos sean fáciles de leer y escanear.

  • El código generado se comprueba contra los registros existentes; si ya existe, se genera uno nuevo, hasta 20 intentos, tras los cuales se lanza un error.
  • El campo code se rastrea, por lo que los cambios en él se registran en el chatter (el módulo depende de mail).
  • La máscara se puede personalizar por modelo a través de la configuración del mixin, y el módulo también depende de sale.

Los derechos de acceso se conceden a todos los usuarios internos para el modelo del mixin. Este módulo no añade menús, informes ni acciones programadas; solo proporciona la lógica de generación y el campo de código para que otros módulos lo reutilicen.

Depende de

salemail
Modelos y campos (1)
  • code.format.mixin · modelo nuevocode

Texto generado por IA (DeepSeek) al leer el código de la versión 14.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-03
Confirmado (verificado en repositorio y rama) Estimado (sin verificar) Sin información

Estado de confirmación: 1 confirmada, 8 sin información de 9 versiones.

Fuentes · Odoo 14.0

Confirmado el 2026-11-03 en la rama 14.0 de OCA/server-tools.

terminal Instalación y uso

Documentación de OCA · Odoo 14.0

1/ _code_mask debe añadirse en el modelo relacionado, por ejemplo en "gift.card": _code_mask = { "mask": "code_mask", "template": "gift_card_tmpl_id" } 2/ En el modelo relacionado, puedes cambiar el valor de code_mask o usar su valor por defecto (XXXXXX-00): x significa una letra minúscula aleatoria, X significa una letra mayúscula aleatoria, 0 significa un dígito aleatorio. 3/ Además, actualiza un método del modelo destino para calcular el código. Por ejemplo el método create: res = super().create(vals) vals["code"] = res._generate_code()

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, Configuración.

info

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.