Combine une liste de bibliothèques de formats en une seule bibliothèque de formats de destination. Cette action est utile pour consolider des formats utilisateur provenant de différentes sources ou pour créer un ensemble de formats standardisé pour une session ou un projet.
| Paramètre | Description |
|---|---|
| fmtLibOut | Spécifie le nom de la bibliothèque de formats combinée qui sera créée. Si une bibliothèque de formats portant ce nom existe déjà, elle sera écrasée. Le nom ne peut pas dépasser 63 caractères. |
| fmtLibsIn | Spécifie la liste des bibliothèques de formats d'entrée à combiner. |
| formatNames | Spécifie une liste optionnelle de noms de formats spécifiques à inclure dans la bibliothèque combinée. Si ce paramètre est omis, tous les formats des bibliothèques d'entrée sont inclus. Les noms de formats SAS intrinsèques sont ignorés. |
| ignoreNameNotFound | Spécifie s'il faut ignorer les formats listés dans `formatNames` qui ne sont pas trouvés dans les bibliothèques d'entrée. La valeur par défaut est FALSE, ce qui génère une erreur si un format n'est pas trouvé. |
Avant de pouvoir combiner des bibliothèques de formats, nous devons d'abord en créer quelques-unes avec des formats personnalisés.
| 1 | PROC CAS; |
| 2 | /* Création de la première bibliothèque de formats */ |
| 3 | sessionProp.addFmtLib / |
| 4 | fmtLibName='myFmtLib1'; |
| 5 | |
| 6 | /* Ajout d'un format numérique à myFmtLib1 */ |
| 7 | sessionProp.addFormat / |
| 8 | fmtLib='myFmtLib1', |
| 9 | fmtName='RATING', |
| 10 | ranges={{start=1, END=1, label='Médiocre'}, |
| 11 | {start=2, END=2, label='Bon'}, |
| 12 | {start=3, END=3, label='Excellent'}}; |
| 13 | |
| 14 | /* Création de la deuxième bibliothèque de formats */ |
| 15 | sessionProp.addFmtLib / |
| 16 | fmtLibName='myFmtLib2'; |
| 17 | |
| 18 | /* Ajout d'un format de caractères à myFmtLib2 */ |
| 19 | sessionProp.addFormat / |
| 20 | fmtLib='myFmtLib2', |
| 21 | fmtName='$STATE', |
| 22 | ranges={{start='CA', END='CA', label='Californie'}, |
| 23 | {start='NY', END='NY', label='New York'}}; |
| 24 | RUN; |
Cet exemple combine toutes les informations des bibliothèques 'myFmtLib1' et 'myFmtLib2' dans une nouvelle bibliothèque appelée 'combinedLib'.
| 1 | |
| 2 | PROC CAS; |
| 3 | sessionProp.combineFmtLibs / fmtLibOut='combinedLib', fmtLibsIn={'myFmtLib1', 'myFmtLib2'}; |
| 4 | |
| 5 | RUN; |
| 6 |
Cet exemple montre comment sélectionner uniquement le format 'RATING' de 'myFmtLib1' et l'ignorer s'il n'est pas trouvé, pour le placer dans une nouvelle bibliothèque 'specificCombinedLib'.
| 1 | |
| 2 | PROC CAS; |
| 3 | sessionProp.combineFmtLibs / fmtLibOut='specificCombinedLib', fmtLibsIn={'myFmtLib1', 'myFmtLib2'}, formatNames={'RATING'}, ignoreNameNotFound=TRUE; |
| 4 | |
| 5 | RUN; |
| 6 |
Cet exemple tente de combiner un format qui n'existe pas ('NONEXISTENTFMT'). Comme `ignoreNameNotFound` est défini sur FALSE (par défaut), l'action générera une erreur.
| 1 | |
| 2 | PROC CAS; |
| 3 | sessionProp.combineFmtLibs / fmtLibOut='errorLib', fmtLibsIn={'myFmtLib1'}, formatNames={'NONEXISTENTFMT'}, ignoreNameNotFound=FALSE; |
| 4 | |
| 5 | RUN; |
| 6 |
Une banque internationale souhaite lancer une campagne marketing unifiée. Actuellement, les définitions des segments clients (Gold, Silver, Bronze) et des codes géographiques so...
Un détaillant dispose d'une bibliothèque de formats 'Legacy' massive contenant des milliers de codes produits historiques obsolètes. Pour un nouveau tableau de bord de performan...
Dans un processus d'intégration de données automatisé (ETL) nocturne, une action tente de consolider les formats de devises du jour. Cependant, il arrive que le flux en amont ne...