Un campo autoincremental es un número consecutivo que se genera cada que creas un documento del tipo documental o formulario que incluye dicho campo.
Desde la administración del tipo documental al que quieres añadirle el nuevo campo, ve al panel Fields y haz clic en el botón New Field.
A continuación, pon un nombre a tu campo y selecciona como tipo "Autoincrement".
Una vez creado el campo, desde la administración del campo podrás:
- Definir un prefijo para tu número (Prefix): Esta expresión aparecerá fija antecediendo el número consecutivo que se genere.
- Reiniciar el campo: Esto te permitirá reiniciar a 0 el campo autoincremental la próxima vez que se cree un nuevo documento. Last Value es el último valor que se asignó a un documento durante su creación.
Los campos autoincrementales reinician el contador a 0 cada año de forma automática. Para que no se reinicie cada año, es necesario desmarcar la opción "Autoincrement reset when prefix change" en la administración avanzada. Esta opción es útil para elegir si reiniciar o no el contador del campo al cambiar el prefijo o el año.
Además, en caso de desearlo, puedes quitar el año del prefijo del campo, desmarcando la casilla "Autoincrement year in prefix" desde la administración avanzada. Ver como hacerlo en el siguiente artículo: ¿Cómo eliminar el año en un campo autoincremental?
¿Cómo se puede generar un autoincrmental personalizado?
Si se desea generar un autoincremental que use criterios personalizados, se puede hacer de forma programada utilizando en una operación el siguiente código:
from smartmetadata.utils import get_next_value_from_key
key = 'prefijo'
value = get_next_value_from_key(key)
El ejemplo anterior generará un valor numérico de forma incremental, donde el primer valor será 0.
Con dicho valor, se puede trabajar para generar el valor de un metadato, por ejemplo:
autoincrement = f'{key}-{str(value).zfill(5)}'
fil.set_metadata('metadata.id_documento', autoincrement)
asignará al metadato 'metadata.id_documento' el valor 'prefijo-00000', 'prefijo-00001', y así sucesivamente tras cada llamada.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.