Demo anfragen
max.dash / Wissen / eazybusiness-Schema
ST.01 / SCHEMA

eazybusiness von innen: die Tabellen, die dein Reporting trägt.

Wer eigene SQL-Reports gegen die JTL-WaWi bauen will, landet früher oder später in der eazybusiness-Datenbank. Ein Überblick über die Tabellen, die für Versand, Pick und Abrechnung wirklich zählen - und die Stelle, an der die meisten Abfragen leise falsch rechnen.

max.dash ist ein read-only Operations-Cockpit für JTL-Fulfillment-Dienstleister (3PL) im DACH-Raum. Wir lesen die JTL-WaWi (eazybusiness) rein lesend und liefern SLA-Reporting pro Mandant, Versandleistung pro Mitarbeiter, ein mandantengetrenntes Kundenportal und Abrechnungs-Mengen-Export - ohne Systemwechsel. Dieser Überblick zeigt, welche eazybusiness-Tabellen dafür konkret gelesen werden.

AUF EINEN BLICK
  • Auftrag und Position liegen in Verkauf.tAuftrag und Verkauf.tAuftragPosition, verknüpft über kAuftrag.
  • Zusatzfelder zum Auftrag stecken in tAuftragEckdaten - leicht übersehen, oft entscheidend für SLA-Logik.
  • Kommissionierung läuft über tPickliste, tPicklistePos und tPicklisteStatus.
  • Rechnungsdaten liegen in Rechnung.tRechnung, ebenfalls über kAuftrag verknüpfbar.
  • Offizielle Referenz für Tabellen- und Spaltennamen: wawi-db.jtl-software.de.
  • Größte Fehlerquelle in der Praxis: der kMandant-Filter fehlt oder wird nur einseitig gesetzt.

01 - Was eazybusiness ist

eazybusiness ist die MS-SQL-Datenbank der JTL-WaWi, in der alle Auftrags-, Versand-, Pick- und Rechnungsdaten liegen. Jede JTL-WaWi-Installation läuft technisch auf dieser Datenbank auf Microsoft SQL Server - kein Fremdsystem, keine Zwischenschicht, sondern eine gewöhnliche relationale Datenbank mit dem üblichen Rechte- und Abfragesystem. Wer versteht, wie eazybusiness aufgebaut ist, kann eigene SQL-Abfragen schreiben, statt sich auf mitgelieferte Standardreports zu verlassen.

Für Fulfiller ist das relevant, weil die drei Kernbereiche des Tagesgeschäfts - Auftrag, Kommissionierung, Abrechnung - jeweils in eigenen, klar abgrenzbaren Tabellengruppen liegen. Wer diese Struktur kennt, kann SLA-Quoten, Versandleistung und Abrechnungsmengen direkt aus der Datenbank ableiten, statt sie manuell aus der WaWi-Oberfläche zusammenzutragen.

02 - Auftrag und Auftragsposition

Was dort liegt. Der Auftrag ist die zentrale Einheit im eazybusiness-Schema. In Verkauf.tAuftrag steht ein Datensatz pro Auftrag mit Zeitstempeln, Status und Mandantenbezug; die einzelnen bestellten Artikel liegen in Verkauf.tAuftragPosition, verknüpft über den Schlüssel kAuftrag. Ergänzende Felder, die nicht direkt am Auftrag hängen - etwa bestimmte Zusatzangaben, die für Cutoff- oder SLA-Logik relevant sein können - liegen zusätzlich in tAuftragEckdaten.

SCHEMAAUFTRAG
AuftragskopfVerkauf.tAuftrag
AuftragspositionenVerkauf.tAuftragPosition
Zusatzdaten zum AuftragtAuftragEckdaten
VerknüpfungsschlüsselkAuftrag
MandantentrennungkMandant

Typischer Fallstrick. tAuftragEckdaten wird beim ersten Entwurf einer Abfrage gern übersehen, weil der Auftragskopf allein schon plausible Ergebnisse liefert. Fehlt diese Tabelle im JOIN, fehlen aber genau die Felder, die für eine sauber modellierte SLA-Regel oft gebraucht werden - die Abfrage liefert dann Zahlen, nur eben nicht die vollständigen.

03 - Pickliste und Kommissionierung

