data_processor.py aktualisiert

This commit is contained in:
2025-07-28 13:01:58 +00:00
parent 4e420913f1
commit 789afc99d6

View File

@@ -1464,25 +1464,21 @@ class DataProcessor:
self.logger.info(f"FSM-Pitch-Generierung abgeschlossen. {processed_count} Zeilen bearbeitet.")
def reclassify_all_branches(self, start_sheet_row=None, limit=None, batch_size=20):
"""
Führt für alle relevanten Zeilen eine neue Brancheneinstufung (v2.0) in Batches durch.
"""
self.logger.info(f"Starte Modus 'reclassify_branches' im Batch-Modus (Größe: {batch_size}). Bereich: {start_sheet_row or 'Start'}, Limit: {limit or 'Unbegrenzt'}")
if not self.sheet_handler.load_data():
return
all_data = self.sheet_handler.get_all_data_with_headers()
# ...
header_rows = self.sheet_handler._header_rows
effective_start = start_sheet_row if start_sheet_row is not None else header_rows + 1
# Wichtig: Der Start MUSS nach den Header-Zeilen sein
effective_start = max(header_rows + 1, start_sheet_row or 0)
tasks = []
# Wir starten die Schleife erst NACH den Header-Zeilen
for i in range(effective_start - 1, len(all_data)):
if limit is not None and len(tasks) >= limit:
break
row_data = all_data[i]
company_name = self._get_cell_value_safe(row_data, "CRM Name").strip()
if company_name:
# Zusätzlicher Check, um sicherzustellen, dass wir keine Header-Texte verarbeiten
if company_name and "firmennamen" not in company_name.lower():
tasks.append({'row_num': i + 1, 'data': row_data})
if not tasks: