REPORTE DE PERDIDAS
Fuente: App\Http\Controllers\Cloud\Reports\Perdidas
/var/www/html/qareportes
1) Nombre del reporte
-
Nombre: Reporte de Pérdidas
-
Código/Alias: report_perdidas
-
Responsable: Equipo de Reportes Cloud
-
Propósito:
2) Alcance temporal
-
Campo(s) de fecha utilizados (base):
-
os.ose_fhpreferenciapartida (Fecha de traslado)
-
inc. fhcrea (Fecha creación incidencia)
-
Tipo de rango: Personalizado (entre firstDate y secondDate)
-
Horas: No, se toma en cuenta el rango de fecha.
-
Zona horaria: Lima - Perú
3) Origen de datos (tablas/APIs)
3.1 Terminales
-
Conexión/Base: empresarial
-
Tabla: emp_terminal
-
JOIN: LEFT JOIN emp_ordendeservicio os ON inc.inc_idos = os.ose_id
-
Campos:
-
ter_nombre (Nombre de la terminal)
-
ter_id (ID de la terminal)
-
ter_habilitado (Estado de la terminal)
-
Condiciones: Trae toda la información sin condición
3.2 Incidencias
-
Conexión/Base: empresarial
-
Tabla: emp_incidencias
-
Campos:
-
ose_fhpreferenciapartida (Fecha de traslado)
-
ose_nroguiacliente (Numero de guia)
-
ose_termorigenatencion (Terminal de Origen)
-
ose_termdestinoentrega (terminal de Destino)
-
fhcrea (Fecha Creación Incidencia)
-
inc_descripcion (Descripcion/ subtipo)
-
inc_tipo (Tipo de incidencia)
-
inc_responsable_terminal (Terminal responsable)
-
Condiciones: inc.fhcrea [first_date] BETWEEN [second_date]
3.2 Reclamos
-
Conexión/Base: empresarial
-
Tabla: emp_reclamos
-
Campos:
-
Campo vacío “ ” (Fecha de traslado)
-
rec_numeroguia (Numero de guia)
-
Campo vacío “ ” (Origen)
-
Campo vacío “ ” (Destino)
-
fecharegistro (Fecha Creacion incidencia)
-
PERDIDA (Subtipo)
-
tipo_reclamo (Tipo)
-
Sucursal (Terminal responsable)
-
Condiciones: inc.fecharegistro [first_date] BETWEEN [second_date]
3.3 Orden de servicio
-
Conexión/Base: empresarial
-
Tabla: emp_ordenservicio
-
Campos:
-
ose_id (ID de Guia)
-
ose_termorigenatencion (Terminal Origen)
-
ose_termdestinoentrega (Terminal Destino)
-
ose_fhpreferenciapartida (Fecha Traslado)
-
ose_nroguiacliente (Numero de Guia)
-
Condiciones: No se aplican condiciones
4) Filtros globales del reporte
-
Inclusiones:
-
Exclusiones:
-
Reglas habilitado/estado:
-
inc.rec_numeroguia = “ ” (Obligatorio/ NO NULL)
-
inc.tipo_reclamo = “RECLAMO” (Tipo)
-
Parámetros externos: firstDate, secondDate.
5) Transformaciones y Reglas de negocio
-
Tablas Por meses: concatena el prefijo report_centralizacion_perdidas_ + con el formato “Y-M”
-
Tipo:
-
REVISAR se mostrará como INCIDENCIA
-
COMPENSACIONES se mostrara como COMPENSACION
-
Fechas:
-
fecha_crea_incidencia → [YYYY-MM-DD]
-
fecha_traslado → [YYYY-MM-DD]
-
Terminal:
-
ID terminal Origen → Nombre de Terminal Origen
-
ID terminal Destino → Nombre de Terminal Destino
-
General:
-
fecha_traslado → [YYYY-MM-DD]
-
Estado: status → 1
-
Crea un formato: date[YYYY-MM-DD H:I:S]
6) Estructura de salida
-
Destino: report_centalizacion_perdidas (tabla de reportes)
-
Particionado / sufijo: por mes ($month = Y_m).
-
Escritura: writeReport('report_centalizacion_perdidas',$detail, true, 'fecha', $partition_month)
-
Columnas (nombre → tipo → descripción): No cuenTa con columnas
-
Orden por defecto:
-
inc.fhcrea (fecha de creación de la incidencia) desc
-
inc.fecharegistro ( Fecha de creación de la incidencia) desc
7) Frecuencia y operación
-
Ejecución normal: No tiene método update()
-
Chunking:
-
IDs (n_ids_guias) en bloques de 2000 (array_chunk).
-
-
Reintentos: rename_retries = 4, rename_backoff_ms = 300.
-
UTF-8: force_utf8mb4 = true.
8) Calidad y controles
Controles, filtros o condiciones establecidas
-
Sólo incluye incidencias o reclamos según fecha filtrada
-
Fecha de creación y fecha de registro [$first_date, $second_date]
-
No considera en el reporte registros eliminados
-
Solo se considera los registros con una orden de servicio vinculado
-
Solo se consideran incidencias tipo ["REVISAR","COMPENSACIONES"]
-
Solo consideran reclamos con tipo de reclamos ["RECLAMO”]
-
Se considera las incidencias con tipo de descripción:
-
"ROBO: MERCADERIA ROBADA POR INTERNO",
-
"MERCADERIA EXTRAVIADA.",
-
"MERCADERIA EXTRAVIADA",
-
"FALTANTE INTERNO",
-
"1.4 M. FALTANTE: FALTANTE INTERNO",
-
"1. M. FALTANTE: AUN NO SE SABE DONDE ESTA."
9) Dependencias externas
-
No consume información externa
10) Historial de cambios
2025-09-02 13:06 - Elian Franco Arroyo Rodas - Documentación inicial
No hay comentarios para mostrar
No hay comentarios para mostrar