HINPUT : Convertir une chaîne alphanumérique en valeur de date-heure

Comment :

Langages disponibles : reporting, Maintain

La fonction HINPUT convertit une chaîne alphanumérique à une valeur date-heure.


Haut de page

x
Syntaxe : Transformer une chaîne alphanumérique en valeur date-heure
HINPUT(source_length, 'source_string', output_length, output)

où :

source_length

Entier

est le nombre de caractères dans la chaîne source à convertir. Vous pouvez fournir la valeur réelle, le nom d'un champ numérique contenant la valeur ou une expression qui renvoie celle-ci.

source_string

Alphanumérique

est la chaîne alphanumérique à convertir entre guillemets simples, le nom d'un champ alphanumérique contenant la chaîne de caractères ou une expression qui renvoie celle-ci. La chaîne peut contenir n'importe quelle valeur saisie date-heure valide.

output_length

Entier

est la longueur de la valeur date-heure renvoyée. Voici les valeurs valables :

  • 8 indique une valeur d'heure qui comprend un à trois chiffres décimaux (millisecondes).
  • 10 indique une valeur d'heure qui comprend quatre à six chiffres décimaux (microsecondes).
  • 12 indique une valeur d'heure qui comprend sept à neuf chiffres décimaux (nanosecondes).
output

Date-heure

est la valeur date-heure renvoyée. est le champ qui contient le résultat, ou le format entier de la valeur de sortie entre guillemets simples. Le format doit être au format date-heure (type de données H).



Exemple : Convertir une chaîne alphanumérique en valeur date-heure (Reporting)

HCNVRT convertit le champ TRANSDATE à un format alphanumérique, puis HINPUT convertit la chaîne alphanumérique à une valeur date-heure :

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

La sortie est :

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


Exemple : Convertir une chaîne alphanumérique en valeur date-heure (Maintain)

HINPUT convertit le champ DT1 au format alphanumérique :

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

WebFOCUS