Was dort liegt. Die Kommissionierung hat ein eigenes Tabellentrio: tPickliste für den Kopf einer Pickliste (wann angelegt, von wem bearbeitet, welcher Status), tPicklistePos für die einzelnen zu entnehmenden Positionen und tPicklisteStatus für den Lebenszyklus einer Pickliste von der Anlage bis zum Abschluss. Diese drei Tabellen sind die Grundlage für jede Auswertung der Versandleistung pro Mitarbeiter.

  • tPickliste - Kopfdaten: Anlagezeitpunkt, zuständiger Mitarbeiter, aktueller Status
  • tPicklistePos - Positionsebene: welcher Artikel, welche Menge, welcher Lagerplatz
  • tPicklisteStatus - Statusverlauf, relevant um Bearbeitungszeit von reiner Wartezeit zu trennen

Warum das für Kennzahlen zählt. Wer Picks pro Stunde sauber rechnen will, braucht nicht nur die Menge aus tPicklistePos, sondern auch belastbare Zeitstempel aus tPickliste und tPicklisteStatus - und im Idealfall ein Mapping auf echte Stempelzeiten aus der Zeiterfassung, nicht nur auf die Scan-Spanne innerhalb der Pickliste selbst. Wie diese Messung im Detail sauber aufgebaut wird, steht im Leitfaden zur Mitarbeiterleistung.

04 - Rechnung und Abrechnung

Was dort liegt. Rechnungsdaten liegen in Rechnung.tRechnung, ebenfalls über kAuftrag mit dem zugehörigen Auftrag verknüpfbar. Für einen Fulfiller ist diese Tabelle der Ausgangspunkt für jede mengenbasierte Abrechnung gegenüber dem eigenen Auftraggeber - unabhängig davon, ob intern nach Paketen, Picks oder Lagerplätzen abgerechnet wird.

Typischer Fallstrick. Rechnungsdaten und Versanddaten laufen zeitlich nicht zwangsläufig synchron - eine Rechnung kann vor, mit oder nach dem tatsächlichen Versand entstehen, je nach Prozess. Wer Abrechnungsmengen direkt aus Rechnung.tRechnung ableitet, sollte diesen Zeitversatz kennen und nicht stillschweigend mit dem Versanddatum aus dem Auftrag gleichsetzen.

05 - Das offizielle Tabellen-Vergleichstool

JTL stellt unter wawi-db.jtl-software.de ein offizielles Tabellen-Dokumentations- und Vergleichstool bereit. Dort lassen sich Tabellen- und Spaltennamen nachschlagen und über Versionsstände hinweg vergleichen. Für jede eigene Abfrage, die auf ein unbekanntes Feld trifft, eine leere Ergebnismenge liefert oder nach einem JTL-Update bricht, ist das der richtige erste Anlaufpunkt - vor dem Raten und vor dem Durchsuchen von Community-Foren.

Wie ein solcher Bruch nach einem konkreten Versionswechsel aussieht und welches Tabellen-Mapping dahintersteht, steht im Leitfaden zu JTL-Schema-Updates.

06 - VIEWs statt direkter JOINs

Warum VIEWs die robustere Basis sind. JTL liefert für viele Standardauswertungen eigene VIEWs mit, die mehrere Basistabellen bereits sinnvoll zusammenführen. Diese VIEWs kapseln die interne Tabellenstruktur und sind bei Schema-Änderungen tendenziell stabiler als eigene JOINs direkt auf Verkauf.tAuftrag, tPickliste und Co., weil JTL Änderungen an der Innenstruktur eher hinter der VIEW-Schnittstelle abfängt, statt diese selbst zu brechen.

  • Vor dem eigenen JOIN prüfen, ob JTL bereits eine passende VIEW für den Anwendungsfall mitliefert
  • Wo eine VIEW existiert, ist sie einer eigenen Mehrfach-JOIN-Konstruktion vorzuziehen
  • Eigene Abfragen dokumentieren, welche Basistabellen referenziert werden - das beschleunigt jedes spätere Update-Mapping

07 - Die kMandant-Falle

Was es ist. Praktisch jede relevante Tabelle im eazybusiness-Schema führt kMandant als Feld für die Mandantentrennung, sobald mehrere Auftraggeber im selben JTL-System verwaltet werden. Die Falle: Beim Verknüpfen mehrerer Tabellen wird der Mandanten-Filter oft nur auf einer Seite des JOINs gesetzt oder schlicht vergessen.

Eine Abfrage über Auftrag, Pickliste und Rechnung läuft technisch fehlerfrei und liefert Ergebnisse. Nur eben Aufträge, Picks und Rechnungen aus mehreren Mandanten gemeinsam - unbemerkt, bis eine Auswertung oder eine Rechnung offensichtlich nicht zu einem einzelnen Kunden passt.

