Mit diesem Formular können Sie fehlende, unklare oder fehlerhafte Inhalte in der Dokumentation melden und Verbesserungsvorschläge machen. Ihr Feedback hilft uns, die Qualität und Vollständigkeit kontinuierlich zu verbessern.
Technische Kommunikation zwischen Endgerät und BC
Die grundsätzliche Funktionsweise der Übertragung von Daten zwischen dem MDE-Gerät und BC basiert auf temporären Tabellen.
Dazu wird eine temporäre Kopie des MDE-Designer-Kopfs (allgemeine Informationen) und dessen Zeilen erstellt. Initial immer ausgehend vom ersten Designer, auf Basis der Sortierung (siehe Menü). Oder, sofern abweichend in der "Geräte Einrichtung" eingerichtet, von einem anderen Designer Kopf.
Diese temporäre Kopie wird in eine JSON-Datei umgewandelt und an das MDE-Gerät gesendet. Nachdem Sie ein Steuerelement validiert haben (Button gedrückt oder Enter in einem Textfeld), erzeugt die MDE-Anwendung erneut eine JSON-Datei aus den Steuerelementen und füllt die Spalte "Value" mit den Benutzereingaben. Das validierte Element wird mit "Validiert von Gerät" gekennzeichnet.
Das System erkennt ausschließlich validierte Steuerelemente. unitop ermittelt bzw. nutzt auf Basis der dahinterliegenden Prozessbeziehung den entsprechenden Designer. Hierbei werden temporäre Tabellen gelöscht, mit dem ausgewählten Designer gefüllt und wieder an das MDE-Gerät gesendet.
Befinden Sie sich bereits in einem Prozess, wird anhand der Prozess-Id die entsprechende Codeunit aus der Prozessbeziehung ermittelt und ausgeführt. In diesem Fall obliegt es der Entwicklungsabteilung, die entsprechenden Schritte zu setzen und (wenn nötig) den Designer manuell zu wechseln.
Aufgrund der zustandslosen Kommunikation per Webservices ist jede Übertragung in einer eigenen Session zu betrachten. Das bedeutet, dass Business Central keinerlei Daten speichert, wenn keine Validierung erfolgt ist. Erst wenn ein Entwickler alle notwendigen Informationen gesammelt hat (z. B.: Artikel, Variante, Menge und Ziel-Lagerort) wird eine Lagereinlagerung erstellt. Das bedeutet im Umkehrschluss, dass diese Informationen im Designer verbleiben müssen. Dazu können klassisch Textboxen (schreibgeschützt oder unsichtbar) verwendet werden oder alternativ befinden sich zwei Felder im Designer Kopf zur freien Nutzung. Ebenfalls im Designer Kopf kann ein RecordRef abgelegt werden, der einen Datensatz in einer Tabelle identifiziert. Fertige Funktionen stehen dazu in der Codeunit "MDE Process" zur Verfügung. Hierbei ist es nicht notwendig auf diese o. g. temporären Tabellen zuzugreifen.
Daten
Der "Designer Kopf" beinhaltet weitere Felder, die ausschließlich zur Kommunikation an das MDE-Gerät verwendet werden.
- Benutzer Anmeldung: Individueller Login
- Benutzer ID: Windows User, der dem MDE hinterlegt wurde
- Benutzerdrucker: Drucker aus der Druckerauswahl
- Prozess-ID: Aktueller Prozess (Bei Menü "0")
- Schritt: Aktueller Schritt
- Datensatz-ID/Tabellen-ID: Ein RecRef kann im Kopf gespeichert werden
- Datenpuffer 1, Datenpuffer 2: Text-Speicher je 250 Zeichen.
In der Designer-Zeile befinden sich folgende zusätzliche Felder:
- Validiert von Gerät: Identifiziert eindeutig das validierte Control
- Geändert von Gerät: Markiert alle Steuerelemente, deren Wert sich vom Vorgabewert unterscheidet
- Wert: Wert des Steuerelements, bei Listen die selektierte Zeilennummer
- Sichtbar: Blendet Felder aus Bis auf "Sichtbar" werden alle Felder bei der Übertragung an dem MDE zurückgesetzt und auch von diesem gefüllt.
Hinweis
Bei der Umwandlung von Kopf und Zeilen in das JSON-Format, werden alle Spalten übermittelt. Legt ein Entwickler ein neues Feld in einer der beiden Tabellen an, so wird dies das Kommunikationsprotokoll beeinträchtigen.
Codeunits
- MDE Service: Webservice nach außen sichtbar. Entpackt die Daten vom MDE und legt diese als temporäre Tabellen in MDE-Prozess. Nimmt Dateien/Bilder entgegen und kann diese dem MDE wieder bereitstellen.
- MDE Helper: Beinhaltet Funktionen zur Konvertierung. Hilfsfunktionen für den Designer.
- MDE Process: Beinhaltet die temporäre Kopie des Designers und stellt alle Standardfunktionen bereit, die Daten auszulesen und zu manipulieren.
- MDE Printqueue: Verarbeitet die Druckerwarteschlangen Einträge.