Bidirektionale Benutzerschnittstellen in WebFacing

WebFacing bietet die Möglichkeit, die bestehende bidirektionale Unterstützung bei einer 5250-Anwendung beizubehalten, wenn die Anwendung für das Web konvertiert wird.

Computersysteme können Text und Benutzerschnittstellenelemente von links nach rechts (dies ist im Englischen der Fall) oder von rechts nach links verarbeiten. Software, die diese Sprachen handhaben kann, verfügt deshalb über bidirektionale Unterstützung.

Da bestehende 5250-Anwendungen oft bereits für die bidirektionale Unterstützung aktiviert sind, erfordert die Konvertierung dieser Anwendungen besondere Schritte, um sicherzustellen, dass der WebFacing-Prozess die Richtung der Eingabeanzeigen korrekt interpretiert.

Überlegungen zur bidirektionalen Unterstützung

Die folgenden Elemente beispielsweise können sich je nach Richtung (von links nach rechts oder von rechts nach links) ändern:
  • die Anzeige von bidirektionalem Text
  • die relative Position von HTML-Elementen einschließlich Tabellenspalten
  • die Reihenfolge für die Navigation per Tab-Taste für die Cursorsteuerung über die Benutzerschnittstelle (der Fokus wechselt von einem Fensterobjekt zum nächsten)
  • die Cursorsequenz in einem Feld
  • die Position einer Schiebeleiste oder eines Hilfeprogrammknopfs in Bezug auf das Fensterobjekt, das von ihr/ihm gesteuert wird

Webtechnologie wie beispielsweise HTML und XHTML bietet bidirektionale Unterstützung über das gängige Basisrichtungsattribut dir, das den Wert ltr (left-to-right: von links nach rechts) oder rtl (right-to-left: von rechts nach links) aufweisen kann. Dieses Attribut kann auf eine Reihe unterschiedlicher Tags angewendet werden; die Wirkung hängt vom jeweiligen Fensterobjekttyp ab. Untergeordnete Elemente übernehmen das Verhalten des übergeordneten Elements. Um beispielsweise die Basisrichtung des gesamten HTML-Dokuments mit "von rechts nach links" zu definieren, würden Sie das Attribut auf den Tag <html> anwenden: <html dir="rtl">.

In DDS sind drei Schlüsselwörter verfügbar, die das Richtungsverhalten steuern:
  • Mit DSPRL kann die Anzeigerichtung in Anzeigen symmetrisch von "von links nach rechts" in "von rechts nach links" umgekehrt werden.
  • Mit CHECK(RLTB) wird angegeben, dass der Cursor von rechts nach links und von oben nach unten in das nächste Feld springt.
  • Mit CHECK(RL) wird festgelegt, dass sich der Cursor von rechts nach links durch ein Feld bewegt.
Das WebFacing Tool wendet eine eindeutige Gruppe von Richtlinien auf die Konvertierung und Aktivierung bidirektionaler Benutzerschnittstellen an. Nachfolgend werden einige der grundlegenden Prinzipien erläutert:
  • Das selten verwendete Schlüsselwort DSPRL wird nicht unterstützt, und in der WebFacing-HTML-Seite gilt stets die Dokumentrichtung "von links nach rechts".
  • Wird das Schlüsselwort CHECK(RLTB) angegeben, ordnet WebFacing die Werte für den Tabulatorindex auf Basis eines Rasters (siehe unten) zu.
  • Bei jedem Feld, für das das Schlüsselwort CHECK(RL) angegeben wurde, wird der generierten HTML des Felds das Attribut dir="rtl" zugeordnet.

Layoutraster für den Tabulatorindex

Fensterobjekte (z. B. Elemente wie Felder und Hyperlinks), auf die über die Tabulatortaste zugegriffen werden soll, können als Tabulatorindex zugeordnet werden. Die meisten Browser setzen eine standardmäßig vorgegebene Reihenfolge für den Tabulatorindex voraus, bei der der Cursor von links nach rechts und von oben nach unten durch alle Fensterobjekte, die per Tabulatortaste erreicht werden können, bewegt wird.

Bei 5250-Anzeigen, bei denen das Schlüsselwort CHECK(RLTB) verwendet wird, ordnet WebFacing einen Tabulatorindex zu, um die Reihenfolge für die Navigation per Tab-Taste, die mit "von rechts nach links" festgelegt ist, ordnungsgemäß auf einer HTML-Seite zu implementieren, für die die Reihenfolge "von links nach rechts" definiert ist. Diese Tabulatorindizes werden auf der Basis der DDS-Zeilen- und Spaltenposition zugeordnet. Damit Platz zum Verschieben von Feldern außerhalb ihrer DDS-Positionen, die auf maximal 27 Zeilen und 132 Spalten beschränkt sind, vorhanden ist, verwendet WebFacing ein Raster mit 132 Zeilen und 250 Spalten. (Der Maximalwert für das Attribut tabindex ist 32767.)
WebFacing-Tabulatorindexraster für bidirektionale Anwendungen

Bei folgenden Gelegenheiten ist es wichtig, die Funktionsweise des Rasters für den Tabulatorindex zu kennen:
  • beim Hinzufügen eigener Tabulatorfensterobjekte über Webeinstellungen oder über direktes Editieren von WebFacing-JSP-Dateien
  • bei Verwendung von CSS-P, um ein Tabulatorfensterobjekt weit genug zu bewegen, dass sich seine relative Position in der Tabulatorindexfolge ändert

Werden neue Tabulatorfelder über Webeinstellungen hinzugefügt, können Sie mit der Substitutionsvariable &{TABINDEX} arbeiten. Dadurch wird die korrekte Tabulatorindexfolge für Ihr Fensterobjekt zum Zeitpunkt der Konvertierung berechnet.

Anmerkung: Die Codepage Arabic 420 EBCDIC verfügt nicht über die folgenden Zeichen:
{ }
[ ]
Deshalb wird die Substitutionsvariable für den Tabulatorindex nicht für Member unterstützt, die die Codepage Arabic 420 verwenden; dasselbe gilt auch für andere Javascript-Konstrukte (beispielsweise Arrays), die auf diesen Zeichen basieren.
Zugehörige Tasks
Registerfolge für bidirektionale Anwendungen definieren

Feedback