This commit is contained in:
2025-06-30 11:49:44 +00:00
parent 035a871364
commit 0490e93053

View File

@@ -684,14 +684,14 @@ def load_target_schema(csv_filepath=BRANCH_MAPPING_FILE):
logger.info(f"Lade Ziel-Schema und Fokus-Branchen aus '{csv_filepath}'...")
try:
# HINWEIS: Encoding wurde bereits in der vorherigen Runde auf 'utf-8-sig' gesetzt.
# Dies ist der korrekte Weg. Wenn es immer noch nicht funktioniert, liegt das Problem
# möglicherweise an der Datei selbst (z.B. falscher Delimiter).
# Wir behalten den Code bei, da er korrekt ist.
with open(csv_filepath, "r", encoding="utf-8-sig") as f:
reader = csv.reader(f, delimiter=';')
try:
header_row = next(reader)
# +++ START DEBUG-CODE +++
logger.critical(f"DEBUG: Gelesene Header-Zeile: {header_row}")
logger.critical(f"DEBUG: Anzahl der Spalten im Header: {len(header_row)}")
# +++ ENDE DEBUG-CODE +++
logger.debug(f"Ueberspringe Header-Zeile im Schema: {header_row}")
except StopIteration:
logger.warning(f"Schema-Datei '{csv_filepath}' ist leer oder hat keinen Header.")
@@ -700,15 +700,26 @@ def load_target_schema(csv_filepath=BRANCH_MAPPING_FILE):
globals()['ALLOWED_TARGET_BRANCHES'] = []
return False
# +++ START DEBUG-CODE +++
first_row = None
try:
first_row = next(reader)
logger.critical(f"DEBUG: Gelesene ERSTE DATENZEILE: {first_row}")
logger.critical(f"DEBUG: Anzahl der Spalten in der ersten Datenzeile: {len(first_row)}")
except StopIteration:
logger.warning("DEBUG: Keine Datenzeilen nach dem Header gefunden.")
# WICHTIG: Datei neu öffnen, um von vorne zu lesen für die eigentliche Logik
f.seek(0)
next(reader) # Header wieder überspringen
# +++ ENDE DEBUG-CODE +++
for row_num, row in enumerate(reader, 1):
line_count = row_num
if not row or len(row) < 2: continue # Überspringe leere Zeilen oder Zeilen mit weniger als 2 Spalten
if not row or len(row) < 2: continue
# <<< GEÄNDERT: Lese die Zielbranche aus der ZWEITEN Spalte (Index 1)
target_branch = row[1].strip()
if target_branch:
allowed_branches_set.add(target_branch)
# <<< GEÄNDERT: Prüfe optional die DRITTE Spalte (Index 2) für Fokus-Marker
if len(row) >= 3 and row[2].strip().upper() in ["X", "FOKUS", "JA", "TRUE", "1"]:
focus_branches_set.add(target_branch)
logger.debug(f" -> Fokusbranche gefunden: '{target_branch}'")