import json json_file = r"C:\Trabajo\SIDEL\09 - SAE452 - Diet as Regular - San Giorgio in Bosco\ExportTia\CPU_315F-2_PN_DP\ProgramBlocks_XML\parsing\System_Run_Out.json" with open(json_file, "r", encoding="utf-8") as f: data = json.load(f) # Encontrar la red 13 (ID: D5) network_13 = None for i, network in enumerate(data["networks"]): if network["id"] == "D5": network_13 = network print(f"RED 13 encontrada en position {i+1}") break if network_13: print(f"\n=== ANÁLISIS DETALLADO RED 13 (ID: D5) ===") print(f'Title: "{network_13["title"]}"') print(f'Comment: "{network_13["comment"]}"') print(f'Language: {network_13["language"]}') print(f"\n=== TODAS LAS INSTRUCCIONES ===") for instr in network_13["logic"]: print(f'\nInstrucción UID {instr["uid"]} - Tipo: {instr["type"]}') print(f' Inputs: {instr["inputs"]}') print(f' Outputs: {instr["outputs"]}') if instr["type"] == "Sr": print(f" >>> ESTA ES LA INSTRUCCIÓN Sr PROBLEMÁTICA <<<") print(f' Template values: {instr.get("template_values", {})}') print(f' Negated pins: {instr.get("negated_pins", {})}') # Buscar variables que mencionen gIN_SyrRoomLast400lRunno o M1507 print(f"\n=== BÚSQUEDA DE VARIABLES RELACIONADAS ===") found_vars = [] for instr in network_13["logic"]: for input_key, input_val in instr["inputs"].items(): if isinstance(input_val, dict) and "name" in input_val: var_name = input_val["name"] if "1507" in var_name or "SyrRoom" in var_name or "Last400" in var_name: found_vars.append(var_name) for output_key, output_val in instr["outputs"].items(): if isinstance(output_val, dict) and "name" in output_val: var_name = output_val["name"] if "1507" in var_name or "SyrRoom" in var_name or "Last400" in var_name: found_vars.append(var_name) if found_vars: print("Variables relacionadas encontradas:") for var in set(found_vars): print(f" - {var}") else: print("No se encontraron variables relacionadas con 1507/SyrRoom/Last400") else: print("RED 13 (ID: D5) no encontrada!")