addFmtLib
Privilèges administrateur requis
Cette action nécessite des droits élevés sur l'environnement SAS Viya.
Code d'élévation : proc cas; accessControl.assumeRole / adminRole="superuser"; run;
Description
L'action addFmtLib permet d'ajouter une bibliothèque de formatsInstructions de présentation appliquées aux valeurs des variables pour modifier leur apparence (dates, monnaies, libellés) sans altérer la donnée stockée dans les tables SAS Viya. définie par l'utilisateur à la session CASConnexion temporaire entre un client et le serveur Cloud Analytic Services. Elle alloue des ressources dédiées pour l'exécution distribuée de tâches analytiques et la gestion des tables en mémoire. active. C'est l'outil magique pour que vos tableaux de bord affichent des libellés élégants plutôt que de tristes codes techniques ! 🧙♂️ Notez que si vous souhaitez promouvoir ces formatsInstructions de présentation appliquées aux valeurs des variables pour modifier leur apparence (dates, monnaies, libellés) sans altérer la donnée stockée dans les tables SAS Viya. au niveau global, vous devrez probablement activer vos droits d'administrateur .
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| caslib | Spécifie la caslib où réside la bibliothèque de formats à charger. Attention : ne pas utiliser simultanément avec le paramètre `path`. |
| fmtLibName | Définit le nom en mémoire de la bibliothèque de formats (la longueur est limitée à 63 caractères maximum). |
| fmtSearch | Détermine l'ordre de recherche de la bibliothèque de formats. Les options possibles sont APPEND (par défaut, à la fin), INSERT (au début), NONE (aucune position définie) ou REPLACE (remplace la liste existante). |
| name | Le nom de la table ou du fichier (par exemple avec l'extension .sashdat) contenant les formats dans la caslib. Ne pas utiliser conjointement avec `path`. |
| path | Le chemin d'accès absolu vers la bibliothèque de formats (doit être accessible depuis le nœud de contrôle du serveur CAS). Exclusif avec `name` ou `caslib`. |
| promote | Si défini sur TRUE, promeut la bibliothèque de formats à une portée globale (accessible par d'autres sessions). Cela requiert généralement des privilèges d'administrateur. |
| replace | Si défini sur TRUE, remplace une bibliothèque de formats existante portant exactement le même nom. La valeur par défaut est FALSE. |
Préparation des données
Préparation : Création et sauvegarde d'une bibliothèque de formats
Pour pouvoir ajouter une bibliothèque depuis une caslib, il nous faut d'abord en créer une. Voici comment créer une table de formats (.sashdat) prête à l'emploi.
| 1 | PROC FORMAT casfmtlib="tmpfmt"; |
| 2 | value $sexeFmt 'M'='Homme' 'F'='Femme'; |
| 3 | value ageFmt 0-18='Mineur' 19-high='Majeur'; |
| 4 | RUN; |
| 5 | PROC CAS; |
| 6 | /* Sauvegarde physique de la bibliothèque de formats */ |
| 7 | sessionProp.saveFmtLib / |
| 8 | fmtLibName="tmpfmt" |
| 9 | caslib="Public" |
| 10 | name="mesformats_rh.sashdat" |
| 11 | replace=True; |
| 12 | /* Nettoyage de la bibliothèque temporaire de la session */ |
| 13 | sessionProp.dropFmtLib / fmtLibName="tmpfmt"; |
| 14 | QUIT; |
Exemples d'utilisation
Ajout standard d'une bibliothèque de formats à la session
Ce code charge la bibliothèque de formats depuis le fichier physique de la caslib et l'ajoute à la liste de recherche courante.
| 1 | PROC CAS; |
| 2 | sessionProp.addFmtLib / |
| 3 | caslib="Public" |
| 4 | name="mesformats_rh.sashdat" |
| 5 | fmtLibName="formats_rh_session" |
| 6 | fmtSearch="APPEND"; |
| 7 | QUIT; |
Résultat Attendu :
Promotion d'une bibliothèque de formats au niveau global
Idéal pour le déploiement en production ! Nous chargeons les formats, les écrasons s'ils existent, les rendons globaux (disponibles pour tous) et les plaçons en priorité de recherche (INSERT). N'oubliez pas que cela nécessite d'élever vos privilèges.
| 1 | PROC CAS; |
| 2 | /* Élévation des droits pour pouvoir promouvoir la bibliothèque */ |
| 3 | ACCESSCONTROL.assumeRole / adminRole="superuser"; |
| 4 | sessionProp.addFmtLib / |
| 5 | caslib="Public" |
| 6 | name="mesformats_rh.sashdat" |
| 7 | fmtLibName="formats_rh_globaux" |
| 8 | promote=True |
| 9 | replace=True |
| 10 | fmtSearch="INSERT"; |
| 11 | QUIT; |