Manual de instalación de Viafirma Documents

Configurar un informe

Para añadir un informe hay que añadir una subcarpeta en la carpeta documents-home/reports/{codigo_grupo} (en la ruta documents-home/reports/admin contienen los informes para administradores) que contenga un JSON con el nombre {informe}.json que contenga los siguientes campos :

{
"code": "{si se indica debe coincidir con el nombre de la subcarpeta}",
"description": "{nombre descriptivo del informe}",
"queryOracle":"SELECT last_update,code,title,user_code,status FROM vd_message_view where last_update BETWEEN TO_DATE('$LASTMONTH', 'DD/MM/YYYY') AND TRUNC(sysdate)",
"queryPostgres":"SELECT last_update,code,title,user_code,status FROM vd_message_view where last_update BETWEEN TO_DATE('$LASTMONTH', 'DD/MM/YYYY') AND current_date",
"columnNames":"Fecha;Título;Usuario;Estado",
"mailTo": "{email a quien se enviará el informe}",
"mailSubject":"{asunto del email}",
"mailBody":"{cuerpo del email}"
}
atributo descripción
code si se indica debe coincidir con el nombre de la subcarpeta; es opcional
description nombre descriptivo del informe; es opcional
queryOracle query oracle
queryPostgres query postgres
columnNames Fecha;Título;Usuario;Estado; es opcional
mailTo email a quien se enviará el informe; permite varias direcciones separadas por coma; es opcional
mailSubject asunto del email; es opcional si no se indica ningún destinatario
mailBody cuerpo del email; es opcional si no se indica ningún destinatario
showGraph indica si se muestra o no un gráfico con los resultados en el email true/false; es opcional
showTable indica si se muestra o no una tabla con los resultados en el email true/false; es opcional

Para las querys tenemos disponibles las variables $LASTDAY$,$LASTMONTH$,$LASTYEAR$ (se corresponden con ayer, el mes pasado y el año pasado) y otras variables como: $FIRSTDAYMONTH, $LASTDAYMONTH$, $FIRSTDAYPREVIOUSMONTH$, $LASTDAYPREVIOUSMONTH$, $FIRSTDAYYEAR$, $TODAY$

Los informes se generan en la misma carpeta donde está configurado el fichero report.json en formato CSV. Si se indica en el json valores para el atributo mailTo se enviará un correo con el informe a la dirección indicada (o direcciones si se indican más de una dirección separada por comas)

En la ruta del grupo o admin tendremos una subcarpeta por cada uno de los códigos que se corresponden con los indicados en el CRON del informe indicado en el fichero config.properties. Ej: Informes diarios (la ruta sería documents-home/reports/{codigo_grupo}/daily)

dailyreportjob.cron=0 15 10 * * ?
dailyreportjob.jobmap=code:daily

Hay unos informes especiales que se pueden generar desde el backend por los administradores o DISPATCHER del grupo si el informe pertenece a su grupo. Para estos informes se pueden usar las variables $START$ y $END$ que serán las fechas indicadas en el formulario de generación del informe. Estos informes estarán bajo la ruta:

documents-home/reports/{codigo_grupo}/generated