6 choses à savoir avant de migrer ses programmes SAS vers la solution Altair SLC

Voici quelques fonctionnalités disponibles avec SAS Studio qui ne sont pas connues d’Altair SLC.

Les formats de paramètres régionaux ne peuvent pas être utilisés

L’option locale du proc format n’est pas prise en charge par Altair SLC. Si vous travaillez avec plusieurs langues, vous devrez donc trouver une solution de contournement. Voici un exemple qui fonctionne avec SAS Studio, mais pas avec Altair SLC.

options locale=en_US;
proc format lib=work.formats locale;
    value ny 0='No'
             1='Yes';
run;

options locale=de_DE;
proc format lib=work.formats locale;
    value ny 0='Nein'
             1='Ja';
run;

data demo;
    result=0; output;
    result=1; output;
run;

options fmtsearch=(work/locale);

options locale=en_US;
proc print data=demo;
    format result ny.;
run;

options locale=de_DE;
proc print data=demo;
    format result ny.;
run;
ERROR: Option "locale" is not known for the PROC FORMAT statement

Répertorier tous les fichiers disponibles dans un répertoire donné (Windows)

Le code suivant crée un fichier texte contenant la liste des fichiers Excel disponibles dans un répertoire donné.

Avec les solutions de SAS Institute, ce fichier peut être enregistré dans un répertoire permanent ou temporaire.

Avec Altair SLC, il ne peut être enregistré que dans un répertoire permanent.

En d’autres termes, le chemin d’accès utilisé par la bibliothèque de travail, obtenu à l’aide de la fonction pathname, ne peut pas être utilisé dans la routine call system.

%let xxwork=%sysfunc(pathname(work));

options noxwait;

data _null_;
    call system("dir &xxroot.\data\*.xlsx /a-d /b > &xxroot.\reporting\listfiles.txt");
   *call system("dir &xxroot.\data\*.xlsx /a-d /b > &xxwork.\listfiles.txt");
run;

Stopper l’affichage des résultats dans l’onglet RESULTATS

La destination HTML5(Web) peut server à empêcher le système d’afficher les résultats dans l’onglet « RESULTATS » (dans SAS Studio, par exemple).

Cette destination n’est pas prise en charge par Altair SLC.

ods html5(web) exclude all;
ERROR: Not a valid statement in this context: ODS destination HTML5(web) is not opened

Les options du dataset ne fonctionnent pas avec proc sql

Dans SAS Studio, les options de dataset peuvent être utilisées dans une instruction proc sql.

Ce n’est pas toujours le cas avec Altair SLC. Voici un exemple :

proc sql;
    select a.*, b.height
    from class  (keep=name age sex where=(age=12)) a
    left join
         class (keep=name age height where=(age=12)) b
    on a.name=b.name;
quit;

Les valeurs manquantes spéciales ne fonctionnent pas avec les picture formats

Les valeurs manquantes spéciales ne sont pas prises en charge dans les picture formats.

proc format;
    picture euro_rd (round)
          low-<0 = '000 000 009.99 €' (prefix='-')
          0-high = '000 000 009.99 €'
          .A     = 'N/A'
          other  = 'Missing';
run;
ERROR: Found "A" when expecting number

Encodage des fichiers inclus

Si les libellés de vos formats contiennet un caractère spécial (par exemple, un e accent aigu, é), vous risquez de rencontrer des problèmes d’encodage.

Si vous créez un catalogue de formats permanent et que vous l’utilisez, cela ne posera aucun problème.

Par contre, si vous utilisez l’instruction %include pour inclure le programme qui crée vos formats, ceux-ci ne s’afficheront pas correctement par défaut.

Dans un premier temps, utilisez une instruction filename pour définir l’emplacement de votre programme et ajoutez-y l’option encoding=utf-8. Dans un second temps, utilisez ensuite le fileref dans votre instruction %include.

filename mypgm "...sas" encoding=utf-8;
%include mypgm;

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *