added db schemas

This commit is contained in:
2025-11-07 08:03:27 +01:00
parent 3a03554bad
commit 66090752a0
3 changed files with 278 additions and 3 deletions

98
src/umbreit/db.py Normal file
View File

@@ -0,0 +1,98 @@
import sqlalchemy as sql
from sqlalchemy import Column, Table
metadata = sql.MetaData()
ext_bedpbed = Table(
"ext_bedpbed",
metadata,
Column("BEDARFNR", sql.Integer, primary_key=True, autoincrement=False, nullable=False),
Column(
"BEDP_SEQUENZ", sql.Integer, primary_key=True, autoincrement=False, nullable=False
),
Column("BEDP_TITELNR", sql.Integer, nullable=False),
Column("BEDP_MAN", sql.Integer, nullable=False),
Column("VERLAGSNR", sql.Integer, nullable=False),
Column("PRODUKT_GR", sql.Integer, nullable=True),
Column("BEARBEITER", sql.String(10), nullable=False),
Column("BEDP_MENGE_BEDARF", sql.Integer, nullable=True),
Column("BEDP_MENGE_VERKAUF", sql.Integer, nullable=True),
Column("BEDP_MENGE_ANFRAGE", sql.Integer, nullable=True),
Column("BEDP_MENGE_BESTELLUNG", sql.Integer, nullable=True),
Column("BEDP_MENGE_FREI", sql.Integer, nullable=True),
Column("BEDP_MENGE_BEDARF_VM", sql.Integer, nullable=True),
Column("BEDP_BESTELLWEG", sql.String(2), nullable=True),
Column("BEDP_DATUM_LIEFERUNG", sql.Date, nullable=True),
)
ext_titel_info = Table(
"ext_titel_info",
metadata,
Column("TI_NUMMER", sql.Integer, primary_key=True, autoincrement=False, nullable=False),
Column("MANDFUEHR", sql.Integer, primary_key=True, autoincrement=False, nullable=False),
Column("TI_KURZTEXT", sql.String(225), nullable=False),
Column("VERLAGSNR", sql.Integer, nullable=False),
Column("VERLAG_SUCHBEGRIFF", sql.String(225), nullable=False),
Column("MELDENUMMER", sql.Integer, nullable=False),
Column("DATUM_LIEFERBAR", sql.Date, nullable=False),
Column("MENGE_VORMERKER", sql.Integer, nullable=True),
Column("PRODUKTGRUPPE", sql.Integer, nullable=False),
Column("PRODUKTGRUPPE_TYP", sql.String(3), nullable=False),
Column("EINKAEUFER", sql.String(10), nullable=False),
Column("BESTAND_VERFUEGBAR", sql.Integer, nullable=False),
)
EXT_BESPBES_INFO = Table(
"EXT_BESPBES_INFO",
metadata,
Column("BES_DATUM", sql.Date, nullable=False),
Column("BESP_DAT_ERW", sql.Date, nullable=False),
Column("BESP_MENGE", sql.Integer, nullable=False),
Column("BESP_STATUS", sql.Integer, nullable=False),
Column("BESP_GRUND", sql.Integer, nullable=True),
Column("BESP_MAND", sql.Integer, nullable=False),
Column("BESP_TITELNR", sql.Integer, nullable=False),
Column("BESPAA", sql.String(1), nullable=True),
Column("BESP_ART", sql.String(1), nullable=False),
Column("BESVAK999", sql.String(1), nullable=True),
)
EXT_AUFPAUF = Table(
"EXT_AUFPAUF",
metadata,
Column("TITELNR", sql.Integer, nullable=False),
Column("AUFTRAGSNUMMER", sql.Integer, nullable=False),
Column("AUFTRAGS_DATUM", sql.DateTime, nullable=False),
Column("AUFTRAGS_ART", sql.Integer, nullable=False),
Column("EINGANGS_ART", sql.String(2), nullable=False),
Column("DATUM_LIEFERUNG", sql.DateTime, nullable=True),
Column("AUFTRAGS_STATUS", sql.String(1), nullable=False),
Column("KUNDE_LIEFERUNG", sql.Integer, nullable=False),
Column("KUNDE_RECHNUNG", sql.Integer, nullable=False),
Column("MANDANT", sql.Integer, nullable=False),
Column("AUFP_POSITION", sql.Integer, nullable=False),
Column("AUFP_MENGE_AUFTRAG", sql.Integer, nullable=False),
Column("AUFP_MENGE_GELIEFERT", sql.Integer, nullable=False),
Column("AUFP_VORMERKUNG", sql.String(1), nullable=True),
Column("AUFP_DATUM_ANLAGE", sql.DateTime, nullable=False),
)
tables: tuple[Table, ...] = (
ext_bedpbed,
ext_titel_info,
EXT_AUFPAUF,
EXT_BESPBES_INFO,
)
results = Table(
"results",
metadata,
Column("id", sql.Integer, nullable=False, primary_key=True, autoincrement=True),
Column("bedarf_nr", sql.Integer, nullable=False),
Column("bedarf_sequenz", sql.Integer, nullable=False),
Column("vorlage", sql.Boolean, nullable=False),
Column("wf_id", sql.Integer, nullable=False),
Column("best_menge", sql.Integer, nullable=False),
Column("freigabe_auto", sql.Boolean, nullable=False),
)