Eigene Sortierreihenfolge

Man hat in Cobol die Möglichkeit, eigene Sortierreihenfolgen festzulegen. Dies ist vor allem dann von Vorteil, wenn man Dateien zu verarbeiten hat, die nicht nach den spezifizierten Sortierreihenfolgen von Cobol sortiert sind.
Die Möglichkeit, eigene Sortierreihenfolgen zu definieren, wird durch die PROGRAM COLLATING SEQUENCE-Klausel ermöglicht und soll im Folgenden an einem Beispiel erläutert werden:

     IDENTIFICATION DIVISION.
        PROGRAM-ID. Beispiel.
        AUTHOR. StefanK.
     ENVIRONMENT DIVISION.
     CONFIGURATION SECTION.
        SOURCE-COMPUTER. PC.
        OBJECT-COMPUTER. PC.
        PROGRAM COLLATING SEQUENCE IS Alpha-Neu.
     SPECIAL-NAMES.
        Alpha-Neu IS "A" THRU "M"
                     "a" THRU "z"
                     "=?!§"

                 :
                 :
                 : 

In dieser Sortierreihenfolge sind die Großbuchstaben A bis M, alle kleinen Buchstaben und die Sonderzeichen |.=.|.?.|.!.|.§.| zugelassen. In dieser Reihenfolge wird dann auch sortiert.

...

Natürlich ist so auch unter der Sortierreihenfolge ASCII die eigentliche Reihenfolge veränderbar. Dies funktioniert genau wie oben:

     IDENTIFICATION DIVISION.
        PROGRAM-ID. Beispiel-1.
        AUTHOR. StefanK.
     ENVIRONMENT DIVISION.
     CONFIGURATION SECTION.
        SOURCE-COMPUTER. PC.
        OBJECT-COMPUTER. PC.
        PROGRAM COLLATING SEQUENCE IS Reihe.
     SPECIAL-NAMES.
        Reihe IS "z" "y" "x" "w" "v" "u" ..... "a".
		
                 :
                 :
                 : 

Hier wird das Alphabet rückwärts definiert. "z" hat den kleinsten Wert und "a" den höchsten. Normalerweise wär's umgekehrt.

...