CREATE TABLE IF NOT EXISTS ls.production_order ( "Suchschluessel" TEXT PRIMARY KEY, -- ERP, eindeutiger key für einen Auftrag "Grund der Ausloesung Beschreibung" TEXT, -- ERP, nicht relevant "Produktionsplan Name" TEXT, -- ERP, nicht relevant "Produktionsplan Suchschluessel" TEXT, -- ERP, nicht relevant "Suchschluessel" im Frontend "Status" TEXT, -- ERP, entweder "CL", oder "OR". Zur zeit wollen wir bei uns nur Aufträge mit Status "OR" anschauen "Freigabe" TEXT, -- ERP, "N" oder "Y", wir schauen nur Aufträge mit "Y" an "Startdatum" TEXT, -- ERP "Enddatum" TEXT, -- ERP "Arbeitsgang_Arbeitsanweisung" TEXT, -- ERP, nicht relevant "Arbeitsgang_Artikelname" TEXT, -- ERP, das zeigen wir im Frontend unter "Artikelname" an "Arbeitsgang_Artikelnummer" TEXT, -- ERP, das zeigen wir im Frontend unter "Artikelnummer" an "Arbeitsgang_Menge" TEXT, -- ERP, das zeigen wir im Frontend unter "Menge" an "Arbeitsgang_Rohmaterial" TEXT, -- ERP, Json, Liste mit Rohmaterialien. Wir klassifizieren das mittels regex und zeigen die Klassen für Material und Form an (siehe ret_materials und ret_forms). Außerdem steht hier manchmal noch ein größe mit dabei (siehe ret_dim_1) "ret_forms" TEXT, -- KMI, Form des Rohmaterials, das zeigen wir im Frontend unter "Form" an "ret_materials" TEXT, -- KMI, Rohmaterial, das zeigen wir im Frontend unter "Material" an "ret_dim_1" INTEGER, -- KMI, Länge des Rohmaterials, das zeigen wir im Frontend unter "Dim1 an "Bestelldatum" TEXT, -- ERP "Kunden-ID" TEXT, -- ERP "Kundenprioritaet" INTEGER, -- ERP "order" INTEGER, -- KMI, Reihenfolge die durch unsere Heuristik berechnet wurde "clusters" INTEGER, -- KMI, wir clustern die Aufträge nach material und form "chunk_id" INTEGER, -- KMI Aufträge mit ähnlicher "prio" werden in chunks zusammengefasst, sodass man innerhalb dieser chunks nach cluster sortieren kann (siehe chunk 7 im bild unten). So werden Rüstzeiten minimiert. "prio" FLOAT, -- KMI prioritäts score für den Auftrag auf Basis von Kundenprioritaet und Enddatum "erfassungspunkt" TEXT );