-
Filtros del sistema
Los filtros disponibles en el buscador de la aplicación o los atributos Anjana en los que se muestran entidades o relaciones indexados en Solr son configurables. Adicionalmente, se pueden configurar filtros para las pantallas de histórico y auditoría, persistidos en la base de datos.
A continuación se muestran algunos de los filtros configurados:
-
Filtros del Portal
-
Filtros en atributo de tipo Entidad (ENTITY_CONTAINER, ENTITY_SEARCH y ARRAY_ENTITY)
-
Filtros en histórico
La tabla filter_conf es la tabla que contiene los filtros preconfigurados disponibles en la plataforma.
Existen filtros cuyos valores no se traducen como el de tipo de objeto, subtipo del objeto y nombres de usuario o de tipo SELECT_USERS.
Estructura de la tabla
Cada filtro registrado se caracteriza por los siguientes elementos:
-
Id: identificador único de la tabla.
-
Collection: datos para los que se configura el filtro.
-
Label: clave (key) de traducción que permite que el usuario vea el nombre del filtro en su idioma. Para los atributos de metadatos que se añadan como filtros adicionales, en este campo se debe poner el mismo label que en la tabla anjana.attribute_definition.
-
Main: boolean que indica si el filtro es estático o lo añade el usuario en pantalla.
-
Position: orden en el que se desea que se visualice el filtro dentro de Anjana.
-
Sortable: poner a 'true'. No se hace uso de este campo.
-
Type: indica el tipo de filtro.
-
Filter_Name: campo de Apache Solr o de la tabla audit_log por el que va efectuar el filtro.
-
Page_Name: página a la que aplica el filtro configurado.
A continuación se especifica el tipo de filtro que debe ser usado en función del tipo del atributo al que aplique (los tipos no incluídos en la tabla no tienen filtro correspondiente):
Tipo de atributo |
Tipo de filtro en portal |
Array de Date |
INPUT_DATE_RANGE |
Date |
|
Array de Decimal |
INPUT_NUMBER_RANGE |
Decimal |
|
Array de Number |
|
Number |
|
Number range |
|
Array de Entity |
ENTITY |
Entity Search |
|
Entity Container |
|
Array de Users |
SELECT_USERS |
User |
|
Taxonomía única |
MULTI_SELECT_TREE |
Taxonomía de selección múltiple |
|
Array de Organizational Unit |
MULTI_SELECT_TREE_OU |
Organizational Unit |
|
Boolean |
BOOLEAN |
Array de Boolean |
MULTI_SELECT |
MultiSelect |
|
MultiSelect con iconos |
|
MultiSelect con iconos y texto |
|
Reference Metadata |
|
Selector con icono |
|
Selector con icono y texto |
En función de las pantallas para las que se configuren, Collection, Main, Name y Page_Name deben ser los siguientes:
-
Filtros del Portal o atributos de tipo Entidad
-
Collection será ‘kerno'
-
Main por defecto será 'false'. Se debe poner 'true' si se desea que el filtro sea estático, es decir, que aparezca por defecto sin necesidad de añadirlo el usuario.
-
El Nombre (Name) de los filtros debe coincidir con el name que tiene el atributo sobre el que se efectúa el filtro en la tabla anjana.attribute_definition pero todo en mayúsculas (por ejemplo: technology como filtro tendría que ser TECHNOLOGY, isEngine como ISENGINE, data_sensitivity como DATA_SENSITIVITY, etc.).
-
Page_Name queda vacío. No es un campo utilizado para los filtros de “kerno”
-
-
En las pantallas de auditoría
-
Collection será ‘audit_logs’
-
Main debe ser siempre ‘true’
-
Los campos (Name y Type) posibles son:
-
action: de tipo MULTI_SELECT
-
logOrigin: de tipo MULTI_SELECT
-
objectName: de tipo ENTITY
-
objectType: de tipo MULTI_SELECT
-
objectSubtype: de tipo MULTI_SELECT
-
startTime: de tipo INPUT_DATE_RANGE
-
userName: de tipo SELECT_USERS
-
-
Page_Name puede ser:
-
AUDIT_ALL: histórico completo
-
AUDIT_OBJECT: histórico por objeto
-
AUDIT_USER: histórico de usuario
-
null en caso de que afecte a todas las pantallas de auditoría
-
-
Visión de Administrador
El alta de un nuevo filtro en el panel de administración de Anjana Data se realiza en Filter Confs:
Al acceder se muestra una tabla que contiene todos los filtros existentes en la configuración actual.
La creación de un nuevo filtro se realiza mediante el botón New:
A continuación, se muestra cómo crear un filtro:
Visión de Desarrollador
Para definir los filtros hay que configurar la tabla filter_conf del esquema Minerva. Para ello, hay que rellenar un sql como el siguiente:
INSERT INTO minerva.filter_conf (id, collection, "label", main, filter_name, "position", sortable, "type", page_name) VALUES (107, 'audit_logs', 'FILTERS.OBJ_TYPE', true, 'objectType', 4, false, 'SELECT', 'HISTORIC_ALL'), (118, 'audit_logs', 'FILTERS.OBJ_SUB_TYPE', true, 'objectSubType', 4, false, 'SELECT', 'HISTORIC_USER'), (115, 'audit_logs', 'FILTERS.OBJECT_ID', true, 'objectId', 6, false, 'INPUT_TEXT', 'AUDIT_ALL'), (120, 'audit_logs', 'FILTERS.OBJECT_ID', true, 'objectId', 6, false, 'INPUT_TEXT', 'HISTORIC_USER'), (38, 'kerno', 'FILTERS.CREATED_USER', true, 'CREATED_USER', 5, true, 'SELECT_USERS', NULL), (35, 'kerno', 'FILTERS.OBJ_TYPE', true, 'OBJ_TYPE', 1, true, 'INPUT_CHECKBOX', NULL); |