Trick 36: Umcodierungen testen


Aufgabe: Schnell mal eben prüfen, ob eine Umcodierung korrekt
         funktioniert.

Warum?  Im Index sieht man "mueller" statt "Müller". Das liegt daran,
        daß die Sonderzeichen über eine Tabelle umgewandelt werden.
        Auch in den Anzeige- und Exportparametern gibt es solche
        Tabellen. Darin können Fehler stecken oder unerwünschte
        Umwandlungen, die man ändern möchte. Jede Parameterdatei
        kann aber zwei Tabellen haben, die mit den p- bzw. q-
        Befehlen definiert werden. (Handbuch 10.2.4.1)

Methode 1 (schon lange existent): F7
---------
   In irgendeinem Datensatz ein Feld eingeben, in dem die fraglichen
   Sonderzeichen vorkommen. Dann F7. (Vorher speichern, wie bei DOS,
   ist nicht nötig!) Man sieht, was dabei rauskommt.
   In der Anzeige sieht man zudem, wie die Zeichen in den Display-
   parametern umgewandelt werden.
   Nachteil: An dieser Stelle muß man wissen, über welche der beiden
   Tabellen (p oder q) das betr. Feld für Index bzw. Anzeige
   umcodiert wird.
  

Methode 2 (NEU in V27): Der FLEX-Befehl  xcode
----------------------
   Einen Befehl in dieser Form eingeben:

      x var "zeichenfolge"\xcode ab\mes

   Dabei gilt:
       zeichenfolge: diejenigen Zeichen, deren Umcodierung man
                     prüfen will
       a: einer dieser Werte:
          d : Display-Parameter
          x : Export-Parameter
          i : Index-Parameter

       b: einer dieser beiden Werte
          p : p-Tabelle (incl. der P-Befehle)
          q : q-Tabelle (incl. der Q-Befehle)

   Damit kann man nun jede Tabelle ganz gezielt und genau testen.

   UND: In eigenen FLEXen kann man die Tabellenumwandlung mit ihren
        vielen Möglichkeiten einsetzen, um Zeichenfolgen in jeder
        denkbaren Weise umzuwandeln. Bisher mußte man umständlich eine
        Parameterdatei mit einem Abschnitt machen, in dem dann die
        Umcodierung ausgeführt wurde. Dazu wurde der Befehl  dow wX
        gebraucht. Jetzt ist sowas viel leichter.

   Zum Ausprobieren geben Sie mal:

   x var "äöüßÄÖÜ"\xcode iq\mes
   und dann dasselbe mit ip .