EULANDA Software für Unternehmen

Technik

Vier Schichten,
die man einzeln anfassen kann.

Die kaufmännische Logik liegt im SQL Server – dort, wo sie seit dem Jahr 2000 liegt und wo sie geprüft ist. Darüber sitzen Schichten, die sich getrennt vervielfältigen, tauschen und überwachen lassen. Diese Seite geht so tief, wie es für eine Entscheidung nötig ist.

Der Weg einer Anfrage

Vom Tippen bis zur Tabelle.

Wer im Browser auf „Speichern“ drückt, löst eine Kette aus, in der jede Station eine klare Aufgabe hat. Auf dem Weg dorthin reist kein SQL mit: Browser, App und Fremdsystem sprechen ausschließlich HTTPS und rufen benannte Endpunkte auf. Erst hinter dieser Grenze, im REST-Server, entsteht die Abfrage – die kaufmännische Arbeit macht weiterhin der SQL Server. Eine Oberfläche kann also gar keine Abfrage formulieren, und untergeschobenes SQL kommt nicht bis zur Datenbank.

SCHICHT 4 · OBERFLÄCHE Browser LAN oder Internet Windows-Fenster WebView2 iPad / Android installierte App Kasse Theke oder Tablet Fremdsystem Shop, EDI, eigenes Skript · spricht dieselbe API HTTPS · Balancer Bearer-Token, PIN-Kopplung je Gerät SCHICHT 3 · REST-SERVER Instanz 1 bis 64 Arbeiter Instanz 2 8 sind der Regelfall Instanz n bis acht Instanzen · · · · · · SCHICHT 2 · DIENSTE IM LAN Geo · Routing eigene Engine oder freie Dienste TSE von mehreren Kassen genutzt SCHICHT 1 · DATENBANK Microsoft SQL Server Preisfindung, Lagerführung, Belegwandlung dieselbe Datenbank wie EULANDA Klassik Im kleinen Fall laufen alle Kästen auf einer Maschine. Am Bild ändert das nichts.

Warum diese Aufteilung

Jede Schicht löst ein anderes Problem.

Schicht 1

SQL Server – die Wahrheit

Preisfindung, Rabattstaffeln, Lagerbewegungen und Belegwandlung sind in Prozeduren und Sichten gekapselt. Das ist der Grund, warum die Weboberfläche rechnerisch dieselben Ergebnisse liefert wie der Windows-Client: Sie rechnet nicht selbst, sie fragt an.

Schicht 2

Dienste – das Spezialwissen

Geocoding und Routenberechnung, TSE für die Kassen, ein GPS-Treiber für Ortungsdaten. Diese Dienste stehen im LAN neben der Datenbank, weil sie entweder Hardware brauchen oder viele kleine Anfragen erzeugen.

Schicht 3

REST-Server – das Tor

Nimmt JSON entgegen, prüft Token und Rechte, ruft die Datenbank, gibt JSON zurück. Ein bis acht Instanzen hinter einem Balancer, je Instanz bis zu 64 Arbeitsprozesse – acht sind in der Praxis der vernünftige Wert. Ausser dem TSE-Dienst arbeitet alles in 64 Bit.

Schicht 4

Oberfläche – das Fenster

Ein HTML-Bestand, drei Betriebsarten: im Browser, als Windows-Fenster mit WebView2, als installierte App auf Tablet und Telefon. Der Seitencode kennt den Unterschied nicht – das ist Sache genau einer Weiche.

Sicherheit

Was gar nicht ankommt, kann nichts anrichten.

Der REST-Server nimmt keine SQL-Anweisungen entgegen. Es gibt keinen Parameter, in den man eine Abfrage schmuggeln könnte, weil keine Abfrage durchgereicht wird. Angriffe dieser Familie laufen ins Leere – nicht, weil sie gefiltert werden, sondern weil das Einfallstor fehlt.

  • Kopplung je Gerät – PIN einmal, danach ein Token im Gerät
  • Anmeldung mit Rolle, Rechte werden am Server durchgesetzt
  • Felder, die eine Rolle nicht sehen darf, gehen nicht über die Leitung
  • Registry-Zugriffe nur innerhalb einer festen Pfad-Erlaubnisliste
  • Wiederholte Fehlversuche werden gebremst, ohne den Server zu blockieren
  • Alles über HTTPS; für die App-Installation ohnehin Pflicht

Was eine Anfrage mitbringt

POST /api/v1/addresses
Authorization: Bearer 
Content-Type: application/json

