loadFcmpTable
Description
L'action `loadFcmpTable` permet de charger une seule table FCMPProcédure de création de fonctions et sous-programmes personnalisés réutilisables. Elle permet d'étendre le langage SAS et de partager des logiques métier complexes entre différentes étapes DATA. (SAS Functions CompilerLe SAS Functions Compiler (FCMP) est un outil permettant de créer, compiler et stocker des fonctions et sous-routines personnalisées réutilisables dans les procédures et le DATA step de SAS Viya.) en mémoireGemini said
Espace de stockage temporaire (RAM) utilisé par le moteur CAS pour charger et traiter les données à haute vitesse, minimisant les accès disque pour optimiser les performances de SAS Viya. dans CAS. C'est l'étape indispensable pour pouvoir utiliser vos fonctions personnalisées dans un environnement distribué et éviter de réinventer la roue ! 🧙♂️ Source :
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| caslib | Spécifie la caslib (bibliothèque CAS) à partir de laquelle charger la table. |
| promote | Lorsqu'il est défini sur True, la table est ajoutée avec une portée globale et devient une véritable star accessible par d'autres sessions (sous réserve des contrôles d'accès) 🌟. La caslib cible doit également avoir une portée globale. Par défaut : False. |
| replace | Spécifie s'il faut écraser sans pitié une vue ou une table existante portant le même nom. À utiliser avec précaution ! Par défaut : False. |
| table | (Paramètre Requis) Spécifie le nom exact de la table FCMP à charger en mémoire. |
Préparation des données
Création d'une table de fonctions FCMP
Avant de charger une table, il faut la créer ! Cet exemple crée une fonction personnalisée qui multiplie une valeur par deux, puis la télécharge dans la caslib 'casuser'.
| 1 | PROC FCMP outlib=work.mes_fonctions.math; function multiplier_par_deux(valeur); return (valeur * 2); endsub; RUN; PROC CASUTIL; load DATA=work.mes_fonctions casout="mes_fonctions" outcaslib="casuser" replace; QUIT; |
Exemples d'utilisation
Chargement basique d'une table FCMP
Charge simplement la table contenant nos routines FCMP en mémoire pour la session active.
| 1 | PROC CAS; fcmpact.loadFcmpTable / caslib="casuser" TABLE="mes_fonctions"; RUN; QUIT; |
Résultat Attendu :
Chargement global avec écrasement de l'existant
Dans ce scénario, on charge la table et on la promeut au niveau global pour que d'autres sessions puissent en bénéficier. On s'assure également d'écraser la version précédente. Un vrai comportement de patron ! 😎
| 1 | PROC CAS; fcmpact.loadFcmpTable / caslib="casuser" TABLE="mes_fonctions" promote=true replace=true; RUN; QUIT; |