Consecutivos por Empresa


([N2] desarrollosvfp) #1

Por favor, solicito una ayuda en el siguiente esquema:

Tabla1: Empresa

Tabla2: Eventos_empresa
Campos: ID, Empresa, Número

Necesito que, en el campo Número, se genere automáticamente un consecutivo independiente por cada empresa.

Muchas gracias.

TAG: Consecutivos multi empresa, consecutivos por separado, consecutivos independientes, consecutivos con prefijos.


([N3] Jose) #2

Buenas tardes,

Crea un índice “empresa, número”

en el trigger “anterior a un alta de ficha” de la tabla eventos cargas lista por el índice “Empresa, Número”
lees el último registro (si no hay ninguno el valor es 0) , obtienes el valor del campo número,le sumas 1 y el resultado lo asignas al campo número del nuevo registro.

Saludos.


([N2] desarrollosvfp) #3

Muchas gracias José.
Lo probaré.


([N3] pacosatu) #4

Hola desarrollosvfp.

Lo que te propone Jose es lo que tendrías que programar si no existieran las Tablas submaestras.

Velneo implementa esta funcionalidad de manera nativa.

  • La tabla Eventos_empresa será la tabla submaestra de Empresa.
  • Velneo creará los campos EMPRESA e ID que conforman el Índice de clave única ID (EMPRESA+ID).
  • La gestión del contador ID es automática e independiente para cada valor de EMPRESA.

Saludos
Paco Satué


([N2] desarrollosvfp) #5

Gracias Paco.

Definitivamente, si los consecutivos los gestiona automáticamente el motor de la base de datos vamos más seguros; por ejemplo, funcionará más rápido y no nos arriesgaremos a tener colisiones en entornos multiusuario.

Gracias a todos por sus aportes.


([N3] Jose) #6

Buenos días,

tiene razón Paco.

Yo entendí que el campo ID era la clave única de la tabla y no por empresa.

Saludos.


([N2] desarrollosvfp) #7

Hola José.

Tu solución también me pareció muy útil, y ya a la registré en mis apuntes personales.

Te agradezco tu interés. Muchas gracias.