Come: |
Lingue disponibili: reporting, Maintain
Trasforma un carattere a byte singolo o doppio presente in una stringa di caratteri in un altro carattere a seconda del valore decimale. Questa funzione risulta particolarmente utile per la modifica dei caratteri di sostituzione in caratteri non disponibili, o in caratteri difficili da emettere o non disponibili sulla propria tastiera. È possibile usare questa funzione per immettere caratteri difficili da introdurre, quando si risponde ad un comando Dialogue Manager - PROMPT, come la virgola o l'apostrofo. Elimina il bisogno di racchiudere le voci in virgolette singole.
Per utilizzare CTRAN, è necessario sapere il valore decimale dei caratteri nella rappresentazione interna del computer. Notare che il grafico di codifica per la conversione è dipedente dalla piattaforma, quindi le proprie opzioni di configurazione e la propria piattaforma determinano se si usa la codifica ASCII, EBCDIC, o Unicode.
Nelle configurazioni Unicode, questa funzione utilizza valore nell'intervallo:
CTRAN(length, source_string, decimal, dec_value, output)
dove:
Valore intero
Numero di caratteri della stringa d'origine, o un campo che contiene la lunghezza.
Alfanumerico
Stringa di caratteri da tradurre, racchiusa tra virgolette singole, oppure campo o variabile che contiene la stringa di caratteri.
Valore intero
Valore decimale ASCII o EBCDIC del carattere da trasformare.
Valore intero
Valore decimale ASCII o EBCDIC del carattere da utilizzare come sostituto per il decimale.
Alfanumerico
Nome del campo che contiene il risultato o formato del valore di emissione racchiuso tra virgolette singole”.
CTRAN traduce gli spazi in ADDRESS_LN3 (ASCII valore decimale 32) in caratteri di sottolineatura (ASCII valore decimale 95) e memorizza il risultato in ALT_ADDR:
TABLE FILE EMPLOYEE
PRINT ADDRESS_LN3 AND COMPUTE
ALT_ADDR/A20 = CTRAN(20, ADDRESS_LN3, 32, 95, ALT_ADDR);
BY EMP_ID
WHERE TYPE EQ 'HSM';
END
L'emissione è:
EMP_ID ADDRESS_LN3 ALT_ADDR ------ ----------- -------- 117593129 RUTHERFORD NJ 07073 RUTHERFORD_NJ_07073_ 119265415 NEW YORK NY 10039 NEW_YORK_NY_10039___ 119329144 FREEPORT NY 11520 FREEPORT_NY_11520___ 123764317 NEW YORK NY 10001 NEW_YORK_NY_10001___ 126724188 FREEPORT NY 11520 FREEPORT_NY_11520___ 451123478 ROSELAND NJ 07068 ROSELAND_NJ_07068___ 543729165 JERSEY CITY NJ 07300 JERSEY_CITY_NJ_07300 818692173 FLUSHING NY 11354 FLUSHING_NY_11354
CTRAN traduce gli spazi in ADDRESS_LN3 (EBCDIC valore decimale 64) in caratteri di sottolineatura (EBCDIC valore decimale 109) e memorizza il risultato in ALT_ADDR:
TABLE FILE EMPLOYEE
PRINT ADDRESS_LN3 AND COMPUTE
ALT_ADDR/A20 = CTRAN(20, ADDRESS_LN3, 64, 109, ALT_ADDR);
BY EMP_ID
WHERE TYPE EQ 'HSM'
END
L'emissione è:
EMP_ID ADDRESS_LN3 ALT_ADDR ------ ----------- -------- 117593129 RUTHERFORD NJ 07073 RUTHERFORD_NJ_07073_ 119265415 NEW YORK NY 10039 NEW_YORK_NY_10039___ 119329144 FREEPORT NY 11520 FREEPORT_NY_11520___ 123764317 NEW YORK NY 10001 NEW_YORK_NY_10001___ 126724188 FREEPORT NY 11520 FREEPORT_NY_11520___ 451123478 ROSELAND NJ 07068 ROSELAND_NJ_07068___ 543729165 JERSEY CITY NJ 07300 JERSEY_CITY_NJ_07300 818692173 FLUSHING NY 11354 FLUSHING_NY_11354___
WebFOCUS |