Archivo:
etl_20260206_180002.log
Modificado:
06/02/2026 18:00:06
Tamaño:
8.1 KB
Líneas:
86 líneas
2026-02-06 18:00:02,253 [INFO] Iniciando proceso ETL...
2026-02-06 18:00:02,253 [INFO] === INICIO ETL ===
2026-02-06 18:00:02,253 [INFO] Paso 1: Extracción de datos
2026-02-06 18:00:02,253 [INFO] Iniciando extracción de cabeceras
2026-02-06 18:00:02,253 [INFO] Extrayendo órdenes desde linux_ordenes...
2026-02-06 18:00:02,253 [INFO] Intentando conectar a SQL Server...
2026-02-06 18:00:03,299 [INFO] Conexión SQL Server exitosa
2026-02-06 18:00:03,299 [INFO] Ejecutando consulta (últimos 30 días desde 2026-01-07): SELECT numero, cliente, vendedor, fecha_entrega, dias_restantes, estatus FROM dbo.linux_ordenes WHERE fecha_entrega >= ?
2026-02-06 18:00:03,724 [INFO] Extraídas 131 órdenes
2026-02-06 18:00:03,724 [INFO] [DEBUG] Columnas ordenes: ['numero', 'cliente', 'vendedor', 'fecha_entrega', 'dias_restantes', 'estatus']
2026-02-06 18:00:03,724 [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-02-06 18:00:03,730 [INFO] [DEBUG] Nulos en fecha_entrega (ordenes) tras limpiar: 0
2026-02-06 18:00:03,827 [INFO] Iniciando extracción de líneas
2026-02-06 18:00:03,827 [INFO] Extrayendo pedidos desde linux_pedidos...
2026-02-06 18:00:03,827 [INFO] Intentando conectar a SQL Server...
2026-02-06 18:00:04,409 [INFO] Conexión SQL Server exitosa
2026-02-06 18:00:04,410 [INFO] Ejecutando consulta (últimos 30 días desde 2026-01-07): SELECT id, orden_id, clave, producto, unidad, cantidad, surtido, liq, saldo, fecha_entrega FROM dbo.linux_pedidos WHERE fecha_entrega >= ?
2026-02-06 18:00:05,043 [INFO] Extraídos 248 pedidos
2026-02-06 18:00:05,043 [INFO] [DEBUG] Columnas pedidos: ['id', 'orden_id', 'clave', 'producto', 'unidad', 'cantidad', 'surtido', 'liq', 'saldo', 'fecha_entrega']
2026-02-06 18:00:05,043 [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-02-06 18:00:05,049 [INFO] [DEBUG] Nulos en fecha_entrega (pedidos) tras limpiar: 0
2026-02-06 18:00:05,146 [INFO] Extraídas 248 líneas
2026-02-06 18:00:05,146 [INFO] Extracción completada en 2.89s
2026-02-06 18:00:05,146 [INFO] Paso 2: Transformación de datos
2026-02-06 18:00:05,146 [INFO] Transformando datos de cabeceras
2026-02-06 18:00:05,147 [INFO] [DEBUG] Nulos por columna (cabeceras): {'numero': 0, 'cliente': 0, 'vendedor': 0, 'fecha_entrega': 0, 'dias_restantes': 0, 'estatus': 0}
2026-02-06 18:00:05,152 [ERROR] Error transformando cabeceras: 'cantidad'
2026-02-06 18:00:05,152 [INFO] Transformando datos de líneas
2026-02-06 18:00:05,153 [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-02-06 18:00:05,163 [INFO] Transformadas 248 líneas
2026-02-06 18:00:05,164 [INFO] [DEBUG] Ejemplo líneas transformadas (3): [{'id': '7686_2', 'ID_UNICO': '7686_2', 'orden_id': '7686.0', 'clave': '3220160', 'producto': 'FT322 SELLADOR POLIURETANO BLANCO 600 ML', 'unidad': 'PIEZA', 'cantidad': 200, 'surtido': 200, 'liq': 200, 'saldo': 0, 'fecha_entrega': '2026-01-16', 'dias_restantes': -21, 'entregado': 1, 'estatus': 'parcialmente_completado', 'fecha_completado': None, 'F_Alta': None, 'remision_producto': None}, {'id': '7689_5', 'ID_UNICO': '7689_5', 'orden_id': '7689.0', 'clave': '3220160', 'producto': 'FT322 SELLADOR POLIURETANO BLANCO 600 ML', 'unidad': 'PIEZA', 'cantidad': 100, 'surtido': 100, 'liq': 100, 'saldo': 0, 'fecha_entrega': '2026-01-07', 'dias_restantes': -30, 'entregado': 1, 'estatus': 'parcialmente_completado', 'fecha_completado': None, 'F_Alta': None, 'remision_producto': None}, {'id': '7689_6', 'ID_UNICO': '7689_6', 'orden_id': '7689.0', 'clave': '3220460', 'producto': 'FT322 SELLADOR POLIURETANO GRIS 600 ML', 'unidad': 'PIEZA', 'cantidad': 60, 'surtido': 60, 'liq': 60, 'saldo': 0, 'fecha_entrega': '2026-01-07', 'dias_restantes': -30, 'entregado': 1, 'estatus': 'parcialmente_completado', 'fecha_completado': None, 'F_Alta': None, 'remision_producto': None}]
2026-02-06 18:00:05,164 [INFO] Transformación completada en 0.02s
2026-02-06 18:00:05,165 [INFO] Paso 3: Carga de datos
2026-02-06 18:00:05,279 [INFO] Merge de órdenes completado: 0 insertadas, 0 actualizadas, 0 omitidas
2026-02-06 18:00:05,309 [INFO] Skipped manually modified pedido: 7686_2
2026-02-06 18:00:05,310 [INFO] Skipped manually modified pedido: 7689_5
2026-02-06 18:00:05,310 [INFO] Skipped manually modified pedido: 7689_6
2026-02-06 18:00:05,311 [INFO] Skipped manually modified pedido: 7690_7
2026-02-06 18:00:05,311 [INFO] Skipped manually modified pedido: 7690_8
2026-02-06 18:00:05,311 [INFO] Skipped manually modified pedido: 7690_9
2026-02-06 18:00:05,312 [INFO] Skipped manually modified pedido: 7692_11
2026-02-06 18:00:05,312 [INFO] Skipped manually modified pedido: 7693_12
2026-02-06 18:00:05,312 [INFO] Skipped manually modified pedido: 7693_12
2026-02-06 18:00:05,313 [INFO] Skipped manually modified pedido: 7694_13
2026-02-06 18:00:05,313 [INFO] Skipped manually modified pedido: 7694_14
2026-02-06 18:00:05,313 [INFO] Skipped manually modified pedido: 7694_14
2026-02-06 18:00:05,314 [INFO] Skipped manually modified pedido: 7694_15
2026-02-06 18:00:05,314 [INFO] Skipped manually modified pedido: 7694_15
2026-02-06 18:00:05,314 [INFO] Skipped manually modified pedido: 7695_16
2026-02-06 18:00:05,314 [INFO] Skipped manually modified pedido: 7695_18
2026-02-06 18:00:05,329 [INFO] Skipped manually modified pedido: 7698_31
2026-02-06 18:00:05,351 [INFO] Skipped manually modified pedido: 7706_47
2026-02-06 18:00:05,352 [INFO] Skipped manually modified pedido: 7706_48
2026-02-06 18:00:05,357 [INFO] Skipped manually modified pedido: 7710_53
2026-02-06 18:00:05,357 [INFO] Skipped manually modified pedido: 7710_54
2026-02-06 18:00:05,357 [INFO] Skipped manually modified pedido: 7710_54
2026-02-06 18:00:05,358 [INFO] Skipped manually modified pedido: 7710_54
2026-02-06 18:00:05,359 [INFO] Skipped manually modified pedido: 7710_55
2026-02-06 18:00:05,359 [INFO] Skipped manually modified pedido: 7710_55
2026-02-06 18:00:05,359 [INFO] Skipped manually modified pedido: 7711_56
2026-02-06 18:00:05,360 [INFO] Skipped manually modified pedido: 7711_57
2026-02-06 18:00:05,362 [INFO] Skipped manually modified pedido: 7712_59
2026-02-06 18:00:05,363 [INFO] Skipped manually modified pedido: 7712_59
2026-02-06 18:00:05,363 [INFO] Skipped manually modified pedido: 7712_59
2026-02-06 18:00:05,363 [INFO] Skipped manually modified pedido: 7712_59
2026-02-06 18:00:05,369 [INFO] Skipped manually modified pedido: 7715_63
2026-02-06 18:00:05,370 [INFO] Skipped manually modified pedido: 7716_65
2026-02-06 18:00:05,394 [INFO] Skipped manually modified pedido: 7731_92
2026-02-06 18:00:05,404 [INFO] Skipped manually modified pedido: 7734_103
2026-02-06 18:00:05,408 [INFO] Skipped manually modified pedido: 7738_108
2026-02-06 18:00:05,409 [INFO] Skipped manually modified pedido: 7739_110
2026-02-06 18:00:05,410 [INFO] Skipped manually modified pedido: 7739_110
2026-02-06 18:00:05,411 [INFO] Skipped manually modified pedido: 7739_111
2026-02-06 18:00:05,442 [INFO] Skipped manually modified pedido: 7757_142
2026-02-06 18:00:05,443 [INFO] Skipped manually modified pedido: 7758_144
2026-02-06 18:00:05,454 [INFO] Skipped manually modified pedido: 7771_158
2026-02-06 18:00:05,475 [INFO] Skipped manually modified pedido: 7790_181
2026-02-06 18:00:05,477 [INFO] Skipped manually modified pedido: 7790_182
2026-02-06 18:00:05,502 [ERROR] Error en merge de pedidos: insert or update on table "pedidos" violates foreign key constraint "fk_pedidos_orden"
DETAIL: Key (orden_id)=(7804) is not present in table "ordenes".
2026-02-06 18:00:05,502 [INFO] Carga completada en 0.34s
2026-02-06 18:00:05,502 [WARNING] ETL completado con errores - Órdenes: True, Pedidos: False
2026-02-06 18:00:05,502 [WARNING] === PROCESO ETL COMPLETADO CON ERRORES ===
2026-02-06 18:00:05,502 [INFO] Resumen: órdenes 0, pedidos 0
2026-02-06 18:00:06,506 [INFO] Notificación enviada correctamente
Tip: Usa Ctrl+F para buscar texto específico en el log