sync_manager.py aktualisiert
This commit is contained in:
@@ -155,28 +155,35 @@ class SyncManager:
|
|||||||
|
|
||||||
trigger_update = False
|
trigger_update = False
|
||||||
|
|
||||||
|
# --- FINALE LOGIK-STRUKTUR MIT ALLEN FACHREGELN ---
|
||||||
if gsheet_col == 'CRM Land':
|
if gsheet_col == 'CRM Land':
|
||||||
d365_code_lower = d365_val.lower()
|
d365_code_lower = d365_val.lower()
|
||||||
gsheet_val_lower = gsheet_val.lower()
|
gsheet_val_lower = gsheet_val.lower()
|
||||||
d365_translated_lower = Config.COUNTRY_CODE_MAP.get(d365_code_lower, d365_code_lower).lower()
|
d365_translated_lower = Config.COUNTRY_CODE_MAP.get(d365_code_lower, d365_code_lower).lower()
|
||||||
|
|
||||||
if gsheet_val_lower != d365_code_lower and gsheet_val_lower != d365_translated_lower:
|
if gsheet_val_lower != d365_code_lower and gsheet_val_lower != d365_translated_lower:
|
||||||
trigger_update = True
|
trigger_update = True
|
||||||
|
|
||||||
elif gsheet_col == 'CRM Anzahl Techniker':
|
elif gsheet_col == 'CRM Anzahl Techniker':
|
||||||
# Wiederhergestellte Logik: Ignoriere Update, wenn D365 '-1' ist und GSheet leer
|
if d365_val == '-1' and gsheet_val == '': pass
|
||||||
if d365_val == '-1' and gsheet_val == '':
|
elif d365_val != gsheet_val: trigger_update = True
|
||||||
pass # Explizit als "nicht unterschiedlich" behandeln
|
|
||||||
elif d365_val != gsheet_val:
|
|
||||||
trigger_update = True
|
|
||||||
|
|
||||||
elif gsheet_col == 'CRM Branche':
|
elif gsheet_col == 'CRM Branche':
|
||||||
if gsheet_row['Chat Vorschlag Branche'] == '' and d365_val != gsheet_val:
|
if gsheet_row['Chat Vorschlag Branche'] == '' and d365_val != gsheet_val:
|
||||||
trigger_update = True
|
trigger_update = True
|
||||||
|
|
||||||
else:
|
# NEUE REGELN FÜR UMSATZ & MITARBEITER
|
||||||
|
elif gsheet_col == 'CRM Umsatz':
|
||||||
|
if gsheet_row['Wiki Umsatz'] == '' and d365_val != gsheet_val:
|
||||||
|
trigger_update = True
|
||||||
|
|
||||||
|
elif gsheet_col == 'CRM Anzahl Mitarbeiter':
|
||||||
|
if gsheet_row['Wiki Mitarbeiter'] == '' and d365_val != gsheet_val:
|
||||||
|
trigger_update = True
|
||||||
|
|
||||||
|
else: # Standard-Vergleich für alle verbleibenden Felder (Name, Ort, Beschreibung)
|
||||||
if d365_val != gsheet_val:
|
if d365_val != gsheet_val:
|
||||||
trigger_update = True
|
trigger_update = True
|
||||||
|
# --- ENDE DER PRÜFLOGIK-STRUKTUR ---
|
||||||
|
|
||||||
if trigger_update:
|
if trigger_update:
|
||||||
row_updates[gsheet_col] = d365_val
|
row_updates[gsheet_col] = d365_val
|
||||||
|
|||||||
Reference in New Issue
Block a user