Ejemplos de informes

De SinergiaCRM
Saltar a: navegación, buscar


Representación de franjas de edad de personas y franjas de fecha

Es posible mostrar datos numéricos organizados en franjas o tramos, lo que puede ser útil, por ejemplo, para mostrar un informe de franjas de edad.

Para ello, en la definición del informe debemos incluir el campo Edad y ponerle un nombre en la columna Guardar. En este ejemplo le hemos puesto el mismo nombre, edad, que posteriormente usaremos en la columna Fórmula.

RTENOTITLE

A continuación es necesario incluir en el cuadro de edición de Fórmula la función que sustituirá cada edad concreta por el tramo al que pertenece.

RTENOTITLE

El código de la función sería el siguiente:

({edad} > 0 && {edad} < 18 ? 'Entre 0 y 18':
({edad} >= 18 && {edad} <= 25 ? 'Entre 18 y 25':
({edad} >= 26 && {edad} <= 30 ? 'Entre 26 y 30':
({edad} >= 31 && {edad} <= 40 ? 'Entre 31 y 40':
({edad} >= 41 && {edad} <= 50 ? 'Entre 41 y 50':
({edad} >= 51 && {edad} <= 60 ? 'Entre 51 y 60':
({edad} >= 61 && {edad} <= 70 ? 'Entre 61 y 70':
({edad} > 71  ? 'Mas de 70':
'ND'
))))))))

Lógicamente, este código puede ser modificado para adaptarlo a las necesidades concretas del caso. En caso de modificar la función es importante tener especial cuidado con el número de paréntesis de apertura y de cierre, que debe ser exactamente el mismo.

Para el caso de las franjas de fecha, la lógica sería la misma, pero, en este caso, la formula se añadirá en una columna de "Valor Fijo". Esta columna se añade utilizando el botón "Añadir valor fijo".

Informa Franjas Fecha.png

Y el codigo sería como éste:

({data} >= '2018-01-01' && {data} < '2018-03-31' ? '1r Trimestre': 
({data} >= '2018-04-01' && {data} < '2018-06-30' ? '2n Trimestre': 
({data} >= '2018-07-01' && {data} < '2018-09-30' ? '3r Trimestre': 
({data} >= '2018-10-01' && {data} < '2019-01-01' ? '4t Trimestre': 
({data} >= '2019-01-01' ? 'Any 2019': 'Anys anteriors' )))))

Hay que tener en cuenta el formato de la fecha (AAAA-MM-DD), el número de parentesis de cierre y todos los demás símbolos.

Uso combinado de filtros con condiciones AND y OR

En algunas ocasiones se desea construir un informe basado en una estructura condicional del tipo: todos los registros que cumplan X y que al mismo tiempo cumplan Y o Z.

Un ejemplo concreto sería obtener un informe con un listado de socios activos en una fecha determinada, el 1 de enero de 2015. Para ello deberían cumplirse tres condiciones vinculadas al módulo Relaciones Personas: que el Tipo de relación sea igual a Socio, que la Fecha de alta sea anterior a la fecha deseada y que la Fecha de baja esté vacía o sea posterior a la fecha deseada.

Si no fuera por esta última condición, los filtros podrían establecerse por el procedimiento estándar descrito en [[Informes#Creaci.C3.B3n_de_los_filtros|Creación de los filtros], en el que todas las condiciones se aplican mediante operadores AND, es decir, que todas las condiciones deben cumplirse simultáneamente. Sin embargo, para una combinación de filtros como la indicada en este ejemplo, una de las tres condiciones puede cumplirse de dos formas distintas, por lo que es necesario mezclar operadores AND y OR, para combinar simultaneidad y opcionalidad. Veamos cómo.

Las condiciones a aplicar son:

(Tipo de relación = Socio) AND (Fecha de alta < 01/01/2015) AND ((Fecha de baja NO existe) OR (Fecha de baja > 01/01/2015))

Es decir, hay tres condiciones a cumplir simultáneamente (AND), una de las cuales (Fecha de baja) puede cumplirse de dos formas distintas (OR). Para obtenerlo en el informe hay que hacer lo siguiente:

1) Añadir las dos primeras condiciones (Tipo de relación y Fecha de alta) según el procedimiento habitual. En Seleccionar condición hay que indicar AND (de hecho, es la opción por defecto), tal y como se muestra en la figura (marca roja).


Informes-filtro-and-or-1.jpg

Nota: Al definir los filtros se sugiere que se permita la modificación de los valores de filtrado en tiempo de ejecución del informe (ver marca azul en la captura anterior), de forma que el usuario pueda probar diferentes combinaciones en vivo sin tener que editar el informe.


2) A continuación es necesario evaluar la tercera condición, que hace AND con las dos anteriores, pero que internamente es una OR. Para ello, en la parte superior de la pestaña Seleccionar debe pulsarse el botón Añadir para incorporar un nuevo conjunto de condiciones (colgará de root, el conjunto por defecto usado en el punto anterior) y darle un nombre cualquiera (en el ejemplo, Baja 2015). Al hacer clic en este nuevo elemento, la parte inferior "se vacía", es decir, permite indicar nuevos filtros. En este caso se definirán dos filtros sobre el mismo campo (Fecha de baja) y en Seleccionar condición se indicará OR (será el criterio que se aplicará sobre estos dos filtros). Este segundo paquete de filtros (Baja 2015) se relacionará de forma AND con el primer paquete (root), puesto que el criterio que manda es el que tiene el paquete principal, de modo que se obtiene el resultado deseado. En la siguiente captura están marcados los diferentes elementos de interés comentados.


Informes-filtro-and-or-2.jpg


Puede consultarse más información sobre este tipo de informes en Kinamu Reporter Manual v1.5 part 1.

Otro ejemplo similar puede consultarse en esta entrada de los foros de soporte: Cómo resolver los filtros de un informe


Volver al índice