ParamManagerScripts/backend/script_groups/XML Parser to SCL/debug_sr_details.py

57 lines
2.2 KiB
Python

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!")