La chronique SAS

le 29 septembre 2013 à 17:39
dtalbot

Les options système de SAS

Quand on travaille avec SAS, on a souvent des besoins particuliers comme spécifier où se trouvent nos formats définis par l’utilisateur, quelle quantité de mémoire rendre disponible pour la procédure SORT, quel répertoire initial utiliser pour l’exploration des fichiers, etc. La réponse à ces besoins? Les options système de SAS!

Les options système de SAS sont des instructions globales. Elles affectent le traitement d’un programme SAS ou d’une session SAS interactive à partir du moment où les options sont spécifiées et demeurent en vigueur jusqu’à ce qu’elles soient modifiées. Voici quelques exemples d’éléments contrôlés par les options système de SAS : l’apparence de la fenêtre de sortie, la manipulation de certains fichiers utilisés par SAS, l’utilisation de variables système, le traitement des observations dans les tableaux SAS, les caractéristiques de l’initialisation de SAS et la façon dont SAS interagit avec votre système d’exploitation.

Comment se familiariser avec les options système?

Les options système de SAS que vous pouvez utiliser varient d’un système d’exploitation à un autre. Ce qui est constant, peu importe que vous soyez sous Windows, UNIX ou le Mainframe, c’est leur grand nombre. Par exemple, sous Windows, le nombre total d’options système à votre disposition pour SAS 9.3 est d’environ 200!! Du plaisir en perspective!

Pour se familiariser avec les options système, on peut commencer par dresser la liste de ces dernières ainsi que leur statut actuel dans l’environnement. Pour ce faire, plusieurs approches sont possibles. Une des façons de faire consiste à afficher les options dans la fenêtre du journal grâce à la procédure OPTIONS – voir encadré 1.

Encadré 1 – Proc OPTIONS et sortie partielle

En examinant le contenu du journal (qui est assez volumineux), on constate, par exemple, que la quantité de mémoire disponible dans notre session SAS pour Proc SORT, le SORTSIZE, est de 268 435 456 octets. Lorsque vous connaissez le nom d’une option système, vous pouvez utiliser la procédure OPTIONS avec l’énoncé OPTION= pour vérifier son statut, tel qu’illustré dans l’encadré 2 (oui, oui, je sais, cela fait bien des options). Vous pouvez spécifier plusieurs options avec l’énoncé OPTION= en les inscrivant à l’intérieur des parenthèses et en les séparant par un espace.

Encadré 2

Si vous désirez avoir, en plus de son statut actuel dans votre session, plus d’informations sur une option système (ou plusieurs), vous pouvez utiliser l’option DEFINE avec Proc OPTIONS et l’énoncé OPTION. Vous obtiendrez le groupe dans lequel se retrouve l’option, la description du groupe, la description de l’option, son type, quand la spécifier (hyper pratique à savoir!), si un administrateur peut la restreindre et si elle peut être sauvegardée avec la procédure OPTSAVE (dont nous allons parler dans la prochaine section) – voir encadré 3.

Encadré 3

On remarque que l’option SORTSIZE peut être restreinte par votre administrateur et qu’elle peut être spécifiée lors du démarrage de SAS ou n’importe quand durant votre session.

Certaines options sont restreintes (« restricted »). Elles sont déterminées par votre administrateur SAS et ne peuvent pas être modifiées. Pour connaître la liste des options qui sont restreintes, on peut utiliser l’option RESTRICT avec Proc OPTIONS – voir encadré 4.

Encadré 4

De quelle façon utiliser les options système?

