sessionProp

addFmtLib

##admin ##admin_required ##set_sessionprop
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 .

Syntaxe Officielle
sessionProp.addFmtLib <result=results> <status=rc> /
caslib="string",
fmtLibName="string",
fmtSearch="APPEND" | "INSERT" | "NONE" | "REPLACE",
name="table-name",
path="string",
promote=TRUE | FALSE,
replace=TRUE | FALSE;

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.

1PROC FORMAT casfmtlib="tmpfmt";
2 value $sexeFmt 'M'='Homme' 'F'='Femme';
3 value ageFmt 0-18='Mineur' 19-high='Majeur';
4RUN;
5PROC 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";
14QUIT;

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.

1PROC CAS;
2 sessionProp.addFmtLib /
3 caslib="Public"
4 name="mesformats_rh.sashdat"
5 fmtLibName="formats_rh_session"
6 fmtSearch="APPEND";
7QUIT;
Résultat Attendu :
La bibliothèque 'formats_rh_session' est chargée en mémoire pour votre session. Les formats qu'elle contient seront recherchés en dernier recours (APPEND).
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.

1PROC 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";
11QUIT;
Résultat Attendu :
La bibliothèque de formats est mise à disposition de l'ensemble des utilisateurs du serveur CAS. Si plusieurs bibliothèques ont des formats de même nom, celle-ci aura la priorité car elle a été ajoutée avec l'option INSERT.