Warum das so leicht passiert. Der Fehler zeigt sich nicht als Fehlermeldung, sondern als plausibel aussehendes, aber falsches Ergebnis. Gerade bei mehrstufigen JOINs über Auftrag, Position, Pickliste und Rechnung reicht eine einzige vergessene kMandant-Bedingung, damit sich Daten mehrerer Mandanten vermischen. Der Filter gehört deshalb in jede einzelne beteiligte Tabelle des JOINs, nicht nur in die äußerste.

08 - Schema kennen ist nicht Schema pflegen

Wer bis hierhin gelesen hat, kennt die wichtigsten Tabellen für Auftrag, Pick und Abrechnung - und weiß, wie ehrlich der Aufwand dahinter ist. Das Schema einmal zu verstehen ist die eine Sache. Es über Jahre und über mehrere JTL-Versionen hinweg zu pflegen, ist eine andere: Tabellen werden umbenannt, in neue Schemata verschoben, Felder wandern, VIEWs ändern sich. Wer selbst gebaute SQL-Reports dauerhaft betreibt, zieht dieses Mapping bei jedem Update von Hand nach.

Genau hier setzt max.dash an: Das Mapping auf Verkauf.tAuftrag, tPickliste, Rechnung.tRechnung und die konsequente kMandant-Trennung sind Teil der Leseschicht, die zentral gepflegt wird - nicht bei jedem Kunden neu gebaut. SLA-Reporting, Versandleistung, Kundenportal und Abrechnungs-Mengen-Export laufen auf dieser Basis weiter, auch wenn JTL das Schema beim nächsten Update wieder anfasst.

Wie das Cockpit auf dieser Datenbasis konkret aussieht, zeigt die JTL-Dashboard-Übersicht. Wie ein Schema-Update zwischen Versionen im Detail aussieht, steht im Leitfaden zu JTL-Schema-Updates. Wie ein sicherer, rein lesender Zugriff auf diese Tabellen eingerichtet wird, erklärt JTL-WaWi read-only auslesen. Weitere Fachbegriffe rund um Fulfillment und JTL stehen im Glossar.

ST.02 / FAQ
Was ist eazybusiness?

eazybusiness ist die MS-SQL-Datenbank der JTL-WaWi, in der alle Auftrags-, Versand-, Pick- und Rechnungsdaten liegen. Jede JTL-WaWi-Installation läuft technisch auf dieser Datenbank - kein Fremdsystem, sondern eine gewöhnliche relationale Datenbank mit dem üblichen Rechte- und Abfragesystem von Microsoft SQL Server.

Welche Tabellen brauche ich für ein Versand-Reporting?

Für ein Versand-Reporting sind vor allem Verkauf.tAuftrag und Verkauf.tAuftragPosition relevant, verknüpft über den Schlüssel kAuftrag, dazu tAuftragEckdaten für Zusatzfelder. Für die Kommissionierung kommen tPickliste, tPicklistePos und tPicklisteStatus hinzu. Für die Abrechnung wird zusätzlich Rechnung.tRechnung benötigt. In jeder dieser Tabellen muss kMandant korrekt gefiltert werden, sobald mehrere Auftraggeber im selben System liegen.

Was ist die kMandant-Falle?

Die kMandant-Falle beschreibt den Fehler, beim Verknüpfen mehrerer eazybusiness-Tabellen den Mandanten-Filter kMandant zu vergessen oder nur auf einer Seite des JOINs zu setzen. Die Abfrage läuft fehlerfrei und liefert Ergebnisse - nur eben Aufträge, Picks oder Rechnungen aus mehreren Mandanten gemeinsam. Das fällt oft erst auf, wenn eine Auswertung oder eine Rechnung offensichtlich nicht zu einem einzelnen Kunden passt.

Gibt es eine offizielle Dokumentation des eazybusiness-Schemas?

Ja, JTL stellt unter wawi-db.jtl-software.de ein offizielles Tabellen-Vergleichs- und Dokumentationstool bereit. Dort lassen sich Tabellen- und Spaltennamen über Versionen hinweg nachschlagen und Änderungen zwischen Schema-Ständen gegenüberstellen. Für jede eigene Abfrage, die auf ein unbekanntes Feld trifft oder nach einem Update bricht, ist das der richtige erste Anlaufpunkt.

ST.03 / DEMO

Lass uns das Schema-Mapping übernehmen - nicht dich.

30 Minuten, unverbindlich. Wir zeigen dir SLA-Reporting, Versandleistung und Abrechnung an deinen echten eazybusiness-Daten.

BEREIT Demo anfragen