Archivo:
etl_20260129_212936.log
Modificado:
29/01/2026 21:29:43
Tamaño:
5.7 KB
Líneas:
44 líneas
2026-01-29 21:29:36,644 [INFO] Iniciando proceso ETL...
2026-01-29 21:29:36,644 [INFO] === INICIO ETL ===
2026-01-29 21:29:36,645 [INFO] Paso 1: Extracción de datos
2026-01-29 21:29:36,645 [INFO] Iniciando extracción de cabeceras
2026-01-29 21:29:36,645 [INFO] Extrayendo órdenes desde linux_ordenes...
2026-01-29 21:29:36,645 [INFO] Intentando conectar a SQL Server...
2026-01-29 21:29:37,761 [INFO] Conexión SQL Server exitosa
2026-01-29 21:29:37,762 [INFO] Ejecutando consulta (últimos 30 días desde 2025-12-30): SELECT numero, cliente, vendedor, fecha_entrega, dias_restantes, estatus FROM dbo.linux_ordenes WHERE fecha_entrega >= ?
2026-01-29 21:29:38,204 [INFO] Extraídas 166 órdenes
2026-01-29 21:29:38,204 [INFO] [DEBUG] Columnas ordenes: ['numero', 'cliente', 'vendedor', 'fecha_entrega', 'dias_restantes', 'estatus']
2026-01-29 21:29:38,204 [INFO] [DEBUG] dtypes ordenes: {'numero': dtype('O'), 'cliente': dtype('O'), 'vendedor': dtype('O'), 'fecha_entrega': dtype('O'), 'dias_restantes': dtype('int64'), 'estatus': dtype('O')}
2026-01-29 21:29:38,210 [INFO] [DEBUG] Nulos en fecha_entrega (ordenes) tras limpiar: 0
2026-01-29 21:29:38,306 [INFO] Iniciando extracción de líneas
2026-01-29 21:29:38,307 [INFO] Extrayendo pedidos desde linux_pedidos...
2026-01-29 21:29:38,307 [INFO] Intentando conectar a SQL Server...
2026-01-29 21:29:38,892 [INFO] Conexión SQL Server exitosa
2026-01-29 21:29:38,892 [INFO] Ejecutando consulta (últimos 30 días desde 2025-12-30): SELECT id, orden_id, clave, producto, unidad, cantidad, surtido, liq, saldo, fecha_entrega FROM dbo.linux_pedidos WHERE fecha_entrega >= ?
2026-01-29 21:29:42,072 [INFO] Extraídos 192 pedidos
2026-01-29 21:29:42,073 [INFO] [DEBUG] Columnas pedidos: ['id', 'orden_id', 'clave', 'producto', 'unidad', 'cantidad', 'surtido', 'liq', 'saldo', 'fecha_entrega']
2026-01-29 21:29:42,073 [INFO] [DEBUG] dtypes pedidos: {'id': dtype('O'), 'orden_id': dtype('float64'), 'clave': dtype('O'), 'producto': dtype('O'), 'unidad': dtype('O'), 'cantidad': dtype('int64'), 'surtido': dtype('int64'), 'liq': dtype('int64'), 'saldo': dtype('int64'), 'fecha_entrega': dtype('O')}
2026-01-29 21:29:42,078 [INFO] [DEBUG] Nulos en fecha_entrega (pedidos) tras limpiar: 0
2026-01-29 21:29:42,174 [INFO] Extraídas 192 líneas
2026-01-29 21:29:42,174 [INFO] Extracción completada en 5.53s
2026-01-29 21:29:42,174 [INFO] Paso 2: Transformación de datos
2026-01-29 21:29:42,174 [INFO] Transformando datos de cabeceras
2026-01-29 21:29:42,175 [INFO] [DEBUG] Nulos por columna (cabeceras): {'numero': 0, 'cliente': 0, 'vendedor': 0, 'fecha_entrega': 0, 'dias_restantes': 0, 'estatus': 0}
2026-01-29 21:29:42,181 [INFO] Transformadas 166 cabeceras
2026-01-29 21:29:42,182 [INFO] [DEBUG] Ejemplo cabeceras transformadas (3): [{'id': '6373', 'numero': '6373', 'cliente': 'MUELLER COMERCIAL DE MEXICO', 'vendedor': 'ER', 'fecha_entrega': '2025-12-31', 'estatus': 'pendiente', 'dias_restantes': -29, 'prioridad': 'URGENTE'}, {'id': '7314', 'numero': '7314', 'cliente': 'HUSSMANN CORPORATION', 'vendedor': 'LF', 'fecha_entrega': '2025-12-31', 'estatus': 'completado', 'dias_restantes': -29, 'prioridad': 'URGENTE'}, {'id': '7315', 'numero': '7315', 'cliente': 'HUSSMANN CORPORATION', 'vendedor': 'LF', 'fecha_entrega': '2025-12-31', 'estatus': 'completado', 'dias_restantes': -29, 'prioridad': 'URGENTE'}]
2026-01-29 21:29:42,182 [INFO] Transformando datos de líneas
2026-01-29 21:29:42,183 [INFO] [DEBUG] Nulos por columna (lineas): {'id': 0, 'orden_id': 0, 'clave': 0, 'producto': 0, 'unidad': 0, 'cantidad': 0, 'surtido': 0, 'liq': 0, 'saldo': 0, 'fecha_entrega': 0}
2026-01-29 21:29:42,194 [INFO] Transformadas 192 líneas
2026-01-29 21:29:42,195 [INFO] [DEBUG] Ejemplo líneas transformadas (3): [{'id': '7314_10394', 'ID_UNICO': '7314_10394', 'orden_id': '7314.0', 'clave': '502BL-C24', 'producto': 'ASI 502 RTV SILICON NSF ACETICO NEGRO', 'unidad': 'PIEZA', 'cantidad': 240, 'surtido': 240, 'liq': 240, 'saldo': 0, 'fecha_entrega': '2025-12-31', 'dias_restantes': -29, 'entregado': 1, 'estatus': 'completado', 'fecha_completado': None, 'F_Alta': None, 'remision_producto': None}, {'id': '7315_10396', 'ID_UNICO': '7315_10396', 'orden_id': '7315.0', 'clave': '1100019', 'producto': 'TAPE AVERY ADHESIVE TRANSFER 1 1/2', 'unidad': 'METRO', 'cantidad': 21600, 'surtido': 20000, 'liq': 21600, 'saldo': 1600, 'fecha_entrega': '2025-12-31', 'dias_restantes': -29, 'entregado': 0, 'estatus': 'pendiente', 'fecha_completado': None, 'F_Alta': None, 'remision_producto': None}, {'id': '7315_10396', 'ID_UNICO': '7315_10396', 'orden_id': '7315.0', 'clave': '1100019', 'producto': 'TAPE AVERY ADHESIVE TRANSFER 1 1/2', 'unidad': 'METRO', 'cantidad': 21600, 'surtido': 20000, 'liq': 21600, 'saldo': 1600, 'fecha_entrega': '2025-12-31', 'dias_restantes': -29, 'entregado': 0, 'estatus': 'pendiente', 'fecha_completado': None, 'F_Alta': None, 'remision_producto': None}]
2026-01-29 21:29:42,195 [INFO] Transformación completada en 0.02s
2026-01-29 21:29:42,195 [INFO] Paso 3: Carga de datos
2026-01-29 21:29:42,370 [INFO] Merge de órdenes completado: 0 insertadas, 166 actualizadas, 0 omitidas
2026-01-29 21:29:42,440 [INFO] Skipped manually modified pedido: 7382_10501
2026-01-29 21:29:42,443 [ERROR] Error en merge de pedidos: insert or update on table "pedidos" violates foreign key constraint "fk_pedidos_orden"
DETAIL: Key (orden_id)=(7494) is not present in table "ordenes".
2026-01-29 21:29:42,443 [INFO] Carga completada en 0.25s
2026-01-29 21:29:42,443 [WARNING] ETL completado con errores - Órdenes: True, Pedidos: False
2026-01-29 21:29:42,443 [WARNING] === PROCESO ETL COMPLETADO CON ERRORES ===
2026-01-29 21:29:42,443 [INFO] Resumen: órdenes 0, pedidos 0
2026-01-29 21:29:43,395 [INFO] Notificación enviada correctamente
Tip: Usa Ctrl+F para buscar texto específico en el log