{
  "match":  "EISENHANDLUNG",
  "name1":  "Eisenhandlung GmbH",
  "street": "Röderstraße 42",
  "zip":    "65183",
  "city":   "Wiesbaden",
  "country":"DE"
}

Feldnamen sind englisch und stabil. Was der Server daraus macht – welche Tabelle, welche Prozedur, welche Prüfung – bleibt seine Sache und kann sich ändern, ohne dass ein Aufrufer bricht.

Die Schnittstelle

359 Endpunkte, offen dokumentiert.

Die Oberfläche benutzt keine Abkürzung. Sie spricht dieselbe Schnittstelle, die auch Ihrem Shop, Ihrem Skript oder Ihrem Dienstleister offensteht. Wer sehen will, was möglich ist, klickt sich durch die interaktive Referenz.

Adressen Artikel Kontakte Belege Lager Einkauf Lieferanten Kasse Zahlungen Statistik Merkmale Bilder DMS Service-Artikel Routing Geocoding Firmenstamm Mitarbeiter Kataloge Lookups Nummernkreise Zahlungsbed. Registry Verwaltung Hintergrund-Läufe GoBD Plugins System

Delta-Abgleich

Stammdaten lassen sich über changedSince nachziehen, gelöschte Sätze über eine eigene Liste abgleichen. Wer täglich synchronisiert, holt nicht jedes Mal alles.

Gleiche Antwortform

Jede Antwort hat denselben Umschlag: gelungen oder nicht, Nutzlast, Fehlertext. Aufrufer müssen nicht je Route raten.

Läufe statt Zeitüberschreitung

Was zu lange dauert, wird zum Hintergrund-Lauf mit Zustand, Fortschritt, Abbruch und Wiederanlauf. Der Aufrufer holt das Ergebnis später ab.

Wachsen ohne Umbau

Reicht ein Server nicht mehr, kommt der zweite dazu. Der Balancer verteilt, die Datenbank bleibt die eine. Der Pilotbetrieb läuft derzeit mit mehreren hundert Geräten.

Sitzungen liegen nicht nur im Arbeitsspeicher, sondern werden in der Mandanten-Datenbank festgehalten. Ein Update kostet deshalb keine neue PIN-Eingabe an hundert Tablets.

Mehrere Mandanten, eine Anlage

Je Mandant eine Subdomain, dahinter ein eigener Zugang und eine eigene Datenbank. Geräte- und Anmelde-Token gelten ausschliesslich unter ihrem Mandanten – ein Token aus Haus A öffnet in Haus B gar nichts.

Ohne Konfigurationsdatei bleibt alles einmandantig; die Fähigkeit schaltet man zu, sie drängt sich nicht auf.

Plugins ziehen Routen nach

Ein Plugin meldet dem Server, welche Routen es mitbringt, und der Client bekommt daraus Menüpunkte, Kacheln und Aktionen. Weil das dynamisch geschieht, muss für eine neue Anbindung niemand die Suite neu bauen.

Angebunden werden kann alles, was REST oder GraphQL spricht – und serverseitig EDIFACT, ARIBA oder ein Gateway mit AS2 und SFTP.

Arbeit, die weiterläuft

Ein DATANORM-Import mit hunderttausend Artikeln passt in keine HTTP-Anfrage. Solche Vorgänge laufen in einem eigenen Arbeitsbereich des Servers weiter, auch wenn der Browser längst geschlossen ist.

Der Fortschritt steht in der Datenbank – deshalb sieht ihn auch der Kollege am anderen Standort.

Voraussetzungen

Was auf dem Blech laufen muss.

Nichts Exotisches. Wer heute EULANDA betreibt, hat das Meiste bereits stehen.

  • EULANDA-Standmindestens 2026.7 oder neuer, wenn Klassik und Suite parallel laufen sollen
  • DatenbankMicrosoft SQL Server, auch die kostenfreie Express-Ausgabe für kleine Anlagen
  • ServerWindows Server oder Windows-Rechner, 64 Bit
  • Arbeitsprozessebis 64 je REST-Instanz, acht sind der Regelfall
  • VerschlüsselungHTTPS; für die App-Installation zwingend
  • Endgeräteaktueller Browser, iPad, Android-Tablet, Windows-Rechner
  • KasseTSE-Dienst im LAN, gemeinsam für mehrere Kassen
  • Ortungoptional: GPS-Treiber, meldet direkt in die Datenbank

Fragen, die hier nicht beantwortet sind?

Wir reden gern mit Ihrer IT statt nur mit dem Einkauf. Sicherungskonzept, Netztrennung, Zertifikate, Lastverteilung – alles besprechbar.