DPART : Extraire un composant à partir d'une date

Comment :

La fonction DPART extrait un composant spécifique d'un champ date et le renvoie en format numérique.

Puisque le Gestionnaire de dialogue interprète une date comme alphanumérique ou numérique, et que DPART nécessite une date standard stockée comme décalage de la date de base, n'utilisez pas DPART avec le Gestionnaire de dialogue à moins que vous ne convertissiez d'abord la variable comme date de saisie à un décalage à partir de la date de base.

Pour plus d'informations, consultez Appeler une fonction à partir d'une commande Dialog Manager.

Langages disponibles : reporting, Maintain


Haut de page

x
Syntaxe : Extraire un composant date et le renvoyer sous le format d'entier
DPART (datevalue, 'component', output)

où :

datevalue

Date

est une date de composant complète.

component

Alphanumérique

est le nom du composant à extraire, entouré par des guillemets simples. Voici les valeurs valables :

Pour l'année : YEAR, YY

Pour le mois : MOIS, MM

Pour le jour : DAY, pour le jour du mois : DAY-OF-MONTH, DD.

Pour un jour de la semaine : WEEKDAY, WW.

Pour le trimestre : QUARTER, QQ

output

Entier

est le champ qui contient le résultat, ou le format entier de la valeur de sortie entre guillemets simples.



Exemple : Extraire des composants date sous le format d'entier

La requête suivante avec la source de données VIDEOTRK utilise la fonction DPART pour extraire le composant Année, Mois et Jour du champ TRANSDATE :

DEFINE FILE
 VIDEOTRK                       
 YEAR/I4 = DPART(TRANSDATE, 'YEAR', 'I11');
 MONTH/I4 = DPART(TRANSDATE, 'MM', 'I11'); 
 DAY/I4 = DPART(TRANSDATE, 'DAY', 'I11');  
END                                        
                                           
TABLE FILE VIDEOTRK                        
PRINT TRANSDATE YEAR MONTH DAY             
BY LASTNAME BY FIRSTNAME                   
WHERE LASTNAME LT 'DIAZ'                   
END

La sortie est :

LASTNAME         FIRSTNAME   TRANSDATE  YEAR  MONTH   DAY
--------         ---------   ---------  ----  -----   ---
ANDREWS          NATALIA     91/06/19   1991      6    19
                             91/06/18   1991      6    18
BAKER            MARIE       91/06/19   1991      6    19
                             91/06/17   1991      6    17
BERTAL           MARCIA      91/06/23   1991      6    23
                             91/06/18   1991      6    18
CHANG            ROBERT      91/06/28   1991      6    28
                             91/06/27   1991      6    27
                             91/06/26   1991      6    26
COLE             ALLISON     91/06/24   1991      6    24
                             91/06/23   1991      6    23
CRUZ             IVY         91/06/27   1991      6    27
DAVIS            JASON       91/06/24   1991      6    24

WebFOCUS