OVRLAY: Sovrapposizione di una stringa di caratteri

Come:

Lingue disponibili: reporting

La funzione OVRLAY sovrappone una stringa di caratteri di base con una sottostringa. La funzione consente di modificare parte di un campo alfanuemerico senza sostituire il campo intero.


Inizio pagina

x
Sintassi: Come sovrapporre una stringa di caratteri
OVRLAY(source_string, length, substring, sublen, position, output)

dove:

source_string

Alfanumerico

Stringa di caratteri di base.

stringlen

Valore intero

Numero di caratteri in source_string e output, o un campo che contiene la lunghezza. Se questo argomento è inferiore o uguale a 0, si verificano risultati imprevedibili".

substring

Alfanumerico

Sottostringa che si sovrapporrà a source_string.

sublen

Valore intero

Numero di caratteri in substring, o un campo che contiene la lunghezza. Se questo argomento è inferiore o uguale a 0, la funzione restituisce degli spazi.

posizione

Valore intero

Posizione in source_string alla quale inizia la sovrapposizione. Se questo argomento è inferiore o uguale a 0, la funzione restituisce degli spazi. Se questo argomento è maggiore di stringlen, la funzione restituisce la stringa d'origine.

emissione

Alfanumerico

Nome del campo che contiene il risultato o il formato del valore di emissione racchiuso tra virgolette singole. Se la stringa sovrapposta è più lunga del campo di emissione, la stringa è troncata per adattarsi al campo.

Si noti che se la stringa sovrapposta è più lunga del campo di emissione, la stringa è troncata per adattarsi al campo.



Esempio: Sostituzione di caratteri in una stringa di caratteri

OVRLAY sostituisce gli ultimi tre caratteri di EMP_ID con CURR_JOBCODE, per creare un nuovo codice identificazione di protezione e memorizza il risultato in NEW_ID:

TABLE FILE EMPLOYEE
PRINT EMP_ID AND CURR_JOBCODE AND COMPUTE
NEW_ID/A9 = OVRLAY(EMP_ID, 9, CURR_JOBCODE, 3, 7, NEW_ID);
BY LAST_NAME BY FIRST_NAME
WHERE DEPARTMENT EQ 'MIS';
END

L'emissione è:

LAST_NAME        FIRST_NAME  EMP_ID     CURR_JOBCODE  NEW_ID
---------        ----------  ------     ------------  ------
BLACKWOOD        ROSEMARIE   326179357  B04           326179B04
CROSS            BARBARA     818692173  A17           818692A17
GREENSPAN        MARY        543729165  A07           543729A07
JONES            DIANE       117593129  B03           117593B03
MCCOY            JOHN        219984371  B02           219984B02
SMITH            MARY        112847612  B14           112847B14

WebFOCUS