HINPUT: Conversione di una stringa alfanumerica in un valore data-ora

Come:

Lingue disponibili: reporting, Maintain

La funzione HINPUT converte una stringa alfanumerica in un valore data-ora.


Inizio pagina

x
Sintassi: Come convertire una stringa alfanumerica in un valore data-ora
HINPUT(source_length, 'source_string', output_length, output)

dove:

source_lenght

Valore intero

Numero di caratteri contenuti nella stringa d'origine da convertire. È possibile fornire il valore effettivo, il nome del campo numerico che contiene il valore o un'espressione che restituisce il valore.

source_string

Alfanumerico

La stringa alfanumerica da convertire, racchiusa tra virgolette singole, il nome di un campo alfanumerico che contiene la stringa o una espressione che restituisce la stringa. La stringa può consistere di qualsiasi valore d'immissione data-ora.

output_lenght

Valore intero

Lunghezza del valore data-ora restituito. I valori validi sono:

  • 8 indica un valore ora che include da una a tre cifre decimali (millisecondi).
  • 10 indica un valore ora che include da quattro a sei cifre decimali (microsecondi).
  • 12 indica un valore ora che include da sette a nove cifre decimali (nanosecondi).
emissione

Data-ora

Il valore ora-data restituito. Un campo che contiene il risultato, o il formato del valore di emissione racchiuso tra virgolette singole. Il formato deve essere nel formato data- ora (tipo di dati H).



Esempio: Conversione di una stringa alfanumerica in un valore data-ora (Reporting)

HCNVRT converte il campo TRANSDATE in un formato alfanumerico, quindi HINPUT converte la stringa alfanumerica in un valore data-ora:

TABLE FILE VIDEOTR2
PRINT CUSTID TRANSDATE AS 'DATE-TIME' AND COMPUTE
ALPHA_DATE_TIME/A20 = HCNVRT(TRANSDATE, '(H17)', 17, 'A20');
DT_FROM_ALPHA/HYYMDS = HINPUT(14, ALPHA_DATE_TIME, 8, 'HYYMDS');
WHERE DATE EQ 2000;
END

L'emissione è:

CUSTID  DATE-TIME         ALPHA_DATE_TIME       DT_FROM_ALPHA
------  ---------         ---------------       -------------
1237    2000/02/05 03:30  20000205033000000     2000/02/05 03:30:00
1118    2000/06/26 05:45  20000626054500000     2000/06/26 05:45:00


Esempio: Conversione di una stringa alfanumerica in un valore data-ora (Maintain)

HINPUT converte il campo DT1 in formato alfanumerico:

MAINTAIN FILE DATETIME
COMPUTE
RESULT/HMtDYYmA = HINPUT(20,'19971029133059888999',10,RESULT);
TYPE RESULT;
END

WebFOCUS