Publié le :

Manipulation de dates avec INTNX

Ce code est également disponible en : English Español
En attente de validation
Le script génère une table de travail 'FUNCAO_INTNX' à partir de la table système 'SASHELP.SHOES'. Il attribue une date de référence ('DT_INI') spécifique à chaque région géographique via une série de conditions. Ensuite, la fonction 'INTNX' est utilisée pour calculer une date finale ('dt_final') en ajoutant 2 mois à la date initiale et en positionnant le résultat à la fin du mois. Une requête SQL finale liste les régions distinctes disponibles.
Analyse des données

Type : SASHELP


Utilisation exclusive de la table exemple SASHELP.SHOES.

1 Bloc de code
DATA STEP Data
Explication :
Création de la table FUNCAO_INTNX. Initialisation de la variable DT_INI via la fonction MDY selon la région, puis calcul de dt_final en avançant de 2 intervalles 'month' (mois) et en s'alignant sur la fin du mois ('end').
Copié !
1DATA FUNCAO_INTNX;
2 SET SASHELP.SHOES;
3 IF REGION = "Africa" THEN DT_INI = MDY(01,01,2021);
4 IF REGION = "Asia" THEN DT_INI = MDY(02,01,2021);
5 IF REGION = "Canada" THEN DT_INI = MDY(03,01,2021);
6 IF REGION = "Central America/Caribbean" THEN DT_INI = MDY(04,01,2021);
7 IF REGION = "Eastern Europe" THEN DT_INI = MDY(05,01,2021);
8 IF REGION = "Middle East" THEN DT_INI = MDY(06,01,2021);
9 IF REGION = "Pacific" THEN DT_INI = MDY(07,01,2021);
10 IF REGION = "South America" THEN DT_INI = MDY(08,01,2021);
11 IF REGION = "United States" THEN DT_INI = MDY(09,01,2021);
12 IF REGION = "Western Europe" THEN DT_INI = MDY(10,01,2021);
13
14 dt_final = intnx("month",DT_INI,2,"end");
15
16 FORMAT dt_ini dt_final date9.;
17 
18RUN;
2 Bloc de code
PROC SQL
Explication :
Extraction et affichage de la liste des valeurs uniques de la colonne REGION depuis la table source.
Copié !
1PROC SQL;
2 SELECT DISTINCT REGION FROM SASHELP.SHOES;
3 
4QUIT;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.