bugfix
This commit is contained in:
@@ -8118,13 +8118,11 @@ class DataProcessor:
|
|||||||
}
|
}
|
||||||
temp_begruendungen = []
|
temp_begruendungen = []
|
||||||
|
|
||||||
# --- START ANPASSUNG: Parent-Account Info aus D holen ---
|
|
||||||
parent_account_name_d_val = row_data_dict.get("Parent Account Name", "").strip()
|
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.')
|
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:
|
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.")
|
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) ---
|
# --- 1. Plausibilität Finaler Umsatz (BG) ---
|
||||||
final_umsatz_str = row_data_dict.get("Finaler Umsatz (Wiki>CRM)", "k.A.")
|
final_umsatz_str = row_data_dict.get("Finaler Umsatz (Wiki>CRM)", "k.A.")
|
||||||
@@ -8203,15 +8201,17 @@ class DataProcessor:
|
|||||||
|
|
||||||
# Umsatz Abweichung (BJ)
|
# 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 :
|
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:
|
if is_konzern_tochter_laut_d:
|
||||||
results["abweichung_umsatz_flag"] = "INFO_KONZERN_LOGIK"
|
results["abweichung_umsatz_flag"] = "INFO_KONZERN_LOGIK"
|
||||||
# Optional: Begründung hinzufügen, wenn gewünscht
|
# Begründung wird hier NICHT mehr automatisch hinzugefügt,
|
||||||
# temp_begruendungen.append(f"INFO: Konzernlogik - Umsatzabweichung CRM/Wiki nicht als Fehler gewertet.")
|
# da sie sonst bei jeder Konzernfirma erscheint, auch wenn alles OK ist.
|
||||||
# --- ENDE ANPASSUNG ---
|
# Man könnte es hinzufügen, wenn man möchte, dass es immer da steht.
|
||||||
else: # Normale Prüfung, wenn keine Konzernzugehörigkeit in D vermerkt
|
# 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)
|
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:
|
if (diff_umsatz / bezugswert_umsatz) > abweichung_prozent_config:
|
||||||
results["abweichung_umsatz_flag"] = "WARNUNG_SIGNIFIKANT"
|
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.")
|
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)
|
# 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:
|
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:
|
if is_konzern_tochter_laut_d:
|
||||||
results["abweichung_ma_flag"] = "INFO_KONZERN_LOGIK"
|
results["abweichung_ma_flag"] = "INFO_KONZERN_LOGIK"
|
||||||
# Optional: Begründung hinzufügen
|
# temp_begruendungen.append(f"INFO: Konzern - MA-Abweichung CRM/Wiki nicht als Warnung.")
|
||||||
# temp_begruendungen.append(f"INFO: Konzernlogik - MA-Abweichung CRM/Wiki nicht als Fehler gewertet.")
|
# --- ENDE ANPASSUNG FÜR KONZERN ---
|
||||||
# --- ENDE ANPASSUNG ---
|
else:
|
||||||
else: # Normale Prüfung
|
|
||||||
diff_ma = abs(crm_m_abs_comp - wiki_m_abs_comp)
|
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
|
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:
|
if (diff_ma / bezugswert_ma) > abweichung_prozent_config:
|
||||||
|
|||||||
Reference in New Issue
Block a user