Cuando necesitamos un registro simple del tipo código/valor, por ejemplo, estado y su sigla, en el Microsiga Protheus tenemos una estructura genérica de tablas. Además de la tabla se suministran consultas estándar a fin de que se utilicen en los campos de otras tablas, para poder consultar su tabla.
La principal ventaja es en cuestión de tiempo, al evitar la creación de otra tabla más en la base de datos, se salta creando consultas estándar para ésta (LookUp).
Por estándar, los valores de las tablas genéricas se agregan por medio del módulo de configuración, y solamente tienen acceso los que están en el grupo de administradores.
Hay que estar atentos e identificar el momento ideal para utilizar el SX5. Para ello tomamos como base un conjunto simple de preguntas:
- ¿Un usuario común puede agregar datos en esta tabla?
- ¿Es posible que en el futuro esta tabla necesite más que un campo valor?
- ¿La cantidad de datos de esta tabla es muy grande?
Cuando respondemos Sí a cualquiera de estas preguntas, es bien probable que la tabla genérica no atienda sus necesidades. ¿Qué sucede cuando respondemos Sí a una de estas preguntas?
- Si el usuario puede agregar datos a la tabla es muy probable que necesitemos validar la entrada de datos en éste, por lo tanto se recomienda una rutina específica, puesto que no tenemos mecanismos para efectuar eso en la tabla genérica.
- Si se identifica que tarde o temprano será necesario tener uno o más campos en la tabla, no podremos hacerlo, porque la tabla es genérica y no se puede crear un campo específico solamente para su tabla.
- Su tabla genérica comparte la misma tabla física que las demás, por lo tanto si tenemos muchos registros en ésta podemos perder desempeño.
Campos | Tipo | Descripción |
X5_FILIAL | Carácter | Código de la sucursal del sistema. |
X5_TABELA | Carácter | Código de la tabla que se utilizará como clave. |
X5_CHAVE | Carácter | Código que puede tener 6 caracteres para identificar un valor en la tabla. |
X5_DESCRI | Carácter | Contenido en el idioma portugués. |
X5_DESCSPA | Carácter | Contenido en el idioma español. |
X5_DESCENG | Carácter | Contenido en el idioma inglés. |