Merge results obtained till project pause #2

Merged
foefl merged 13 commits from proto into main 2026-06-11 07:11:02 +00:00
Showing only changes of commit 4ca29ad049 - Show all commits

View File

@@ -14,6 +14,7 @@ from pprint import pprint
import dopt_basics.datetime as dt import dopt_basics.datetime as dt
import oracledb import oracledb
import pandas as pd
import polars as pl import polars as pl
import polars.selectors as cs import polars.selectors as cs
import sqlalchemy as sql import sqlalchemy as sql
@@ -1289,6 +1290,9 @@ def generate_test_result_data(
test_results = test_results.sort(by=["WF_ID", "BEDP_MAN"], descending=False) test_results = test_results.sort(by=["WF_ID", "BEDP_MAN"], descending=False)
test_results = test_results.select(pl.int_range(1, pl.len() + 1).alias("Index"), pl.all()) test_results = test_results.select(pl.int_range(1, pl.len() + 1).alias("Index"), pl.all())
test_results = test_results.with_columns(
pl.lit(None, dtype=pl.String).alias("Anmerkungen/Feedback")
)
return test_results return test_results
@@ -1296,25 +1300,61 @@ def generate_test_result_data(
# %% # %%
test_results = generate_test_result_data(raw_data, pipe_res) test_results = generate_test_result_data(raw_data, pipe_res)
test_results.head() test_results.head()
# %% # %%
date_str = datetime.datetime.now().strftime("%Y-%m-%d") def write_test_results_excel(
p_save = Path.cwd() / f"Testdatensatz_WF-100-200_{date_str}.xlsx" data: pl.DataFrame,
test_results.to_pandas().set_index("Index").to_excel( base_filename: str,
p_save, ) -> None:
date_str = datetime.datetime.now().strftime("%Y-%m-%d")
p_save = Path.cwd() / f"{base_filename}_{date_str}.xlsx"
pd_df = data.to_pandas().set_index("Index")
with pd.ExcelWriter(p_save, engine="xlsxwriter") as writer:
sheet_name = f"Ergebnisse_Testphase_{date_str}"
pd_df.to_excel(
writer,
freeze_panes=(1, 1), freeze_panes=(1, 1),
sheet_name=f"Ergebnisse_Testphase_{date_str}", sheet_name=sheet_name,
) )
worksheet = writer.sheets[sheet_name]
rows, cols = pd_df.shape
columns = ["Index"] + pd_df.columns.to_list()
worksheet.add_table(
0,
0,
rows,
cols,
{"columns": [{"header": c} for c in columns], "style": "Table Style Light 9"},
)
for i, col in enumerate(columns):
if i == 0:
worksheet.set_column(
i, i, max(pd_df.index.astype(str).map(len).max(), len(col)) + 2
)
continue
worksheet.set_column(
i, i, max(pd_df[col].astype(str).map(len).max(), len(col)) + 2
)
# %%
write_test_results_excel(test_results, "Testdatensatz_WF-100-200")
##################################################################### #####################################################################
# %% # %%
# ** deviating titles where BEDP_MENGE_BEDARF_VM > MENGE_VORMERKER # ** deviating titles where BEDP_MENGE_BEDARF_VM > MENGE_VORMERKER
deviation_vm = test_results.with_columns(pl.col.MENGE_VORMERKER.fill_null(0)).filter( deviation_vm = test_results.with_columns(pl.col.MENGE_VORMERKER.fill_null(0)).filter(
pl.col.BEDP_MENGE_BEDARF_VM > pl.col.MENGE_VORMERKER pl.col.BEDP_MENGE_BEDARF_VM > pl.col.MENGE_VORMERKER
) )
deviation_vm = test_results.filter(pl.col.BEDP_TITELNR.is_in(dev["BEDP_TITELNR"].implode())) deviation_vm = test_results.filter(
pl.col.BEDP_TITELNR.is_in(deviation_vm["BEDP_TITELNR"].implode())
date_str = datetime.datetime.now().strftime("%Y-%m-%d") )
p_save = Path.cwd() / f"Abweichungen-VM_{date_str}.xlsx" deviation_vm
deviation_vm.to_pandas().set_index("Index").to_excel(p_save, freeze_panes=(1, 1)) # %%
write_test_results_excel(deviation_vm, "Abweichungen-VM")
# ** WF-200 potentially triggered # ** WF-200 potentially triggered
raw_data.filter(pl.col.MELDENUMMER.is_in((17, 18))).filter( raw_data.filter(pl.col.MELDENUMMER.is_in((17, 18))).filter(
pl.col.BEDP_TITELNR.is_duplicated() pl.col.BEDP_TITELNR.is_duplicated()