En Anjana Data, los filtros permiten a los usuarios refinar búsquedas y visualizar la información relevante en diferentes contextos del Portal de Datos (buscador y pantallas de auditoría).
Pantallas del Portal de Datos con filtros configurables
Hay distintas pantallas del Portal de Datos que tienen la posibilidad de customizar los filtros que se ofrecen a los usuarios:
Filtros del Catálogo y Marketplace
El Catálogo y Marketplace tiene unos filtros configurados por defecto, es decir, que aparecen de forma estática en la parte superior. Adicionalmente, el usuario puede añadir más filtros seleccionando de entre los filtros configurados por la organización, mediante la opción de Filtros > Añadir filtro.
Filtros de los atributos de tipo entidad
Los atributos de tipo entidad disponen de un filtro que facilita la búsqueda y localización de entidades. En ellos aparecen los mismos filtros por defecto y para añadir a demanda que en el Catálogo y Marketplace.
Filtros del módulo de auditoría global
El módulo de auditoría global dispone de filtros por ciertos tipos de metadatos y que admiten cierto grado de configuración.
Filtros del módulo de auditoría de objeto
El módulo de auditoría de un objeto (entidad o relación) dispone de filtros por ciertos tipos de metadatos y que admiten cierto grado de configuración.
Filtros de Mi actividad (auditoría de usuario)
Cada usuario puede consultar en su perfil su propia auditoría, donde dispone de filtros que facilitan la localización de los registros correspondientes. Estos filtros admiten cierta customización por ciertos metadatos.
Tabla Filter Conf del Panel de Configuración (Visión administrador)
Estos filtros se definen en la tabla Filter Conf del Portal de Configuración y determinan qué metadatos se pueden utilizar como criterio de búsqueda, cuál es su tipología, etc.
Estructura de la tabla Filter Conf
Cada filtro registrado se caracteriza por los siguientes campos:
-
Id: identificador único del filtro. Se asigna automáticamente desde el Panel de configuración. -
Name: campo que sirve para indicar qué atributo de metadatos es sobre el que aplica el filtrado.-
Cuando el filtro corresponde a filtro del Catálogo o Marketplace, debe corresponder con un atributo de metadatos definido en la tabla
Attribute Definitiono propiedades genéricas. Ver Filtros . -
Cuando el filtro corresponde a campos relacionados con la Auditoría del sistema, solo hay 8 valores posibles que se indican en el siguiente apartado. Filtros .
-
-
Label: se trata de la clave de traducción del nombre visible del filtro en el Catálogo, Marketplace y en los distintos módulos de Auditoría. -
Type: permite seleccionar el tipo de filtro de entre los tipos disponibles. Debe corresponder con el tipo del atributo al que aplica (Ver la tabla disponible en el siguiente apartado). -
collection: hace referencia a colección de datos sobre la que aplica el filtro en la tecnología del indexador. El usuario debe escoger entre los siguientes valores en función del módulo para el que se configura el filtro:-
Kerno→ Sirve para configurar filtros en el Catálogo y Marketplace. -
Audit Logs→ Sirve para configurar filtros en los distintos módulos de Auditoría.
-
-
pageName: sirve para indicar página a la que aplica el filtro. Los valores posibles son los siguientes:-
vacío→ Aplicable para filtros del Catálogo y Marketplace o para todos los módulos de auditoría simultáneamente (Auditoría global, auditoría de objeto o Mi actividad) -
AUDIT_ALL→ Aplica solamente al módulo de Auditoría global. -
AUDIT_USER→ Aplica solamente al módulo de Auditoría de usuario. -
AUDIT_OBJECT→ Aplica solamente al módulo de Auditoría de objeto.
-
-
main: campo booleano que solo aplicación práctica en los filtros del Catálogo y Marketplace:-
true→ Marcar para que el filtro aparezca por defecto en la barra de filtros del Catálogo y Marketplace, así como en los filtros de los atributos de tipo ENTIDAD. En los filtros de Auditoría, elmainsiempre debe estar atrue. -
false→ Desmarcar para que sea el usuario quien tenga la posibilidad de añadir el filtro en el Catálogo y Marketplace si así lo desea para ampliar los criterios de filtrado
-
-
position: sirve para establecer el orden en el que se muestran los filtros en la interfaz. -
sortable: actualmente no se utiliza (campo legacy). Puede dejarse comofalse.
Especificaciones para configuración de filtros del Catálogo y Marketplace
Estos filtros buscan incorporar capacidades de filtrado por ciertas características de los objetos gobernados y sus atributos de metadatos.
-
Propiedad
Name
Existen un conjunto de propiedades genéricas muy útiles como criterios de filtrado:
|
Name |
Label |
Type |
Descripción funcional |
|---|---|---|---|
|
STATE |
FILTERS.STATE |
MULTI_SELECT |
Estado en el que se encuentra el activo según la fase de gobierno: Importado, Borrador, Aprobado… |
|
OBJ_TYPE |
FILTERS.OBJ_TYPE |
MULTI_SELECT |
Tipo de objeto: entidad o relación |
|
OBJ_SUBTYPE |
FILTERS.OBJ_SUBTYPE |
MULTI_SELECT |
Subtipo de objeto de los configurados en el metamodelo |
|
CREATED_USER |
FILTERS.CREATED_USER |
MULTI_SELECT |
Usuario que ha creado el objeto |
|
START_DATE |
FILTERS.START_DATE |
INPUT_DATE_RANGE |
Fecha de creación |
|
VALIDITY_DATE |
FILTERS.VALIDITY_DATE |
INPUT_DATE_RANGE |
Fecha de aprobación |
|
LAST_MODIFIED_DATE |
FILTERS.LAST_MODIFIED_DATE |
INPUT_DATE_RANGE |
Fecha de última modificación |
Además de estas propiedades, se pueden configurar filtros por cualquiera de los atributos de las plantillas declarados en Attribute Definition. Para ello, el valor de Name debe configurarse en mayúsculas a partir del campo name de dicha tabla. Por ejemplo, si en Attribute Definition existe un atributo con name = dominio, el filtro debe configurarse con Name = DOMINIO.
Adicionalmente, cualquier metadato incluido en SOLR puede incorporarse como un filtro, incluyendo la nomenclatura de SOLR en el Name. Ver apartado de Filtros
-
Propiedad
Label
Para las propiedades genéricas, el Label se indica en la tabla anterior. Para los atributos de plantillas, el Label debe conformarse de la siguiente manera:
-
FILTERS.<name en Attribute Definitions>
-
Propiedad
Type
Para las propiedades genéricas, el Type se indica en la tabla anterior. Para los atributos de plantillas, el Type debe corresponder con los valores de la siguiente tabla:
|
Tipo de atributo |
Tipo de filtro |
|
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 |
-
Propiedad
Collection
Para los filtros del Catálogo y Marketplace, el valor debe ser siempre Kerno.
-
Propiedad
pageName
Para los filtros del Catálogo y Marketplace, el valor debe ser siempre null.
-
Propiedad
Main
El valor de esta propiedad debe ser true si se desea configurar como filtro preestablecido en el Catálogo y Marketplace, o false si se desea que sea un filtro que el usuario pueda añadir a demanda.
-
Propiedad
position
El valor indica la posición que ocupa el filtro dentro de los filtros por defecto (main a true) o en los filtros a demanda (main a false)
Especificaciones para configuración de filtros de Auditoría
Estos filtros buscan incorporar capacidades de filtrado en las diferentes pantallas de auditoría, donde los filtros permitidos son los 8 que se indican a continuación. No se pueden crear filtros custom relacionados con atributos de las plantillas
-
Propiedad
Name
Cuando el filtro corresponde a campos relacionados con la Auditoría del sistema, el valor de Name hace referencia a los campos de la tabla minerva.audit_log (tabla del modelo de datos interno), que almacena la auditoría interna y externa de Anjana Data. Estos nombres se escriben exactamente como figuran a continuación, respetando mayúsculas y minúsculas: a diferencia de los filtros del Catálogo y Marketplace, no se convierten a mayúsculas. Los valores admitidos son los ocho siguientes y no existe ningún otro:
|
Name |
Label |
Type |
Módulos aplicables |
Descripción funcional |
|---|---|---|---|---|
|
action |
FILTERS.STATE |
MULTI_SELECT |
|
Estado en el que se encuentra el activo según la fase de gobierno: Importado, Borrador, Aprobado… |
|
logOrigin |
FILTERS.LOG_ORIGIN |
MULTI_SELECT |
|
Tipo de objeto: entidad o relación |
|
objectName |
FILTERS.OBJ_NAME |
ENTITY |
|
Permite buscar la auditoría de un activo concreto |
|
objectType |
FILTERS.OBJ_TYPE |
MULTI_SELECT |
|
Permite buscar por un tipo de objeto: entidad o relación |
|
objectSubType |
FILTERS.OBJ_SUB_TYPE |
MULTI_SELECT |
|
Permite buscar por un subtipo de objeto de los configurados en el metamodelo |
|
searchAction |
FILTERS.SEARCH_ACTION |
BOOLEAN |
|
Flag que determina si se muestran las acciones de búsqueda y navegación por la plataforma. |
|
startTime |
COMMON.DATE |
INPUT_DATE_RANGE |
|
Permite filtrar los registros por fecha de creación, mediante un rango con límite inferior y superior. |
|
userName |
FILTERS.USER |
MULTI_SELECT |
|
Permite filtrar por el usuario que ha realizado la acción que deja traza en la auditoría. |
No todos estos filtros son aplicables a los tres módulos de auditoría. El apartado Filtros disponibles en cada módulo de auditoría recoge en qué módulos tiene sentido configurar cada uno de ellos.
-
Propiedad
Label(sustituye al texto actual)
Indicado en la tabla anterior.
-
Propiedad
pageName(sustituye al texto actual)
pageName: indica el módulo en el que se muestra el filtro, ver “Módulos aplicables” en la tabla anterior . Los valores posibles son los siguientes:
-
vacío→ En los filtros de auditoría (collection=Audit Logs), dejarlo vacío hace que el filtro se muestre simultáneamente en los tres módulos de auditoría: Auditoría global, Auditoría de objeto y Auditoría de usuario. -
AUDIT_ALL→ El filtro se muestra únicamente en el módulo de Auditoría global. -
AUDIT_OBJECT→ El filtro se muestra únicamente en el módulo de Auditoría de objeto. -
AUDIT_USER→ El filtro se muestra únicamente en el módulo de Auditoría de usuario (Mi actividad).
Para que un filtro de auditoría se muestre en dos de los tres módulos, pero no en los tres, debe darse de alta un registro independiente por cada módulo, con el mismo Name, Label y Type, y un valor de pageName distinto en cada uno. No se admiten valores múltiples en un único registro.
-
Propiedad
main(sustituye al texto actual)
main: debe valer siempre true. Los módulos de auditoría no ofrecen la opción de añadir filtros a demanda, por lo que un filtro de auditoría con main = false no llega a mostrarse en ninguna pantalla.
Importante:
Cualquier error en la configuración de los filtros del Catálogo y Marketplace puede provocar el mensaje “Solr: undefined field”, impidiendo el funcionamiento normal del portal.
Las causas más habituales son:
-
Creación de un filtro sobre un atributo que no está asignado a ninguna plantilla.
Solr no puede indexar atributos que no forman parte del metamodelo efectivo de los objetos. Al no existir el atributo en SOLR, no se puede utilizar como filtro. -
Creación de un filtro sobre un atributo no inicializado.
Es decir, el atributo existe en plantilla de algún subtipo de objeto, pero ningún activo del portal tiene un valor para él.
En estos casos, Solr no genera el campo en su índice y el filtro provoca el error.Para evitarlo, se recomienda inicializar el atributo antes de crear el filtro, por ejemplo mediante una edición masiva sobre todos los objetos que lo incorporan en su plantilla, asignando un valor vacío o nulo según corresponda.
-
Error de configuración del filtro.
Si el filtro se configura con un atributo que no existe, es decir, elnameno se corresponde con ningún atributo de la tablaAttribute Definition, el filtro provoca el error.
Alta de un Filtro en la tabla Filter Conf
El alta de un nuevo filtro se realiza en el Panel de configuración
Pasos para el alta de un filtro en el Catálogo y Marketplace:
-
Pulsar el botón New en la esquina superior derecha.
-
Completar los campos conforme al tipo de filtro y módulo en el que se va a configurar.
-
Pulsar en Save para guardar el filtro o en Cancel para descartarlo.
Modificación de un Filtro en la tabla Filter Conf
La modificación de un filtro existente puede realizarse en cualquier momento, dado que únicamente afecta a la visualización y comportamiento de los módulos en los que el filtro es utilizado (buscador o auditoría).
Los siguientes campos pueden modificarse, respetando siempre las restricciones de valores posibles:
-
main: para indicar si el filtro debe aparecer como estático o configurable por el usuario. -
position: para ajustar el orden en el que se muestran los filtros en la interfaz. -
Type: para cambiar el tipo de filtro, siempre seleccionando uno válido en función del tipo de atributo al que aplica. -
pageName: para redefinir las pantallas o secciones de la aplicación en las que el filtro estará disponible conforme a los valores posibles.
El resto de campos (Name, Collection yLabel ) no deben modificarse, salvo para corregir errores de configuración en el alta inicial.
En cualquier momento es posible añadir nuevos filtros o eliminar filtros existentes, en función de las necesidades de visualización o de los módulos habilitados en el Portal de Datos.
Consulta de Filtros mediante acceso directo a la base de datos (Visión desarrollador)
Los filtros se almacenan en la tabla minerva.filter_conf.
|
Columna |
Tipo de dato |
Restricciones / Notas |
|---|---|---|
|
id |
int4 |
PRIMARY KEY. Identificador único del filtro. |
|
collection |
varchar(100) |
|
|
label |
varchar(100) |
Clave de traducción. |
|
main |
bool |
|
|
filter_name |
varchar(100) |
Nombre del campo de Solr o |
|
position |
int4 |
Orden en pantalla. |
|
sortable |
bool |
No utilizado (recomendado |
|
type |
varchar(100) |
Tipo de filtro (ej.: |
|
page_name |
varchar(255) |
Pantalla de auditoría donde aplica ( |
Definición de varios filtros en los diferentes módulos del Portal de Datos:
SELECT id, collection, "label", main, filter_name, "position", sortable, "type", page_name FROM minerva.filter_conf;
Anexo
Filtros avanzados
Los documentos indexados contienen metadatos internos que en ocasiones pueden resultar muy útiles, algunos casos de uso habituales pueden ser:
-
Buscar dataset fields filtrando por el nombre del dataset (
Name= DATASET_NAME ,Label= FILTERS.DATASET_NAME) -
Buscar relaciones filtrando por el subtipo de entidad origen (
Name= SOURCE_TYPE,Label= FILTERS.SOURCE_TYPE) -
Buscar relaciones filtrando por el subtipo de entidad destino (
Name= DESTINATION_TYPE,Label= FILTERS.DESTINATION_TYPE)
Estos metadatos se encuentran indexados y pueden ser configurados como filtros: