Página de cabecera: Base

Se accede a esta página desde el primer enlace en el camino que hay en la zona superior izquierda de cada página (el nombre de la BD).

Persiana Clases (expertos y admin para edición)

Página de índice de clases disponibles.

Sólo los administradores de la BD (grupo admin) en edición pueden gestionar la creación, modificación y eliminación de clases. El resto de usuarios (incluidos expertos deñl grupo 1) pueden ver la información del nº de campos de cada una (NC), la cantidad de conceptos o documentos (ND), el criterio de orden por defecto (Orden), etc.

Haciendo clic en el icono de una, se muestra la página de la clase, lo que sirve para ver toda la lista de conceptos (de esa clase y/o de todas sus subclases) y realizar una búsqueda general, con la posibilidad de filtrar por casi todos los campos de la clase.

La información gráfica (Gra) (que comprende cualquier tipo de archivo externo asociado) y de mapas (Map) que muestra cada clase, es este campo es un núm. decimal, que al convertir a sistema binario, se convierte en las opciones seleccionadas en la página de clase, cuyas opciones son: opciones de mapas: Actual, Hijos, Nietos, Padres y Contenido. Por ejemplo:
- Si tenemos mapas=3 (el valor de defecto)  que en binario es 11, empezando por la izquierda, será que están seleccionados 'Actual' e 'Hijos'.
- El valor decimal 8, que en binario es 1000, si lo invertimos, de izquierda a derecha será sólo la opción 'Padres'.

 

Administradores:

Para dar de alta una clase, basta con:
· pulsar le modo Edición, si no lo está
· seleccionar cualquier campo la línea inferior a la que queremos insertar
· pulsar [Control+Insert] para una línea en blanco
· teclear en columna Código uno válido. Los identificadores (Id) de clases tienen que comenzar con punto (.).

Poniendo en el campo Superior el código de otra clase, definimos la que hemos creado como subclase de aquella, con lo que se agrupará dentro de ella, aunque además podemos subir o bajar la posición de la línea dentro de la lista de subclases que tenga esa. Esta posición es sólo para ordenación visual, no tiene otro uso.

El campo Estilo es importante porque define la representación de icono cuando aparecen conceptos en cualquier lista de datos, y también la representación geográfica en cualquier mapa (bloque so formas con colores para elementos puntuales, líneas abiertas y líneas cerradas para superficies). Esta es una visión global de los estilos de todas las capas. Se puede ver el detalle de definición en las páginas de definición de clases.

Persiana Búsquedas (admin y expertos)

Anexo sintaxis de búsqueda mongoDb y reducida

Los botones del primer bloque permiten realizar de forma muy rápida algunas de las más habituales

Más abajo hay 2 grupos de herramientas avanzadas:

1 Texto para botones inferiores.- tecleando un texto en el campo, podemos buscar dentro del contenido del _id, resumen, descomposiciones, gráficos...

2 Búsqueda manual.- admite una sentencia de búsqueda find() completa de MongoDB, o una búsqueda reducida de Ingrid. Vea posibilidades y ejemplos en Anexo sintaxis de búsqueda mongoDB y reducida.

Se admiten condiciones como campo=valor, por ejemplo cla=car separados por espacios en blanco para unir varias condiciones como AND. También se admite el símbolo cla== para indicar que es "una clase o algunas de sus subclases". La existencia de un campo con información se hace con la sintaxis <campo>!! y la negación de existencia <campo>!

Con una selección de conceptos, se pueden utilizar los botones de edición inferiores para realizar operaciones masivas contra la BD (del orden de cientos de miles de registros tratados instantáneamente o en segundos).

ATENCIÓN: los botones actúan sobre toda la lista de elementos buscados, no sobre los visibles o los seleccionados en la columna del menú contextual.

Se pueden:

1. Eliminar documentos

2. Cambiar valor campo masivamente mediante expresiones regulares (por ejemplo poniendo res= d.res+" "+i, modificará los resúmenes de todos los documentos buscados, poniendo el resumen de cada documento (d) y el número de orden de la línea (i) en base cero. Con la letra 'p' y un espacio en blanco delante de la expresión, se PRUEBA el resultado indicando qué cambios se harían.

Atención, una particularidad es que al cambiar campos de campos de tipo objeto, por ejemplo, si en un documento tenemos:
{
"_id":"binequ.P1.A01.A",
"cla":"binequ",
"cod":"P1.A01.A",
"res":"08-046",
"lecs":{"20150630":9.2,"20150701":10.92}
}

y queremos eliminar de muchos conceptos los registros de la fecha 20150630, no debemos hacerlo poniendo lecs[20150630]=null sino lecs.20150630=null. Ingrid ya envuelve los campos que ponemos en el diálogo para que sea "lecs.20150630"=null.

IMPORTANTE: También sirve para recodificar conceptos cambiando el campo _id (con lo que cambiarán automáticamente los campos cla y cod). Esta es la operación más compleja y pesada de cambiar porque mongoDB no permite cambiar identificadores, sino que hay que hacer por cada cambio una copia completa de todo el concepto y todas sus referencias y eliminar el antiguo. Además hay que buscar todas las referencias que apuntaban a ese _id y cambiarlas también. 

Otra herramienta para modificar varias es multi-seleccionar unas líneas y seleccionando el campo de edición de una de ellas, cambiar el valor

3. Cambiar código de campo, cambiándolo en todos los documentos que hagan referencia a él.

4. Recodificar conceptos, para completarlos con ceros por la izquierda y hacerlos uniformes en tamaño.

 

Al realizar una búsqueda, se muestra sobre la lista de resultados, la sintaxis del find() que se hace contra la base MongoDB. Esto nos sirve para ver algún problema con lo que creemos que estamos buscando o para copiar la sentencia y modificarla.

Con el botón de la esquina sup. derecha del panel resultados de búsqueda, se puede llevar la lista seleccionada de conceptos a la página de la carpeta raíz de la BD, creando un concepto temporal de clase Búsqueda.

Persiana Preferencias

Permite establecer para el navegador actual en la máquina actual, preferencias de visualización (tamaño de fuentes, eliminar o aumentar márgenes y separaciones, etc.).

También se puede elegir el Lenguaje en que se muestran los rótulos de la aplicación y textos de los informes. Los administradores pueden editar cada archivo de lenguaje que se encuentra en \ingrid\js.lengua\lenguaje.js y traducen todos los textos envueltos dentro del código con la función T()

Administradores: tienen opciones de depuración y funciones para trazar el cliente, el servidor, limpiar o ver la memoria de un cliente y otros.

Persiana Base (admin)

Tiene sub-persianas que configuran diversos conjuntos de parámetros de la base actual y de diversas clases:

 

Persiana General

Son características generales y variables globales de la base, conmutadores para cambiar modos de funcionamiento, y botones para funciones que afectan a toda la BD, o quitar el acceso en toda la base a características como mapas, gráficos, ámbitos.

Restricciones, los 2 conmutadores evitan las gestión de cierta información en las búsquedas, filtros, etc., si en nuestra base no los usamos:

- Sin Gráficos, Sin Mapas, ocultan esas persianas de datos en todos los conceptos, incluso aunque tengan datos. Esta gestión se puede detallar por cada clase en los campos CONGRA y CONMAP,

Servicios opcionales:

- Con Ámbitos, incluye en las búsquedas automáticamente la condición de que ámbito sea el del usuario actual. Esto penaliza algo las búsquedas grandes y/o complejas.

- Con Fechas, graba en cada concepto al fecha de creación, y modificación cuando algún dato cambia.

Botones opcionales: si los activamos, muestran en la zona superior derecha de la página en todo momento (junto al botón de Edición) botones que dan acceso a funcionalidades especiales:

- Lector de códigos de QR, sólo en dispositivos móviles Android, y teniendo instalado de forma complementaria la app de lectura de códigos de barras Zxing, permite al pulsar el botón, activar el lector y al aplicarlo sobre un código, ir directamente a la página de BD con ese código, con lo que es un acceso directo a los datos de inventario y de todo el mantenimiento, si tenemos nuestro inventario codificado con etiquetas QR.

- Búsqueda por GPS, en dispositivos móviles con GPS o simulación de ubicación mediante datos o wifi, es un acceso rápido a la página de inventario más cercana a la ubicación actual.

- Encriptación, permite al cliente final establecer una contraseña para codificar con encriptación estándar de alta seguridad AES256, los campos que desee de la BD, teniendo en cuenta además que la clave se introduce en el cliente, nunca se envía al servidor y no la conoce más que el cliente. ATENCIÓN esto tiene el peligro de que si se pierde la clave, no hay forma alguna de recuperar los datos encriptados. El resto de la base no encriptada no se vería afectada.

El botón, si se activa la funcionalidad, aparece en color azul hasta que se introduce la contraseña adecuada en la persiana: Base > Encriptación. Entonces para a color rojo, mostrando los datos encriptados y haciendo que se encripten todos los introducidos en campos con el modificador E(encriptado).

- de usuarios. Sirven sólo al administrador, para mostrar en al primera página de la BD un botón por cada perfil de usuario con el primer usuario encontrado, de forma que se puedan hacer fácilmente pruebas de permisos y cambiar entre usuarios con un solo clic.

 

Con gestión de eliminados (campo FECELI de los conceptos) está separada de la opción de Fechas automáticas de creación, y modificación, porque sobrecarga bastante cualquier búsqueda, ya que la aplicación añade condiciones para no mostrar los eliminados en las búsquedas que no lo exijan. Por defecto está desactivada. Las condiciones que Ingrid pone a las búsquedas para filtrar por ámbitos, sólo penalizan a los usuarios que tiene ámbitos, no a todos.

Campos de Decimales: los 3 campos definen la visualización en los campos con formateo de tipo c, p, i

Por último 2 botones de Procedimientos sólo para perfil administrador, que permiten:

- Chequear la integridad de de BD, comprueba integridad de clases, crea, elimina y modifica los campos de clases que hayan cambiado con respecto a la versión actual de Ingrid. Si se pulsa manteniendo la tecla CONTROL pulsada, también cuenta documentos de todas las clases.

- Cuenta referencias, comprueba en todos los conceptos el campos indizado de uso interno refl, que mantiene los identificadores a todos los conceptos relacionados en listas, campos, gráficos..., es decir el mapa de referencias entre conceptos. Se cuentan las referencias en el campo refn, y graba el docn en  todos menos en clases y búsquedas, que sería muy lento en algunas bases. Pulsando el botón con CONTROL, se crean los conceptos referenciados inexistentes y con MAYÚSCULAS; se eliminan las referencias no existentes.

 

Persiana Índice de texto (sólo para administradores y expertos)

Define que se haga un índice de BD para búsquedas en lenguaje natural. Al especificar un conjunto de campos en Campos a indizar y peso, aparece en la esquina superior derecha de las páginas un control para introducir las palabras a buscar.

La herramienta de indización admite una lista de campos procedentes del conjunto de todas las clases de la BD.

Se aplica a los textos recopilados las siguientes reglas:
- Se monta el campo de texto para buscar y el índice de texto completo con los campos res (resumen), tex (texto), y todos los res de todos los campos referencias (en el campo refl).
- Da un peso a cada campo de BD para todos los registros (config. por administradores en el campo de Base > Base > Índice de texto), con una definición como:
{"res":10,"tex":3,"otrden":1,"dirsit":1}
divide el valor obtenido de multiplicar el nº de términos coincidentes por su peso, entre el nº de términos en cada campo.
- Ignora diacríticos ("stop-words" de cada lenguaje como preposiciones, conjunciones...) e ignora diferencia entre mayúsculas/minúsculas
- No filtra clases, salen todas
- Muestra los 20 primeros resultados de la búsqueda (configurable en aplicación).
- La implementación de índices de texto de la versión 3.2 de mongoDB (jul-2016), soporta 19 idiomas.

 

Persiana Encriptación (si está activa en la persiana General)

Permite introducir la clave de encriptación de campos protegidos, si se introduce correctamente, permite visualizar los datos que se han introducido en los campos que consideramos sensibles, marcados como encriptados. En caso de no introducir la clave, se puede acceder a toda la base, pero no visualizar los datos (ni siquiera a bajo nivel, directamente recuperando la información de la BD mongoDb).

Con la clave activa, el icono cambia a color naranja de edición, y se puede ver y editar el contenido de los campos encriptados.

 

Persiana Procedimientos (si en la BD existe la clase)

En los campos de clase, bajo la persiana Presentación, se muestra otra de campos comunes a todos los procedimientos de la base:

Tema de color permite seleccionar de entre una lista un tema para aplicar a encabezados, celdas, etc. donde se utilice la cabecera de informes estándar.

Icono principal y secundario,, admiten nombres clave para poner los iconos especiales de "Ingra" e "Ingrid", o un nombre de archivo relativo al directorio \ima del proyecto para poner un logotipo en los informes a izquierda y derecha de la cabecera.

 

Persiana Gráficos (si en la BD existe la clase)

En los campos de clase, bajo la persiana Presentación, se muestra otra de datos de configuración comunes a todos los gráficos de la base:

Al insertar un gráfico (bien con el botón del panel gráfico de cualquier concepto, o bien arrastrándolo sobre el panel gráfico), si el archivo es una imagen y supera la Dimensión máxima de alta, se copia la imagen en el directorio \original de la BD, y se crea una versión en el directorio \alta con el límite impuesto (limita ancho o alto en pixeles). Sino, el original insertado tiene un tamaño razonable para trabajar con él y es el que se copia en el directorio \alta.

Además al insertar una imagen en BD siempre se genera una versión en el directorio \media y otra en \baja (diapositiva) con los tamaños impuestos en los otros campos: Media Resolución y Baja resolución. Si no se especifican tamaños, los valores de defecto son 256 y 86 pixeles, respectivamente.

 

Además se puede establecer un límite de Tamaño máximo de archivos en MB para cualquier tipo de archivo (esta limitación también se aplica a los arrastrados a concepto Directorio), y concretamente otro Tamaño máximo imágenes JPG, que se aplica sólo a estos archivos.

Una última opción, indica si en el panel de Gráficos se Presenta inicialmente la imagen de media de la primera imagen, sin tener que seleccionar la diapositiva.

 

 

Persiana Mapas (si en la BD existe la clase)

Incluye variables globales a toda la base para la configuración del uso de espacios en el mapa, como el EPSG o sistema de referencia que se aplica a todas las georreferencias de la BD. Aquí están los CRS habituales:

EETRS89 / UTM zone 29N [ projected ] [ EPSG:25829 ]

ETRS89 / UTM zone 30N [ projected ] [ EPSG:25830 ]

ETRS89 / UTM zone 31N [ projected ] [ EPSG:25831 ]

ETRS89 [ geographic 2D ] [ EPSG:4258 ]

EED50 / UTM zone 29N [ projected ] [ EPSG:23029 ]

ED50 / UTM zone 30N [ projected ] [ EPSG:23030 ]

ED50 / UTM zone 31N [ projected ] [ EPSG:23031 ]

ED50 [ geographic 2D ] [ EPSG:4230 ] Antiguo European Datum de 1950, ya obsoleto

WGS 84 / UTM zone 29N [ projected ] [ EPSG:32629 ]

WGS 84 / UTM zone 30N [ projected ] [ EPSG:32630 ]

WGS 84 / UTM zone 31N [ projected ] [ EPSG:32631 ]

WGS 84 [ geographic 2D ] [ EPSG:4326 ] Sistema Mundial para dispositivos GPS

 

Como resumen de información de sistemas de referencia y Datum:

- ETRS89 es el sistema de referencia geodésico oficial de España, precisiones mucho más elevadas que WGS84
- WGS84 es en el que funcionan los satélites GPS
- ED50 S&P, antiguo, sistema oficial y en el que están la mayor parte de los mapas de España

Diferencia entre ETRS89 y WGS84 en coordenadas geográficas: 0.1mm

Diferencia entre ETRS89 y ED50 S&P y en UTM 30 entre 220m y 240m según la zona de España

Dentro de la zona UTM30, las diferencias son menores a 1mm. Fuera de la zona 30 (zonas 29 y 31), las diferencias no llegan a los 10cm

En los polos y el ecuador no hay ninguna diferencia entre WGS84 y ETRS89

Para buscar la zona UTM adecuada, tenemos esta tabla:

zonas UTM

Y en la página Códigos EPSG de Sistemas de Referencia de la web de la Junta de Andalucía, tenemos la relación detallada de los más utilizados en España.

Los campos Zum mínimo y Zum máximo por defecto, permiten que las coberturas de mapas no muestren errores al intentar profundizar demasiado o que se muestra la primera vista demasiado "lejos".

Filtro para búsqueda por GPS, permite definir una búsqueda de conceptos sobre los que buscar geográficamente el más cercano cuando se pulsa el botón de "Busca cercano", sino se buscará innecesariamente por todos los conceptos de BD,

Clave de Google Maps y Clave de Microsoft Bing, admiten sendas clases, si se está registrado y se ha pagado (a ene-2019 las de Bing aún son gratuitas para desarrolladores), para poder utilizar en la navegación de mapas. Cuando se accede al servicio sin ellas, la cobertura de fondo no funciona o bien se muestra recortada como "versión sin clave"

El Sufijo búsqueda de direcciones especifica el ámbito del campo Búsqueda que hay en la barra de herramientas de la Persiana Georreferencias, donde podemos poner la dirección de una calle, que se buscará mediante un o de los servicios disponibles con el sufijo que se ponga aquí, por ejemplo "Madrid, España".

Tamaño de volcado html en px, especifica en puntos el ancho de ventana que se va a utilizar (por defecto el 100%) para algunos informes de mapas

 

Persiana Operaciones

Tiene un conmutador para seleccionar si que quiere que las tareas de todas las operaciones se organicen por espacios.

 

Persiana Bancos (si en la BD existe la clase)

Banco para redondeos, permite especificar el que se usará y además rotula el especificado. Estos redondeos se pueden producir en un ajuste de línea de detalle calculado automáticamente, por ejemplo al crear una factura recibida a partir de un importe y un IVA, y que calcula el importe neto. Este número puede no ser representable exactamente y daría un céntimo de redondeo, que se acumularía en el banco especificado.

Chequea saldos: Al visualizar los datos de un banco (mes o año), calcula los el importe desde el saldo del periodo anterior

Chequea pagos: examina y corrige la relación entre conciliaciones de los movimientos con movimientos de otros bancos y con cobros/pagos de documentos factura (emitidas y recibidas):
 - Si hay una referencia a una línea de otro banco y en aquella no hay referencia a ninguna, y los importes coinciden, se repara la otra línea de banco apuntando a la actual. Si está apuntando a otra línea de banco, se elimina la relación en el movimiento del banco actual.

 - Si hay referencia a un pago/cobro en una factura, coinciden en importe y la línea de pago no apunta a ningún movimiento, se corrige poniendo en la línea de documento el actual. Si el movimiento apunta a otro movimiento, se elimina la relación en el actual (queda pendiente de conciliar).

 

Persiana Asientos contables (si en la BD existe la clase)

Chequea asientos, comprueba los creados que tienen asientos sin importe y los cuelga de una carpeta car..err para poder ir recorriéndolos y corregirlos.

 

Persiana Documentos (si en la BD existe la clase)

Entidad de defecto y Recurso de defecto, permite establecer ambos (y los rotula cuando se ha especificado), para usarlos cuando se crean documentos automáticos. La entidad es la que emite y recibe documentos y el recurso se usa para redondeos, etc.

Chequea documentos comprueba y corrige la consistencia, es decir, que sus listas de pagos (campo pagl) tengan correspondencia en líneas de bancos (banlin). Si alguno no la tiene, se elimina la conciliación del pago, con lo que el documento queda abierto y podemos localizarlo con las auditorías para corregirlo.

 

 

----------------------------------------------------------------------------------------------------------------------------------------------------------------

Las 3 persianas siguientes, muestran datos de la BD ingrid-comun:

Persiana Clases C(omunes) (admin y expertos)

Vea el tema Cabecera de base: Persiana Comun

Persiana Búsquedas C(omunes)

Estructura de árbol de conceptos desde la carpeta car.bus.comun de la BD ingrid-comun. Permite navegar por esa estructura en todas las bases, como si los procedimientos y conceptos de búsqueda fueran de la base actual, y se ejecutan contra los datos de la base actual. 

Persiana Procedimientos C(omunes) (admin y expertos)

Similar a la anterior, pero mostrando los procedimientos de la carpeta car.pro.comun de la base ingrid-comun, que en su mayoría son funciones administrativas de tratamiento de gráficos, mapas, importaciones y exportaciones...

Persiana Base (admin)

Sólo si el administrador marca además el botón Admin de la zona superior derecha de cualquier página, se muestra esta persiana en color NARANJA con la características de la clase ficticia Conceptos o clase base de la aplicación, con los campos más comunes.

Definiciones de campos y eventos

permite modificar en parte la definición de los campos de los documentos clase, cuya estructura y códigos son fijos en Ingrid, pero se pueden cambiar los nombres de los campos, o su posición, por ejemplo. También están los campos de conceptos de la clase base (.), que son los que todas las clases de conceptos heredan. Estas dos definiciones, no se modifican casi nunca.

Gráficos

Definición de campos de la lista de gráficos (gral) que cualquier concepto puede tener en BD (por defecto, ningún campo).

JSON

Código JSON en el motor de BD para la definición del concepto raíz: campos y eventos generales, parámetros generales de la persiana Base, etc.

Persiana Bases (sólo admin del motor de BD)

Permite administrar el motor de BD del cluster en que se encuentra la BD abierta actualmente.

Ver el tema Base: Persiana Bases