Saltar a contenido

RUNBOOK — job-reporte-ejecutivo-ventas

Dato L04 reporte_ejecutivo_ventas L05 read_sharepoint_ventas_proyectadas
Programacion 15 8 * * * 0 19 * * * (tentativo)
Comando .venv/bin/python -m reporte_ejecutivo_ventas reporte .venv/bin/python -m reporte_ejecutivo_ventas proyectadas
Auditoria (ATHENAS.ods.tbl_control_procesos) ID08 - PY_LINUX_Reporte_Ejecutivo_Ventas ID08 - PY_LINUX_Read_Sharepoint
Logs /var/log/dabra/reporte_ejecutivo_ventas/ /var/log/dabra/read_sharepoint_ventas_proyectadas/
Datos /var/lib/dabra/reporte_ejecutivo_ventas/output/reporte_ventas.html no deja archivos

Duracion esperada: sin medir (el original no registra tiempos utiles). Timeouts propuestos: 20 y 15 min. Auditoria de 7 columnas; estados Success / Error.

Codigo Significado Accion
0 Todo bien —
1 Fallo SP/consulta/SharePoint/carga/envio, o no se pudo auditar Ver log y correo "ERROR"; reejecutar
2 Configuracion invalida (falta una variable) Revisar .env

Comandos

python -m reporte_ejecutivo_ventas reporte --dry-run                        # NO ejecuta el SP, lee las tablas tal como estan, deja el HTML en output/; no envia ni audita
python -m reporte_ejecutivo_ventas reporte --destinatarios <correo>   # envia SOLO a esa direccion (prueba real)
python -m reporte_ejecutivo_ventas reporte                                  # produccion: a REPORTE_EJECUTIVO_TO (una vez al dia)
python -m reporte_ejecutivo_ventas reporte --force                          # reenvia aunque hoy ya se haya enviado
python -m reporte_ejecutivo_ventas proyectadas --dry-run                    # lee y valida los Excel; no carga ni ejecuta el SP
python -m reporte_ejecutivo_ventas proyectadas                              # produccion
python -m reporte_ejecutivo_ventas proyectadas --recrear-staging            # si cambiaron las columnas de la tabla de staging

Reproceso

  • L05 es idempotente: vacia y recarga el staging y re-ejecuta el SP. Seguro de repetir.
  • L04 no envia dos veces el mismo dia: tras un envio correcto deja state/enviado_AAAA-MM-DD.json. Una segunda corrida sale con 0 y escribe el WARNING Reporte YA ENVIADO hoy ... (se ve en el log y en el panel), sin ejecutar el SP, enviar ni auditar. Si el envio fallo no hay marca y se puede reintentar normalmente. Para reenviar a proposito: --force (manda otro correo a toda la direccion). Para probar: --dry-run o --destinatarios, que ignoran la marca.
  • L05 debe haber corrido bien antes que L04 del dia siguiente (el SP de L04 usa las proyecciones).

Rollback

No hay. Un reporte mal enviado se corrige reenviando; el staging se corrige recargando.

Problemas conocidos

  • Si una de las tres tablas del reporte esta vacia, no se envia nada (como el original) y se avisa a ESTRATEGIA_ERROR_TO.
  • Si L05 no encuentra .xlsx termina Success con 0 registros (como el original) y deja un WARNING "0 registros"; no envia correo.
  • Si cambia el formato de un Excel (menos de 6 columnas) L05 falla con un mensaje claro; el original asignaba mal los nombres sin avisar.

Fuente: repositorio job-reporte-ejecutivo-ventas, versión c490d87. Página generada con tools/publicar_docs.py.