Gestion des erreurs et arrêt conditionnel d'une étape DATA

La variable automatique _error_ est un booléen qui vaut 1 si le programme a rencontré une erreur, 0 sinon.

Afficher des messages d'erreur : Instruction ERROR

Même en l'absence d'erreur du programme, on peut être amené à considérer certains cas comme des erreurs (par exemple, un âge négatif). On a alors recours à l'instruction ERROR pour traiter ces cas.

ERROR "message d'erreur" ;

Cette instruction a pour effet de :

Exemple :

DATA destination;
SET source;
IF age < 0 THEN ERROR "l'âge est négatif";
ELSE [Bloc d'instructions];
RUN;

Stopper une étape DATA : Instruction STOP

On peut demander à ce que l'exécution de l'étape DATA s'arrête lorsqu'une certaine condition est réalisée. On utilise pour cela l'instruction STOP.

Exemple :

IF _error_ THEN STOP;

demande l'arrêt de l'étape DATA si une erreur d'exécution se produit.

On peut aussi introduire un test dans une boucle tant que afin d'éviter les boucles infinies, par exemple :

DO WHILE (condition);
IF _n_>1000000 THEN STOP;
[Bloc d'instructions];
END;