SAS fournit des valeurs par défaut pour les options système. Vous pouvez substituer les valeurs par défaut de toute option système non restreinte de plusieurs façons, selon la valeur « when can set » (quand spécifier) obtenue plus tôt lors du Proc OPTIONS avec l’option DEFINE :

  • dans un fichier de configuration. Cette méthode est indiquée si vous utilisez les mêmes valeurs d’options fréquemment ou si vous devez spécifier vos options au cours de l’invocation de SAS.

  • dans une instruction OPTIONS : vous pouvez spécifier une instruction OPTIONS à tout moment pendant une session, sauf dans les lignes de données (CARD, PARMCARD). Vos options restent en vigueur tout au long de votre session, sauf si vous les réinitialisez avec une autre instruction OPTIONS ou les modifiez dans la fenêtre « Options de système » de SAS. Vous pouvez également placer une instruction OPTIONS dans un fichier autoexec.sas. Voir encadré 5.

  • dans la fenêtre des options système de SAS (si disponible dans votre environnement). Sous Windows, tapez OPTIONS sur la ligne de commande ou utilisez les menus : « Tools, Options, System » pour invoquer cette fenêtre. À l’intérieur de cette dernière, vous pouvez vérifier le statut de vos options ainsi que changer leur valeur de façon interactive. Voir encadré 6.

  • dans la procédure OPTLOAD : pour lire les valeurs des options qui ont été spécifiées avec la procédure OPTSAVE et enregistrées au préalable dans un tableau SAS. Voir encadré 7.

Encadré 5 – Utilisation de l’option SORTSIZE avant un Proc SORT

Encadré 6 – La fenêtre des options système de SAS

Encadré 7 – La procédure OPTLOAD

Inversement, vous travaillez dans une session SAS et vous désirez savoir de quelle façon une option système a été spécifiée? Vous pouvez utiliser l’option VALUE de l’énoncé OPTION de la procédure OPTIONS – voir encadré 8. Dans cet exemple, on découvre que l’option LOCALE a été spécifiée dans un fichier de configuration, c’est-à-dire qu’elle a été spécifiée au cours de l’invocation de SAS.

Encadré 8

Quelques exemples d’options système de SAS

En terminant, voici quelques options système de SAS bien utiles et parfois méconnues. Je vous invite à explorer la documentation SAS pour en apprendre plus sur ces options et leur syntaxe respective.

NOREPLACE

Spécifie qu’un tableau SAS stocké de façon permanente ne peut être remplacé par un autre tableau SAS du même nom. Cela empêche le remplacement accidentel de tableau SAS existants. Pratique pour les débutants.

SASINITIALFOLDER

Change le répertoire de travail et les répertoires par défaut pour les boîtes de dialogue « Ouvrir » et « Enregistrer sous » lors de l’initialisation de SAS. Utile quand on travaille sur un projet en particulier.

MPRINT

Affiche les instructions SAS qui sont générées par l’exécution d’une macro. Un « must » pour le débogage des macros.

PDFSECURITY et PDFPW

Encode (par chiffrement) et protège avec un mot de passe vos sorties PDF. Pour avoir la tranquillité d’esprit quand on doit transmettre un rapport de nature confidentielle.

MEMSIZE

Augmente la quantité de mémoire disponible pour SAS. Souvent nécessaire quand on se sert du « hash object » dans SAS.

SORTSIZE

Spécifie le maximum de mémoire qu’un tri (Proc SORT) peut utiliser dans votre session. Peut faire la différence lors de traitements sur de grands tableaux.

DFLANG

Spécifie la langue pour les informats et formats SAS internationaux. En utilisant cette option avec la valeur FRENCH, on peut appliquer des formats pour afficher le nom des jours de la semaine et des mois en français dans nos rapports.

Conclusion

Il existe de nombreuses options système SAS. Prenez le temps de vous familiariser avec celles qui peuvent vous être utiles dans vos tâches. Testez ensuite les options pour vous assurer que vous comprenez comment elles fonctionnent vraiment. Avec l’application correcte des options système SAS, votre travail sera plus productif et moins sujet aux erreurs. Bonne expérimentation et bonne rentrée 2013 à tous!

Sylvain Tremblay, Groupe de formation – Institut SAS (Canada) inc.

Références

Using SAS System Options”, Documentation SAS en ligne

http://support.sas.com/documentation/cdl/en/lesysoptsref/64892/HTML/default/viewer.htm#n1ag2fud7ue3aln1xiqqtev7ergg.htm

Retour à la table des matières

FacebookTwitterGoogle+LinkedIn