Desarrollo de reportes#
La creación de reportes es una funcionalidad que brinda a los clientes de Linkaform una perspectiva visual, resumida y agradable de los datos recopilados de las formas. Un reporte se construye siguiendo un conjunto de estándares y librerías establecidas por Linkaform.
Importante
Tenga en cuenta que el desarrollo de reportes se basa en la información recopilada de las formas (formularios digitales), por lo que es importante comprender su funcionamiento. Consulte el siguiente enlace para revisar la documentación oficial de las Formas .
Antes de comenzar a explicar el desarrollo de reportes, considere los requisitos del perfil técnico para esta tarea. Este perfil debe contar con experiencia básica en:
HTML, CSS, Bootstrap
Git
GitHub
Python
JavaScript
MongoDB
Docker
A lo largo de la documentación, podrá encontrar orientación sobre los aspectos necesarios para la creación de su propio reporte personalizado.
Pasos#
De manera general, los siguientes pasos son los que debe seguir para desarrollar un reporte. Se presentan para que tenga en cuenta que debe seguir un orden cronológico tanto en el desarrollo como si es la primera vez que lee la documentación para desarrollarla. Por favor, continúe leyendo la documentación para obtener información detallada y completa sobre cada uno de estos pasos.
Configure su entorno.
Clone los repositorios necesarios.
Ver también
Consulte Configuración del entorno y revise los repositorios correspondientes.
Desarrolle su reporte de demostración.
Ver también
Consulte Creación de Demo .
Configure su reporte en la aplicación web de Linkaform.
Ver también
Revise las Bases de Linkaform para cualquier configuración del reporte.
Desarrolle el script necesario para las consultas.
Ver también
Revise el proceso para la Creación de Scripts .
Cargue el script en la aplicación web de Linkaform.
Ver también
Revise las Bases de Linkaform para cualquier configuración del reporte.
Configuración del entorno#
Para comenzar el desarrollo de reportes en Linkaform, es importante asegurarse de que su entorno de trabajo esté correctamente configurado. A continuación, encontrará la documentación oficial de las herramientas necesarias para configurar su entorno:
Si no cuenta con experiencia en Mongodb revise el curso de MongoDB University y posteriormente, continue con el curso de MongoDB con Python .
También se sugiere revisar la documentación oficial de Docker e instalar la herramienta según sea necesario. Además, revise e instale Docker compose .
Ahora, clone los repositorios necesarios para el desarrollo de reportes. Linkaform tiene repositorios específicos en GitHub y GitLab. Siga los pasos a continuación:
Truco
Se recomienda crear una carpeta que contenga los repositorios necesarios. En este caso, la carpeta lkf
contendrá los repositorios Servido
e infosync_scripts
.
Repositorio servido#
Solicite acceso al repositorio de
Servido
en GitHub a través del soporte técnico.Ingrese al siguiente enlace servido y clone el repositorio.
1git@github.com:linkaform/servido.git
Abra una terminal y navegue al directorio del repositorio de
Servido
ydocker
, por ejemplo:
1cd lkf/servido/docker
Nota
En este caso, tenga en cuenta que el repositorio de Servido
está dentro de otra carpeta llamada lkf
.
Ejecute el siguiente comando para correr
Servido
localmente:
1docker-compose up -d
En caso de contar con una versión actualizada de Docker:
1docker compose up -d
Compruebe que
Servido
esté en ejecución accediendo a:
1http://127.0.0.1:5000
1http://127.0.0.1:8011/
Nota
Consulte el archivo reedme.md
del repositorio para más información.
Repositorio infosync_scripts#
Solicite acceso al repositorio de
infosync_scripts
en GitLab a través del soporte técnico.Ingrese al repositorio y clone el repositorio.
Nota
Consulte el archivo reedme.md
del repositorio para más información.
Bases de Servido#
Servido
es una plataforma Open Source que facilita el desarrollo de reportes mediante el uso de diversas herramientas, como bibliotecas, scripts y APIs. Estas herramientas se utilizan para procesar información y generar resultados que se presentan a través de dashboards, tablas, gráficos y otras representaciones visuales.
Atención
Considere que los repositorios de Servido
e infosync_scripts
están contenidas en la carpeta lkf
.
Las dos partes principales que complementan a Servido
son las siguientes:
├── infosync_scripts
│ ├── Nombre_carpeta
│ │ ├── reporte_nombre.py
└── servido
├── apps
│ ├── frecuencias
│ │ ├── reporte_auditorias_data.js
│ │ ├── reporte_auditorias.html
│ │ ├── reporte_auditorias.js
│ │ └── style.css
│ ├── rh
│ ├── encuestas
├── docker
├── Dockerfile
├── libs
│ └── tabulator
│ ├── css
│ └── js
├── README.md
La carpeta Apps
contenida en el repositorio de Servido
alberga la totalidad del front-end (HTML, CSS, JavaScript vanilla y jQuery) del reporte.
Nota
En servido, los archivos se almacenan en carpetas correspondientes al tipo de reporte que desea generar.
Por ejemplo, en la carpeta
frecuencias
se encuentran archivos de reportes que muestran frecuencias de alguna actividad u otro contenido específico.En la carpeta
rh
se encuentran reportes como facturación, desempeño jornal, etc.
Ajuste o cree una carpeta descriptiva y lógica según lo requiera.
Cada reporte debe estar constituida por los siguientes archivos:
style.css: Contiene estilos generales del reporte (un archivo por carpeta).
reporte_nombre.html: Contiene la estructura del reporte.
reporte_nombre.js: Contiene la lógica encargada de gestionar las solicitudes a la API, así como de procesar y presentar la información correspondiente en la estructura establecida.
reporte_nombre_data.js: Contiene configuraciones de librerías que se utilizan.
Ver también
Consulte la siguiente sección para obtener información detallada sobre la Estructura de archivos que conforman a Servido.
El contenido sobre scripts, ubicado en el repositorio infosync_scripts
, contiene información correspondiente al backend del reporte. Cada carpeta alberga scripts utilizados por los clientes.
Si necesita crear un nuevo script para su reporte, siga el siguiente estándar de nomenclatura:
1reporte_nombre_script.py
Prudencia
Bajo ninguna circunstancia modifique los archivos que NO inicien con reporte
o report
. Estos archivos son scripts que desempeñan funciones importantes para el cliente, aunque no estén directamente relacionados con reportes.
Importante
Tenga cuidado con el Archivo account settings , ya que contiene información sensible de la cuenta del cliente.
├── infosync_scripts
│ ├── Nombre_carpeta
│ │ ├── reporte_nombre.py
└── servido
├── apps
│ ├── Nombre_carpeta
│ │ ├── reporte_nombre_data.js
│ │ ├── reporte_nombre.html
│ │ ├── reporte_nombre.js
│ │ └── style.css
├── docker
├── Dockerfile
├── libs
│ └── tabulator
│ ├── css
│ └── js
├── README.md
URLs de acceso#
Una vez que haya configurado su entorno y desarrollado un reporte, es importante que comprenda las diversas formas de acceder a los reportes en Linkaform. La accesibilidad a los reportes se facilita mediante URLs
específicas, brindando opciones como la visualización local con datos demo, la integración de un script, el acceso a través de servido y la posibilidad de trabajar en un entorno de prueba.
Nota
Asegúrese de ejecutar previamente su contenedor Docker e ingresar al enlace según lo requiera.
Local con datos demo#
Si desea obtener una vista previa del reporte antes de realizar la integración completa del script, considere y modifique la siguiente URL:
1http://127.0.0.1:8011/nombre_carpeta/reporte_nombre.html
Al modificar esta URL
según su estructura de carpetas y el nombre del reporte específico, podrá visualizar una versión demo del reporte.
Local con script integrado#
Esta opción le brinda la posibilidad de integrar el script directamente en la URL
, indicando al reporte qué script debe utilizar para realizar las consultas necesarias.
1http://127.0.0.1:8011/nombre_carpeta/reporte_nombre.html?script_id=123456
Simplemente, añada el parámetro script_id
a la URL
seguido del valor correspondiente al script. Esto le indicará al script de JavaScript a dónde debe realizar la petición.
Ver también
Consulte Ver ID del script o Creación de Scripts .
Servido#
Al acceder a través de Servido
, se solicitarán credenciales de autenticación debido a que la cookie utilizada para la autenticación no es encontrada. Este proceso difiere de iniciar sesión en Linkaform y abrir reportes desde allí, donde la autenticación se realiza de manera automática gracias a las cookies.
1https://srv.linkaform.com/nombre_carpeta/reporte_nombre.html?script_id=123456
Nota
El usuario (correo) y la contraseña son los que se utilizan en producción.
Entorno de prueba (Test Environment)#
Si necesita acceder al entorno de prueba del reporte, asigne el argumento &env=test
a la URL
. Este método es útil en caso de que no cuente con la contraseña de producción.
Básicamente, se genera una cookie de autenticación para realizar la petición en el entorno de preproducción, facilitando el desarrollo en un entorno controlado antes de realizar peticiones a producción.
Una vez dentro del entorno de prueba, puede continuar sin la necesidad de incluir &env=test
en futuras peticiones a producción. La contraseña de preproducción actúa como una llave que puede utilizar en cualquier reporte que desarrolle y desee emplear en el entorno de preproducción.
1http://127.0.0.1:8011/nombre_carpeta/reporte_nombre.html?script_id=123456&env=test
Nota
En caso de no contar con las credenciales necesarias de preproducción, solicítelas a soporte técnico.
Prudencia
Si está siguiendo cronológicamente la documentación y encuentra algunas partes confusas en relación con la configuración, específicamente las URLs de acceso
, no se preocupe. Durante el desarrollo de su reporte personalizado, estas partes cobrarán más sentido con el tiempo. Por favor, sea paciente, continúe leyendo y considere toda la información proporcionada.