generated from dopt-python/py311
add schemas
This commit is contained in:
parent
66090752a0
commit
fec957f334
@ -1,6 +1,9 @@
|
||||
import polars as pl
|
||||
import sqlalchemy as sql
|
||||
from sqlalchemy import Column, Table
|
||||
|
||||
from umbreit.types import PolarsNullValues, PolarsSchema
|
||||
|
||||
metadata = sql.MetaData()
|
||||
|
||||
ext_bedpbed = Table(
|
||||
@ -25,6 +28,28 @@ ext_bedpbed = Table(
|
||||
Column("BEDP_DATUM_LIEFERUNG", sql.Date, nullable=True),
|
||||
)
|
||||
|
||||
ext_bedpbed_schema_map: PolarsSchema = {
|
||||
"BEDARFNR": pl.UInt32,
|
||||
"BEDP_SEQUENZ": pl.UInt32,
|
||||
"BEDP_TITELNR": pl.UInt32,
|
||||
"BEDP_MAN": pl.UInt8,
|
||||
"VERLAGSNR": pl.UInt32,
|
||||
"PRODUKT_GR": pl.UInt8,
|
||||
"BEARBEITER": pl.String,
|
||||
"BEDP_MENGE_BEDARF": pl.UInt32,
|
||||
"BEDP_MENGE_VERKAUF": pl.UInt32,
|
||||
"BEDP_MENGE_ANFRAGE": pl.UInt32,
|
||||
"BEDP_MENGE_BESTELLUNG": pl.UInt32,
|
||||
"BEDP_MENGE_FREI": pl.UInt32,
|
||||
"BEDP_MENGE_BEDARF_VM": pl.UInt32,
|
||||
"BEDP_BESTELLWEG": pl.String,
|
||||
"BEDP_DATUM_LIEFERUNG": pl.Date,
|
||||
}
|
||||
|
||||
ext_bedpbed_null_values: PolarsNullValues = {
|
||||
"BEDP_MENGE_BEDARF": "-1",
|
||||
}
|
||||
|
||||
ext_titel_info = Table(
|
||||
"ext_titel_info",
|
||||
metadata,
|
||||
@ -34,7 +59,7 @@ ext_titel_info = Table(
|
||||
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("DATUM_LIEFERBAR", sql.DateTime, nullable=False),
|
||||
Column("MENGE_VORMERKER", sql.Integer, nullable=True),
|
||||
Column("PRODUKTGRUPPE", sql.Integer, nullable=False),
|
||||
Column("PRODUKTGRUPPE_TYP", sql.String(3), nullable=False),
|
||||
@ -42,6 +67,22 @@ ext_titel_info = Table(
|
||||
Column("BESTAND_VERFUEGBAR", sql.Integer, nullable=False),
|
||||
)
|
||||
|
||||
ext_titel_info_schema_map: PolarsSchema = {
|
||||
"TI_NUMMER": pl.UInt32,
|
||||
"MANDFUEHR": pl.UInt8,
|
||||
"TI_KURZTEXT": pl.String,
|
||||
"VERLAGSNR": pl.UInt32,
|
||||
"VERLAG_SUCHBEGRIFF": pl.String,
|
||||
"MELDENUMMER": pl.UInt8,
|
||||
"DATUM_LIEFERBAR": pl.Datetime,
|
||||
"MENGE_VORMERKER": pl.UInt32,
|
||||
"PRODUKTGRUPPE": pl.UInt16,
|
||||
"PRODUKTGRUPPE_TYP": pl.String,
|
||||
"EINKAEUFER": pl.String,
|
||||
"BESTAND_VERFUEGBAR": pl.UInt64,
|
||||
}
|
||||
|
||||
ext_titel_info_null_values: PolarsNullValues = {}
|
||||
|
||||
EXT_BESPBES_INFO = Table(
|
||||
"EXT_BESPBES_INFO",
|
||||
@ -50,7 +91,7 @@ EXT_BESPBES_INFO = Table(
|
||||
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_GRUND", sql.String(2), nullable=True),
|
||||
Column("BESP_MAND", sql.Integer, nullable=False),
|
||||
Column("BESP_TITELNR", sql.Integer, nullable=False),
|
||||
Column("BESPAA", sql.String(1), nullable=True),
|
||||
@ -58,6 +99,21 @@ EXT_BESPBES_INFO = Table(
|
||||
Column("BESVAK999", sql.String(1), nullable=True),
|
||||
)
|
||||
|
||||
EXT_BESPBES_INFO_schema_map: PolarsSchema = {
|
||||
"BES_DATUM": pl.Date,
|
||||
"BESP_DAT_ERW": pl.Date,
|
||||
"BESP_MENGE": pl.UInt32,
|
||||
"BESP_STATUS": pl.UInt8,
|
||||
"BESP_GRUND": pl.String,
|
||||
"BESP_MAND": pl.UInt8,
|
||||
"BESP_TITELNR": pl.UInt32,
|
||||
"BESPAA": pl.String,
|
||||
"BESP_ART": pl.String,
|
||||
"BESVAK999": pl.String,
|
||||
}
|
||||
|
||||
EXT_BESPBES_INFO_null_values: PolarsNullValues = {}
|
||||
|
||||
EXT_AUFPAUF = Table(
|
||||
"EXT_AUFPAUF",
|
||||
metadata,
|
||||
@ -78,11 +134,30 @@ EXT_AUFPAUF = Table(
|
||||
Column("AUFP_DATUM_ANLAGE", sql.DateTime, nullable=False),
|
||||
)
|
||||
|
||||
tables: tuple[Table, ...] = (
|
||||
ext_bedpbed,
|
||||
ext_titel_info,
|
||||
EXT_AUFPAUF,
|
||||
EXT_BESPBES_INFO,
|
||||
EXT_AUFPAUF_schema_map: PolarsSchema = {
|
||||
"TITELNR": pl.UInt32,
|
||||
"AUFTRAGSNUMMER": pl.UInt32,
|
||||
"AUFTRAGS_DATUM": pl.Datetime,
|
||||
"AUFTRAGS_ART": pl.UInt8,
|
||||
"DATUM_LIEFERUNG": pl.Date,
|
||||
"AUFTRAGS_STATUS": pl.String,
|
||||
"KUNDE_LIEFERUNG": pl.UInt32,
|
||||
"KUNDE_RECHNUNG": pl.UInt32,
|
||||
"MANDANT": pl.UInt8,
|
||||
"AUFP_POSITION": pl.UInt16,
|
||||
"AUFP_MENGE_AUFTRAG": pl.UInt32,
|
||||
"AUFP_MENGE_GELIEFERT": pl.UInt32,
|
||||
"AUFP_VORMERKUNG": pl.String,
|
||||
"AUFP_DATUM_ANLAGE": pl.Datetime,
|
||||
}
|
||||
|
||||
EXT_AUFPAUF_null_values: PolarsNullValues = {}
|
||||
|
||||
csv_tables: tuple[tuple[Table, PolarsSchema, PolarsNullValues], ...] = (
|
||||
(ext_bedpbed, ext_bedpbed_schema_map, ext_bedpbed_null_values),
|
||||
(ext_titel_info, ext_titel_info_schema_map, ext_titel_info_null_values),
|
||||
(EXT_AUFPAUF, EXT_AUFPAUF_schema_map, EXT_AUFPAUF_null_values),
|
||||
(EXT_BESPBES_INFO, EXT_BESPBES_INFO_schema_map, EXT_BESPBES_INFO_null_values),
|
||||
)
|
||||
|
||||
results = Table(
|
||||
|
||||
8
src/umbreit/types.py
Normal file
8
src/umbreit/types.py
Normal file
@ -0,0 +1,8 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import TypeAlias
|
||||
|
||||
import polars as pl
|
||||
|
||||
PolarsSchema: TypeAlias = dict[str, type[pl.DataType]]
|
||||
PolarsNullValues: TypeAlias = dict[str, str]
|
||||
Loading…
x
Reference in New Issue
Block a user