diff --git a/backend/script_groups/XML Parser to SCL/log.txt b/backend/script_groups/XML Parser to SCL/log.txt index 576368f..81f194e 100644 --- a/backend/script_groups/XML Parser to SCL/log.txt +++ b/backend/script_groups/XML Parser to SCL/log.txt @@ -1,30 +1,35 @@ -2025-05-03 23:55:48.463 - ======================================== LOG START ======================================== -2025-05-03 23:55:48.464 - Directorio de trabajo base configurado: 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport' -2025-05-03 23:55:48.464 - Buscando archivos XML recursivamente en el subdirectorio: 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC' -2025-05-03 23:55:48.464 - Se encontraron 1 archivos XML para procesar: -2025-05-03 23:55:48.465 - - PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml -2025-05-03 23:55:48.465 - +2025-05-04 00:02:18.418 - ======================================== LOG START ======================================== +2025-05-04 00:02:18.418 - Directorio de trabajo base configurado: 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport' +2025-05-04 00:02:18.418 - Buscando archivos XML recursivamente en el subdirectorio: 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC' +2025-05-04 00:02:18.420 - Se encontraron 1 archivos XML para procesar: +2025-05-04 00:02:18.420 - - PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml +2025-05-04 00:02:18.421 - --- Fase 1: Procesamiento Individual (x1, x2, x3) --- -2025-05-03 23:55:48.465 - +2025-05-04 00:02:18.421 - --- Procesando archivo: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -2025-05-03 23:55:48.465 - --- Ejecutando x1 (convert_xml_to_json) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -2025-05-03 23:55:48.474 - --- Ejecutando x2 (process_json_to_scl) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -2025-05-03 23:55:48.477 - --- Ejecutando x3 (generate_scl_or_markdown) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -2025-05-03 23:55:48.480 - +2025-05-04 00:02:18.422 - --- SALTANDO TODO (x1, x2, x3) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml (XML no modificado, salida final actualizada) +2025-05-04 00:02:18.422 - +--- Fase 1.5: Copiando archivos SCL existentes desde 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC' a 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\scl_output' --- +2025-05-04 00:02:18.424 - Se encontraron 1 archivos .scl existentes para copiar: +2025-05-04 00:02:18.424 - - Copiando 'ProgramBlocks_SCL\BlenderPID__Main.scl' a 'PLC\scl_output\BlenderPID__Main.scl' +2025-05-04 00:02:18.427 - Copia de SCL existentes finalizada. Copiados: 1, Omitidos (conflicto nombre): 0 +2025-05-04 00:02:18.427 - --- Fase 2: Ejecutando x4_cross_reference.py (salida en 'xref_output/') --- -2025-05-03 23:55:48.480 - Ejecutando x4 (generate_cross_references) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output -2025-05-03 23:55:48.488 - +2025-05-04 00:02:18.427 - Ejecutando x4 (generate_cross_references) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output +2025-05-04 00:02:18.435 - --- Fase 3: Ejecutando x5_aggregate.py (salida en 'full_project_representation.md') --- -2025-05-03 23:55:48.488 - Ejecutando x5 (aggregate_outputs) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida agregada en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\full_project_representation.md -2025-05-03 23:55:48.494 - +2025-05-04 00:02:18.435 - Ejecutando x5 (aggregate_outputs) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida agregada en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\full_project_representation.md +2025-05-04 00:02:18.443 - -------------------- Resumen Final del Procesamiento Completo -------------------- -2025-05-03 23:55:48.494 - Total de archivos XML encontrados: 1 -2025-05-03 23:55:48.494 - Archivos procesados/actualizados exitosamente (x1-x3): 1 -2025-05-03 23:55:48.494 - Archivos completamente saltados (x1, x2, x3): 0 -2025-05-03 23:55:48.494 - Archivos parcialmente saltados (x1, x2 saltados; x3 ejecutado): 0 -2025-05-03 23:55:48.494 - Archivos fallidos (en x1, x2, x3 o error inesperado): 0 -2025-05-03 23:55:48.494 - Fase 2 (Generación XRef - x4): Completada -2025-05-03 23:55:48.494 - Fase 3 (Agregación - x5): Completada -2025-05-03 23:55:48.494 - -------------------------------------------------------------------------------- -2025-05-03 23:55:48.494 - Proceso finalizado exitosamente. -2025-05-03 23:55:48.494 - ========================================= LOG END ========================================== +2025-05-04 00:02:18.443 - Total de archivos XML encontrados: 1 +2025-05-04 00:02:18.444 - Archivos procesados/actualizados exitosamente (x1-x3): 1 +2025-05-04 00:02:18.444 - Archivos completamente saltados (x1, x2, x3): 1 +2025-05-04 00:02:18.444 - Archivos parcialmente saltados (x1, x2 saltados; x3 ejecutado): 0 +2025-05-04 00:02:18.444 - Archivos fallidos (en x1, x2, x3 o error inesperado): 0 +2025-05-04 00:02:18.444 - Archivos SCL existentes copiados (Fase 1.5): 1 +2025-05-04 00:02:18.444 - Archivos SCL existentes omitidos por conflicto (Fase 1.5): 0 +2025-05-04 00:02:18.444 - Fase 2 (Generación XRef - x4): Completada +2025-05-04 00:02:18.444 - Fase 3 (Agregación - x5): Completada +2025-05-04 00:02:18.444 - -------------------------------------------------------------------------------- +2025-05-04 00:02:18.444 - Proceso finalizado exitosamente. +2025-05-04 00:02:18.444 - ========================================= LOG END ========================================== diff --git a/backend/script_groups/XML Parser to SCL/log_x0_main.txt b/backend/script_groups/XML Parser to SCL/log_x0_main.txt index 5220330..2e10256 100644 --- a/backend/script_groups/XML Parser to SCL/log_x0_main.txt +++ b/backend/script_groups/XML Parser to SCL/log_x0_main.txt @@ -1,9 +1,9 @@ --- Log de Ejecución: x0_main.py --- Grupo: XML Parser to SCL Directorio de Trabajo: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport -Inicio: 2025-05-03 23:55:47 -Fin: 2025-05-03 23:55:48 -Duración: 0:00:01.146105 +Inicio: 2025-05-04 00:02:17 +Fin: 2025-05-04 00:02:18 +Duración: 0:00:01.136828 Estado: SUCCESS (Código de Salida: 0) --- SALIDA ESTÁNDAR (STDOUT) --- @@ -20,46 +20,11 @@ Se encontraron 1 archivos XML para procesar: --- Fase 1: Procesamiento Individual (x1, x2, x3) --- --- Procesando archivo: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- ---- Ejecutando x1 (convert_xml_to_json) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -Iniciando conversión de 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml' a 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\ProgramBlocks_XML\parsing\BlenderPID__Main_Data.json'... -Cargando parsers de red... -Cargando parsers desde: 'D:\Proyectos\Scripts\ParamManagerScripts\backend\script_groups\XML Parser to SCL\parsers' +--- SALTANDO TODO (x1, x2, x3) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml (XML no modificado, salida final actualizada) -Total de lenguajes con parser cargado: 5 -Lenguajes soportados: ['LAD', 'FBD', 'GRAPH', 'SCL', 'STL'] -Metadatos XML: ModTime=1746220371.8349743, Size=51679 -Paso 1: Parseando archivo XML... -Paso 1: Parseo XML completado. -Paso 2: Detectando tipo de objeto principal... -Paso 2: No es UDT ni Tag Table. Buscando SW.Blocks.* ... -Paso 2b: Bloque SW.Blocks.InstanceDB (Tipo: InstanceDB) encontrado (ID=0). -Paso 3: Extrayendo atributos del bloque... -Paso 3: Atributos: Nombre='BlenderPID__Main_Data', Número=950, Lenguaje Bloque='DB' -Paso 3b: Comentario bloque: '...' -Paso 4: Extrayendo la interfaz del bloque... -Paso 5: Saltando procesamiento de redes para InstanceDB. -Paso 6: Escribiendo el resultado en el archivo JSON... -Paso 6: Escritura JSON completada. -Conversión finalizada. JSON guardado en: 'PLC\ProgramBlocks_XML\parsing\BlenderPID__Main_Data.json' ---- Ejecutando x2 (process_json_to_scl) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -Cargando JSON desde: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\ProgramBlocks_XML\parsing\BlenderPID__Main_Data.json -Procesando bloque tipo: InstanceDB -INFO: El bloque es InstanceDB. Saltando procesamiento lógico de x2. -Guardando JSON de InstanceDB (con metadatos) en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\ProgramBlocks_XML\parsing\BlenderPID__Main_Data_processed.json -Guardado de InstanceDB completado. ---- Ejecutando x3 (generate_scl_or_markdown) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- -Cargando JSON procesado desde: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\ProgramBlocks_XML\parsing\BlenderPID__Main_Data_processed.json -Generando salida para: InstanceDB 'BlenderPID__Main_Data' (Original: BlenderPID__Main_Data) - -> Modo de generación: INSTANCE_DATA_BLOCK SCL - WARNING: No se encontró definición para 'Integral'. Se buscó en directorios estándar. - WARNING: No se encontró definición para 'Integral'. Se buscó en directorios estándar. - WARNING: No se encontró definición para 'Integral'. Se buscó en directorios estándar. - WARNING: No se encontró definición para 'LowPassFilter'. Se buscó en directorios estándar. - WARNING: No se encontró definición para 'BlenderPID_PIDSPCalc'. Se buscó en directorios estándar. - WARNING: No se encontró definición para 'BlenderPID_PIDInitParam'. Se buscó en directorios estándar. - WARNING: No se encontró definición para 'BlenderPID_ActualRecipe'. Se buscó en directorios estándar. - -> Escribiendo archivo de salida final en: PLC\scl_output\BlenderPID__Main_Data.scl -Generación de .SCL completada. +--- Fase 1.5: Copiando archivos SCL existentes desde 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC' a 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\scl_output' --- +Se encontraron 1 archivos .scl existentes para copiar: +Copia de SCL existentes finalizada. Copiados: 1, Omitidos (conflicto nombre): 0 --- Fase 2: Ejecutando x4_cross_reference.py (salida en 'xref_output/') --- Ejecutando x4 (generate_cross_references) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output @@ -69,7 +34,7 @@ Directorio de salida XRef: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE1 Directorio fuente SCL/MD: scl_output Subdirectorio fuentes MD para XRef: source Copiando y preparando archivos fuente para Obsidian en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output\source -Archivos fuente preparados: 1 SCL convertidos, 0 MD copiados. +Archivos fuente preparados: 2 SCL convertidos, 0 MD copiados. Archivos JSON encontrados: 1 Datos cargados para 1 bloques (0 PLC Tags globales). Analizando llamadas y uso de DBs/PLC Tags... @@ -86,9 +51,11 @@ Directorio Raíz del Proyecto: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - Archivo de Salida: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\full_project_representation.md Buscando archivos SCL con patrón: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\**\*.scl Buscando archivos MD con patrón: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\**\*.md -Se agregarán 5 archivos. +Se agregarán 7 archivos. Agregando: ProgramBlocks_SCL\BlenderPID__Main.scl + Agregando: scl_output\BlenderPID__Main.scl Agregando: scl_output\BlenderPID__Main_Data.scl + Agregando: xref_output\source\BlenderPID__Main.md Agregando: xref_output\source\BlenderPID__Main_Data.md Agregando: xref_output\xref_db_usage_summary.md Agregando: xref_output\xref_plc_tags_summary.md @@ -98,9 +65,11 @@ Agregación completada. Archivo guardado en: C:\Trabajo\SIDEL\06 - E5.007363 - M -------------------- Resumen Final del Procesamiento Completo -------------------- Total de archivos XML encontrados: 1 Archivos procesados/actualizados exitosamente (x1-x3): 1 -Archivos completamente saltados (x1, x2, x3): 0 +Archivos completamente saltados (x1, x2, x3): 1 Archivos parcialmente saltados (x1, x2 saltados; x3 ejecutado): 0 Archivos fallidos (en x1, x2, x3 o error inesperado): 0 +Archivos SCL existentes copiados (Fase 1.5): 1 +Archivos SCL existentes omitidos por conflicto (Fase 1.5): 0 Fase 2 (Generación XRef - x4): Completada Fase 3 (Agregación - x5): Completada -------------------------------------------------------------------------------- diff --git a/backend/script_groups/XML Parser to SCL/x0_main.py b/backend/script_groups/XML Parser to SCL/x0_main.py index 1ca9970..159453d 100644 --- a/backend/script_groups/XML Parser to SCL/x0_main.py +++ b/backend/script_groups/XML Parser to SCL/x0_main.py @@ -17,6 +17,7 @@ import time import traceback import json import datetime # <-- NUEVO: Para timestamps +import shutil # <-- ADDED: Import shutil for file copying script_root = os.path.dirname( os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ) @@ -236,6 +237,10 @@ if __name__ == "__main__": # Estos directorios ahora se crearán DENTRO de xml_project_dir (es decir, dentro de 'PLC') scl_output_dir = os.path.join(xml_project_dir, cfg_scl_output_dirname) # Usar valor de config xref_output_dir = os.path.join(xml_project_dir, cfg_xref_output_dirname) # Usar valor de config + # <-- ADDED: Ensure output directories exist --> + os.makedirs(scl_output_dir, exist_ok=True) + os.makedirs(xref_output_dir, exist_ok=True) + # <-- END ADDED --> # --- PARTE 2: PROCESAMIENTO INDIVIDUAL (x1, x2, x3) --- log_message("\n--- Fase 1: Procesamiento Individual (x1, x2, x3) ---", log_f) @@ -348,6 +353,50 @@ if __name__ == "__main__": failed_count += 1 continue # Pasar al siguiente archivo + # <-- ADDED: Phase 1.5: Copy existing SCL files --> + log_message(f"\n--- Fase 1.5: Copiando archivos SCL existentes desde '{xml_project_dir}' a '{scl_output_dir}' ---", log_f) + copied_scl_count = 0 + skipped_scl_count = 0 + try: + search_scl_pattern = os.path.join(xml_project_dir, "**", "*.scl") + existing_scl_files = glob.glob(search_scl_pattern, recursive=True) + + # Exclude files already in the target scl_output_dir or xref_output_dir to avoid self-copying if nested + scl_output_dir_abs = os.path.abspath(scl_output_dir) + xref_output_dir_abs = os.path.abspath(xref_output_dir) + + filtered_scl_files = [ + f for f in existing_scl_files + if not os.path.abspath(os.path.dirname(f)).startswith(scl_output_dir_abs) and \ + not os.path.abspath(os.path.dirname(f)).startswith(xref_output_dir_abs) + ] + + if not filtered_scl_files: + log_message("No se encontraron archivos .scl existentes para copiar (excluyendo directorios de salida).", log_f) + else: + log_message(f"Se encontraron {len(filtered_scl_files)} archivos .scl existentes para copiar:", log_f) + for src_scl_path in filtered_scl_files: + relative_scl_path = os.path.relpath(src_scl_path, xml_project_dir) + dest_scl_path = os.path.join(scl_output_dir, os.path.basename(src_scl_path)) # Copy directly into scl_output_dir + + # Check if a file with the same name was already generated from XML + if os.path.exists(dest_scl_path): + log_message(f" - Omitiendo copia de '{relative_scl_path}': Ya existe un archivo generado con el mismo nombre en el destino.", log_f, also_print=False) + skipped_scl_count += 1 + else: + try: + log_message(f" - Copiando '{relative_scl_path}' a '{os.path.relpath(dest_scl_path, working_directory)}'", log_f, also_print=False) + shutil.copy2(src_scl_path, dest_scl_path) # copy2 preserves metadata + copied_scl_count += 1 + except Exception as copy_err: + log_message(f" - ERROR copiando '{relative_scl_path}': {copy_err}", log_f) + # Decide if this should count as a general failure + log_message(f"Copia de SCL existentes finalizada. Copiados: {copied_scl_count}, Omitidos (conflicto nombre): {skipped_scl_count}", log_f) + + except Exception as e: + log_message(f"Error durante la Fase 1.5 (Copia SCL): {e}", log_f) + # <-- END ADDED --> + # --- PARTE 3: EJECUTAR x4 (Referencias Cruzadas) --- log_message( f"\n--- Fase 2: Ejecutando x4_cross_reference.py (salida en '{cfg_xref_output_dirname}/') ---", # Usar valor de config @@ -464,12 +513,8 @@ if __name__ == "__main__": log_f, ) log_message(f"Archivos fallidos (en x1, x2, x3 o error inesperado): {failed_count}", log_f) - # El detalle de archivos fallidos es más difícil de rastrear ahora sin el dict 'file_status' - # Se podría reintroducir si es necesario, actualizándolo en cada paso. - # Por ahora, solo mostramos el conteo. - # if failed_count > 0: - # log_message("Archivos fallidos:", log_f) - # ... (lógica para mostrar cuáles fallaron) ... + log_message(f"Archivos SCL existentes copiados (Fase 1.5): {copied_scl_count}", log_f) # <-- ADDED: Report copied SCL + log_message(f"Archivos SCL existentes omitidos por conflicto (Fase 1.5): {skipped_scl_count}", log_f) # <-- ADDED: Report skipped SCL log_message( f"Fase 2 (Generación XRef - x4): {'Completada' if run_x4 and success_x4 else ('Fallida' if run_x4 and not success_x4 else 'Omitida')}", log_f, diff --git a/data/log.txt b/data/log.txt index 966bd82..1b5b44f 100644 --- a/data/log.txt +++ b/data/log.txt @@ -94,3 +94,68 @@ [23:55:48] ========================================= LOG END ========================================== [23:55:48] Ejecución de x0_main.py finalizada (success). Duración: 0:00:01.146105. Se detectaron errores (ver log). [23:55:48] Log completo guardado en: D:\Proyectos\Scripts\ParamManagerScripts\backend\script_groups\XML Parser to SCL\log_x0_main.txt +[00:02:17] Iniciando ejecución de x0_main.py en C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport... +[00:02:18] Advertencia: No se pudo importar 'format_variable_name' desde processors.processor_utils. +[00:02:18] Usando una implementación local básica. +[00:02:18] INFO: format_variable_name importado desde generators.generator_utils +[00:02:18] INFO: format_variable_name importado desde generators.generator_utils +[00:02:18] ======================================== LOG START ======================================== +[00:02:18] Directorio de trabajo base configurado: 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport' +[00:02:18] Buscando archivos XML recursivamente en el subdirectorio: 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC' +[00:02:18] Se encontraron 1 archivos XML para procesar: +[00:02:18] - PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml +[00:02:18] --- Fase 1: Procesamiento Individual (x1, x2, x3) --- +[00:02:18] --- Procesando archivo: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml --- +[00:02:18] --- SALTANDO TODO (x1, x2, x3) para: PLC\ProgramBlocks_XML\BlenderPID__Main_Data.xml (XML no modificado, salida final actualizada) +[00:02:18] --- Fase 1.5: Copiando archivos SCL existentes desde 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC' a 'C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\scl_output' --- +[00:02:18] Se encontraron 1 archivos .scl existentes para copiar: +[00:02:18] Copia de SCL existentes finalizada. Copiados: 1, Omitidos (conflicto nombre): 0 +[00:02:18] --- Fase 2: Ejecutando x4_cross_reference.py (salida en 'xref_output/') --- +[00:02:18] Ejecutando x4 (generate_cross_references) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output +[00:02:18] --- Iniciando Generación de Referencias Cruzadas y Fuentes MD (x4) --- +[00:02:18] Buscando archivos JSON procesados en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC +[00:02:18] Directorio de salida XRef: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output +[00:02:18] Directorio fuente SCL/MD: scl_output +[00:02:18] Subdirectorio fuentes MD para XRef: source +[00:02:18] Copiando y preparando archivos fuente para Obsidian en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output\source +[00:02:18] Archivos fuente preparados: 2 SCL convertidos, 0 MD copiados. +[00:02:18] Archivos JSON encontrados: 1 +[00:02:18] Datos cargados para 1 bloques (0 PLC Tags globales). +[00:02:18] Analizando llamadas y uso de DBs/PLC Tags... +[00:02:18] Generando ÁRBOL XRef de llamadas en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output\xref_calls_tree.md +[00:02:18] Generando RESUMEN XRef de uso de DBs en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output\xref_db_usage_summary.md +[00:02:18] Generando RESUMEN XRef de uso de PLC Tags en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\xref_output\xref_plc_tags_summary.md +[00:02:18] --- Generación de Referencias Cruzadas y Fuentes MD (x4) Completada --- +[00:02:18] --- Fase 3: Ejecutando x5_aggregate.py (salida en 'full_project_representation.md') --- +[00:02:18] Ejecutando x5 (aggregate_outputs) sobre: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC, salida agregada en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\full_project_representation.md +[00:02:18] --- Iniciando Agregación de Archivos (x5) --- +[00:02:18] Leyendo desde directorios: 'scl_output' y 'xref_output' (relativos a la raíz) +[00:02:18] Directorio Raíz del Proyecto: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC +[00:02:18] Archivo de Salida: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\full_project_representation.md +[00:02:18] Buscando archivos SCL con patrón: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\**\*.scl +[00:02:18] Buscando archivos MD con patrón: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\PLC\**\*.md +[00:02:18] Se agregarán 7 archivos. +[00:02:18] Agregando: ProgramBlocks_SCL\BlenderPID__Main.scl +[00:02:18] Agregando: scl_output\BlenderPID__Main.scl +[00:02:18] Agregando: scl_output\BlenderPID__Main_Data.scl +[00:02:18] Agregando: xref_output\source\BlenderPID__Main.md +[00:02:18] Agregando: xref_output\source\BlenderPID__Main_Data.md +[00:02:18] Agregando: xref_output\xref_db_usage_summary.md +[00:02:18] Agregando: xref_output\xref_plc_tags_summary.md +[00:02:18] Agregación completada. Archivo guardado en: C:\Trabajo\SIDEL\06 - E5.007363 - Modifica O&U - SAE196 (cip integrato)\Reporte\IOExport\full_project_representation.md +[00:02:18] -------------------- Resumen Final del Procesamiento Completo -------------------- +[00:02:18] Total de archivos XML encontrados: 1 +[00:02:18] Archivos procesados/actualizados exitosamente (x1-x3): 1 +[00:02:18] Archivos completamente saltados (x1, x2, x3): 1 +[00:02:18] Archivos parcialmente saltados (x1, x2 saltados; x3 ejecutado): 0 +[00:02:18] Archivos fallidos (en x1, x2, x3 o error inesperado): 0 +[00:02:18] Archivos SCL existentes copiados (Fase 1.5): 1 +[00:02:18] Archivos SCL existentes omitidos por conflicto (Fase 1.5): 0 +[00:02:18] Fase 2 (Generación XRef - x4): Completada +[00:02:18] Fase 3 (Agregación - x5): Completada +[00:02:18] -------------------------------------------------------------------------------- +[00:02:18] Proceso finalizado exitosamente. +[00:02:18] Proceso finalizado exitosamente. Consulta 'log.txt' para detalles. +[00:02:18] ========================================= LOG END ========================================== +[00:02:18] Ejecución de x0_main.py finalizada (success). Duración: 0:00:01.136828. Se detectaron errores (ver log). +[00:02:18] Log completo guardado en: D:\Proyectos\Scripts\ParamManagerScripts\backend\script_groups\XML Parser to SCL\log_x0_main.txt