bugfix
This commit is contained in:
@@ -8118,13 +8118,11 @@ class DataProcessor:
|
||||
}
|
||||
temp_begruendungen = []
|
||||
|
||||
# --- START ANPASSUNG: Parent-Account Info aus D holen ---
|
||||
parent_account_name_d_val = row_data_dict.get("Parent Account Name", "").strip()
|
||||
is_konzern_tochter_laut_d = bool(parent_account_name_d_val and parent_account_name_d_val.lower() != 'k.a.')
|
||||
|
||||
if is_konzern_tochter_laut_d:
|
||||
self.logger.debug(f" PlausiCheck: Tochter von Konzern '{parent_account_name_d_val}' (aus Spalte D). Abweichungs-Checks CRM/Wiki werden als INFO_KONZERN_LOGIK behandelt.")
|
||||
# --- ENDE ANPASSUNG ---
|
||||
|
||||
# --- 1. Plausibilität Finaler Umsatz (BG) ---
|
||||
final_umsatz_str = row_data_dict.get("Finaler Umsatz (Wiki>CRM)", "k.A.")
|
||||
@@ -8203,15 +8201,17 @@ class DataProcessor:
|
||||
|
||||
# Umsatz Abweichung (BJ)
|
||||
if pd.notna(crm_u_abs) and pd.notna(wiki_u_abs) and crm_u_abs > 0 and wiki_u_abs > 0 :
|
||||
# --- START ANPASSUNG ---
|
||||
# --- START ANPASSUNG FÜR KONZERN ---
|
||||
if is_konzern_tochter_laut_d:
|
||||
results["abweichung_umsatz_flag"] = "INFO_KONZERN_LOGIK"
|
||||
# Optional: Begründung hinzufügen, wenn gewünscht
|
||||
# temp_begruendungen.append(f"INFO: Konzernlogik - Umsatzabweichung CRM/Wiki nicht als Fehler gewertet.")
|
||||
# --- ENDE ANPASSUNG ---
|
||||
else: # Normale Prüfung, wenn keine Konzernzugehörigkeit in D vermerkt
|
||||
# Begründung wird hier NICHT mehr automatisch hinzugefügt,
|
||||
# da sie sonst bei jeder Konzernfirma erscheint, auch wenn alles OK ist.
|
||||
# Man könnte es hinzufügen, wenn man möchte, dass es immer da steht.
|
||||
# temp_begruendungen.append(f"INFO: Konzern - Umsatzabweichung CRM/Wiki nicht als Warnung.")
|
||||
# --- ENDE ANPASSUNG FÜR KONZERN ---
|
||||
else:
|
||||
diff_umsatz = abs(crm_u_abs - wiki_u_abs)
|
||||
bezugswert_umsatz = max(crm_u_abs, wiki_u_abs) if max(crm_u_abs, wiki_u_abs) > 0 else 1 # Div by Zero vermeiden
|
||||
bezugswert_umsatz = max(crm_u_abs, wiki_u_abs) if max(crm_u_abs, wiki_u_abs) > 0 else 1
|
||||
if (diff_umsatz / bezugswert_umsatz) > abweichung_prozent_config:
|
||||
results["abweichung_umsatz_flag"] = "WARNUNG_SIGNIFIKANT"
|
||||
temp_begruendungen.append(f"Umsatz CRM ({crm_u_abs:,.0f} €) vs. Wiki ({wiki_u_abs:,.0f} €) weicht >{abweichung_prozent_config*100:.0f}% ab.")
|
||||
@@ -8223,13 +8223,12 @@ class DataProcessor:
|
||||
|
||||
# Mitarbeiter Abweichung (BK)
|
||||
if pd.notna(crm_m_abs_comp) and pd.notna(wiki_m_abs_comp) and crm_m_abs_comp > 0 and wiki_m_abs_comp > 0:
|
||||
# --- START ANPASSUNG ---
|
||||
# --- START ANPASSUNG FÜR KONZERN ---
|
||||
if is_konzern_tochter_laut_d:
|
||||
results["abweichung_ma_flag"] = "INFO_KONZERN_LOGIK"
|
||||
# Optional: Begründung hinzufügen
|
||||
# temp_begruendungen.append(f"INFO: Konzernlogik - MA-Abweichung CRM/Wiki nicht als Fehler gewertet.")
|
||||
# --- ENDE ANPASSUNG ---
|
||||
else: # Normale Prüfung
|
||||
# temp_begruendungen.append(f"INFO: Konzern - MA-Abweichung CRM/Wiki nicht als Warnung.")
|
||||
# --- ENDE ANPASSUNG FÜR KONZERN ---
|
||||
else:
|
||||
diff_ma = abs(crm_m_abs_comp - wiki_m_abs_comp)
|
||||
bezugswert_ma = max(crm_m_abs_comp, wiki_m_abs_comp) if max(crm_m_abs_comp, wiki_m_abs_comp) > 0 else 1
|
||||
if (diff_ma / bezugswert_ma) > abweichung_prozent_config:
|
||||
|
||||
Reference in New Issue
Block a user