define schema for supplier aggregates

This commit is contained in:
2026-06-08 15:41:25 +02:00
parent af91e05d97
commit 516712ca40

View File

@@ -14,6 +14,7 @@ DB_URI: Final[str] = f"sqlite:///{constants.Config.DB_PATH_INTERNAL}"
ENGINE_INTERNAL: Final[sql.Engine] = sql.create_engine(DB_URI)
MD_INTERNAL = sql.MetaData()
MD_EXTERNAL = sql.MetaData()
intern_prod_order_t: Table = Table(
@@ -79,6 +80,9 @@ intern_prod_order_t_schema: dict[str, type[pl.DataType]] = {
MD_INTERNAL.create_all(ENGINE_INTERNAL)
# // external database
# ** read
extern_prod_order_t_schema: dict[str, type[pl.DataType]] = {
"VK Auftrag": pl.UInt32,
"Artikelbez.": pl.String,
@@ -109,3 +113,40 @@ extern_prod_order_t_schema: dict[str, type[pl.DataType]] = {
"Anzahl Arbeitstage pro Woche": pl.UInt8,
"Blockauftrag": pl.String,
}
# ** write
extern_results_prod_orders_t: Table = Table(
"KPI_PRODUKTIONSAUFTRAEGE",
MD_EXTERNAL,
Column("ID", sql.Integer, sql.CheckConstraint("ID = 1"), primary_key=True),
Column("AKTUALISIERT_AM", sql.DateTime, nullable=False),
Column("MITTLERE_ANZAHL_TAGE_LIEFERTERMINUNTERSCHREITUNG", sql.Integer, nullable=True),
Column("MITTLERE_ANZAHL_TAGE_LIEFERTERMINUEBERSCHREITUNG", sql.Integer, nullable=True),
Column(
"STANDARDABWEICHUNG_TAGE_LIEFERTERMINABWEICHUNG", sql.Numeric(10, 4), nullable=True
),
Column("MITTLERE_ANZAHL_ANPASSUNGEN_LIEFERTERMIN", sql.Integer, nullable=True),
Column("MITTLERE_ABSTAENDE_ZWISCHEN_MELDUNGEN", sql.Integer, nullable=True),
Column("MITTLERE_DURCHLAUFZEIT_ANZAHL_TAGE", sql.Integer, nullable=True),
)
extern_results_suppliers_t: Table = Table(
"KPI_KONFEKTIONAERE",
MD_EXTERNAL,
Column("ID", sql.Integer, primary_key=True),
Column("AKTUALISIERT_AM", sql.DateTime, nullable=False),
Column("KONFEKTIONAER", sql.String(200), nullable=True),
Column("QUOTE_ERSTBESTAETIGUNG", sql.Numeric(7, 4), nullable=True),
Column("PROZENT_LIEFERTREUE", sql.Numeric(7, 4), nullable=True),
Column("ANTEIL_PROZENT_LIEFERTERMINUNTERSCHREITUNG", sql.Numeric(7, 4), nullable=True),
Column("ANTEIL_PROZENT_LIEFERTERMINUEBERSCHREITUNG", sql.Numeric(7, 4), nullable=True),
Column("MITTLERE_ANZAHL_TAGE_LIEFERTERMINUNTERSCHREITUNG", sql.Integer, nullable=True),
Column("MITTLERE_ANZAHL_TAGE_LIEFERTERMINUEBERSCHREITUNG", sql.Integer, nullable=True),
Column(
"STANDARDABWEICHUNG_TAGE_LIEFERTERMINABWEICHUNG", sql.Numeric(10, 4), nullable=True
),
Column("MITTLERE_ANZAHL_ANPASSUNGEN_LIEFERTERMIN", sql.Integer, nullable=True),
Column("MITTLERE_ABSTAENDE_ZWISCHEN_MELDUNGEN", sql.Integer, nullable=True),
Column("MITTLERE_DURCHLAUFZEIT_ANZAHL_TAGE", sql.Integer, nullable=True),
Column("MITTLERER_QUALITAETSSCORE_PSM", sql.Numeric(5, 4), nullable=True),
)