table alterTable

Scénario Standard : Nettoyage d'une table de campagne marketing

Scénario de test & Cas d'usage

Contexte Métier

Une équipe marketing vient d'importer les résultats d'une campagne publicitaire dans une table CAS. Pour préparer les données à la visualisation dans un rapport, il est nécessaire de standardiser la table : renommer les colonnes pour plus de clarté, ajouter un libellé à la table, supprimer les identifiants techniques inutiles et appliquer des formats lisibles pour les dates et les montants.
À propos du Set : table

Chargement, sauvegarde et gestion des tables en mémoire.

Découvrir toutes les actions de table
Préparation des Données

Création d'une table 'RAW_CAMPAIGN' simulant les données brutes d'interactions client.

Copié !
1DATA casuser.RAW_CAMPAIGN;
2 LENGTH cust_id $10 campaign_ref $15 product_sku $20;
3 FORMAT interaction_dt ddmmyy10.;
4 INPUT cust_id $ interaction_dt date. purchase_amt campaign_ref $ product_sku $;
5 DATALINES;
6CUST001 15JAN2024 150.75 CAMP_Q1_24 SKU_A5423
7CUST002 17JAN2024 89.99 CAMP_Q1_24 SKU_B9871
8CUST003 18JAN2024 299.50 CAMP_Q1_24 SKU_A5423
9CUST001 22JAN2024 45.20 CAMP_Q1_24 SKU_C1122
10;
11RUN;

Étapes de réalisation

1
Chargement de la table de données brutes dans la caslib de l'utilisateur.
Copié !
1PROC CASUTIL;
2 load DATA=casuser.RAW_CAMPAIGN outcaslib="casuser" casout="RAW_CAMPAIGN" replace;
3RUN;
4QUIT;
2
Application de toutes les transformations en un seul appel `alterTable` pour optimiser la préparation.
Copié !
1PROC CAS;
2 TABLE.alterTable /
3 caslib="casuser",
4 name="RAW_CAMPAIGN",
5 rename="Ventes_Campagne_T1_2024",
6 label="Résultats de la campagne marketing du 1er trimestre 2024",
7 drop={"campaign_ref", "product_sku"},
8 columns=[
9 {name="cust_id", rename="ID_Client", label="Identifiant Client Unique"},
10 {name="interaction_dt", rename="Date_Interaction", label="Date de la Transaction", FORMAT="DATE9." },
11 {name="purchase_amt", rename="Montant_Achat", label="Montant de l'Achat", format="EURO12.2"}
12 ],
13 columnOrder={"ID_Client", "Date_Interaction", "Montant_Achat"};
14RUN;
15QUIT;
3
Vérification des métadonnées de la nouvelle table pour valider les changements.
Copié !
1PROC CAS;
2 TABLE.columnInfo / TABLE={caslib="casuser", name="Ventes_Campagne_T1_2024"};
3RUN;
4QUIT;

Résultat Attendu


La table 'RAW_CAMPAIGN' est renommée en 'Ventes_Campagne_T1_2024' et possède un nouveau libellé. Les colonnes 'campaign_ref' et 'product_sku' sont supprimées. Les colonnes restantes sont renommées, formatées, libellées et réorganisées. L'appel à `columnInfo` doit afficher la nouvelle structure avec les noms 'ID_Client', 'Date_Interaction', 'Montant_Achat' dans cet ordre, avec leurs formats et libellés respectifs.