Les formats sont sauvegardés dans SAS dans des fichiers appelés catalogues (format catalog). Par défaut, tous les formats envoyés dans une même bibliothèque sont sauvegardés dans le même catalogue. Deux questions se posent après :
- Comment voir la liste des formats présents dans un catalogue ?
- Comment retrouver le contenu d’un format en particulier ?
1. Créer deux formats dans la bibliothèque SASREF
Pour illuster les deux points qui suivent, sont créés deux formats dans la fichier FORMATS de la bibliothèque SASREF.
- Le premier format est nommé CNTRY et s’applique à des pays. Il s’agit d’un format alphanumérique (s’applique à du texte).
- Le second format NY (No/Yes) est un format numérique.
libname sasref 'C:/sasref'; proc format lib=sasref; value $ cntry 'FR' = 'France' 'DE' = 'Germany' 'UK' = 'United-Kingdom'; value ny 0 = 'Non' 1 = 'Yes'; run;
2. Lister les formats présents dans un catalogue avec PROC CATALOG
La procédure PROC CATALOG a la capacité de lister le nom des formats d’un format catalog.
proc catalog c=sasref.formats; contents stat; run;
3. L’option FMTLIB de PROC FORMAT pour voir le contenu des formats
Pour voir les différentes valeurs prises de tous les formats de SASREF (catalogue FORMATS), l’option FMTLIB est joutée dans une procédure PROC FORMAT.
- Pour ne sélectionner que certains formats en particulier, l’instruction SELECT est à disposition.
- Inversement, l’instruction EXCLUDE permet d’ôter certains formats de l’affichage.
Dans les deux cas, il faudra préciser si les formats concernées sont numérique ou alphanumérique en ajoutant le symbole dollar ($) devant le nom de chaque format alphanumérique.
proc format library=sasref.formats fmtlib; *select $cntry ny; *exclude $cntry ny; run;
Lectures complémentaires :