DFSORT (programma di ordinamento IBM Mainframe)
OPTION COPY
INREC BUILD=(1,80,TRAN=ALTSEQ)
Nessuna istruzione di controllo SORT può iniziare nella prima colonna.
Affinché quanto sopra funzioni da solo, dovresti modificare la tabella di traduzione alternativa di installazione predefinita, per compensare tutti i valori per le lettere maiuscole e minuscole, avvolgendo le ultime due lettere.
Senza modificare la tabella predefinita, richiederebbe un'istruzione ALTSEQ che elenca tutte le coppie richieste di valori esadecimali (da codice esadecimale immediatamente seguito da codice esadecimale, ogni coppia di valori esadecimali separati da una virgola):
OPTION COPY
INREC BUILD=(1,80,TRAN=ALTSEQ)
ALTSEQ CODE=(xxyy,...)
Quindi, per ottenere le maiuscole EBCDIC da A a C e da B a D:
CODICE ALTSEQ = (C1C3, C2C4)
Nel complesso, sarebbe una grande quantità di errori, ovviamente, quindi useresti un altro passo SORT per generare le carte di controllo per questo passo e lasceresti che SORT le leggesse dal set di dati creato da quel nuovo passo.
Naturalmente, per qualsiasi lingua che supporti una "tabella di traduzione", è facile come cambiare la tabella di traduzione. Bel programma COBOL, con una Codepage specifica, e potrebbe essere fatto in una riga del codice di procedura COBOL (più le righe obbligatorie di COBOL che vanno con tutto ... non così tante in questo caso particolare).
Oh, 1,80 è "l'immagine della carta" che conterrà il testo. Probabilmente tutto in maiuscolo alla prima manche ...
x=z, y=a, z=b
?