Unser Autor Alexander Magg ist Projekt- verantwortlicher und Senior-Developer bei der PKS GmbH, Ravensburg
Mit Valence unterstützt CNX bereits seit elf Jahren IBM-i-Entwickler dabei, aus Greenscreen-Anwendungen mit ihrem angestaubtem Image native und moderne Web- und Mobilanwendungen zu erstellen. Dabei helfen praktische Entwicklungswerkzeuge wie Auto Code und App Builder, die den Umstieg von 5250-Anwendungen ins Web erleichtern.
Doch nach wie vor standen Valence-Kunden vor einer großen Herausforderung: aus einer gewachsenen 5250-Anwendung einzelne Web-Apps zu kreieren. Gerade bei wenig genutzten Programmen steht immer die Frage im Raum, ob sich die Umsetzung ins Web überhaupt lohnt – oder ob darauf nicht weiter über den Greenscreen zugegriffen werden sollte. Das Bedürfnis nach modernen GUIs, verschiedenen Eingabemethoden und verbesserten Prozessen wurde dank Valence zwar gestillt, jedoch bestand weiterhin der Bedarf an einer Kick-Start-Lösung für den Einstieg.
Dazu wurde jetzt ein Terminal-Emulator eingebaut. Er setzt direkt auf den Datenstrom der 5250-Anwendung auf und kann so die bestehende Anwendung ohne jegliche Modifikation im Browser zur Verfügung stellen. Der Nutzer wird beim Starten der Fusion5250-App automatisch in eine Terminal-Sitzung eingeloggt. Aus Sicht des Systems handelt es sich also um eine reguläre Telnet-Sitzung, jedoch mit verändertem Emulator. Über Websocket-Protokolle kommuniziert Fusion5250 nun mit dem Anwendungsjob und wandelt den Datenstrom im Browser in ein JSON-Segment um. Dies ermöglicht einen effizienten Austausch in beide Richtungen.
Ermöglicht wird die Arbeit von Fusion5250 durch Makros. Sie fungieren wie eine Fernbedienung, indem sie notwendige Eingaben des Anwenders nachahmen und direkt an vorher definierte Einstiegspunkte navigieren. Hierfür werden die Makros in einer schlichten JSON-Datei im IFS abgelegt. An die Fusion5250-App zurück melden sich die Makros dann mittels URL-Parameter. Aus diesem Vorgehen ergeben sich daher drei große Vorteile:
Durch die Fusion5250 App im Framework Valence schafft CNX zusätzliche Möglichkeiten, wie etwa das Bereitstellen von 5250-Anwendungen und Makros als Datenquellen für die Verwendung in eigenen Apps. Auch hybride Apps aus Fusion5250, versetzt mit nützlichen Zusatzinformationen in Form von Web-Apps, sind denkbar. Darüber hinaus arbeitet CNX bereits daran, Fusion5250 weiter auszubauen und es Nutzern zum Beispiel zu ermöglichen, Funktionstasten auch als „klickbare Links“ darzustellen. Somit ist es auch mit minimalem Aufwand möglich, bewährte 5250-Programme mit modernen Webanwendungen zu verschmelzen.
Bildquelle: PKS