La clé de cette automatisation réside dans l'exploitation des retours de l'API. Afin de garantir une traçabilité sans faille de l'opération, il est impératif d'utiliser la structure d'appel complète, par exemple en invoquant accessControl.createBackup result=results status=rc.
En interceptant systématiquement l'objet de résultats et le code de retour du serveur, vous pouvez concevoir des flux logiques intelligents. Cela vous permet d'enregistrer précisément l'horodatage de la réussite de l'opération ou de déclencher un workflow de notification d'incident si le système indique qu'une autre sauvegarde a rendu l'action indisponible.
Exemple de Code Additionnel
<pre>/* CASL Script : Sauvegarde de sécurité avec audit et capture de retour
(c) Nicolas Housset 2026 - Code SAS pour VIYA 4 - testé et validé en version 2024.09 */
proc cas;
/* 1. Définition des variables de contexte */
source_lib = "Public";
source_tbl = "SALES_DATA";
backup_name = source_tbl || "_" || put(date(), yymmddn8.);
/* 2. Exécution de la sauvegarde avec capture du résultat dans 'r' */
table.save result = r /
caslib = "BackupLib"
name = backup_name
replace = true
table = {caslib=source_lib, name=source_tbl};
/* 3. Analyse experte du retour de l'action */
print "--- Analyse du statut de la sauvegarde ---";
if (r.severity == 0) then do;
print "SUCCÈS : La table " source_tbl " a été sauvegardée sous le nom " backup_name;
/* Extraction des détails pour l'audit */
table.fileInfo result = info / caslib="BackupLib" filter="name='" || backup_name || ".sashdat'";
print "Détails du fichier sauvegardé :";
print info.fileInfo[,{"name", "size", "lastModified"}];
end;
else do;
print "ERREUR : La sauvegarde a échoué avec la sévérité " r.severity;
print "Message d'erreur SAS Viya : " r.messages[1];
/* Ici, on pourrait forcer un code de sortie pour l'orchestrateur externe */
exit({severity=r.severity});
end;
quit;</pre>
1
<pre>/* CASL Script : Sauvegarde de sécurité avec audit et capture de retour
2
(c) Nicolas Housset 2026 - Code SAS pour VIYA 4 - testé et validé en version 2024.09 */
Découvrez cet exemple pour l'action CAS createBackup : il sérialise les contrôles d'accès (ACL) en un fichier binaire au chemin spécifié pour garantir la résilience de vos métadonnées de sécurité.
Cet exemple illustre l'instanciation en mémoire des métadonnées d'accès via l'argument tables=True. Il permet un audit rapide sans I/O disque, idéal pour valider les droits sur des nœuds CAS actifs.
Conseil de l'Expert
Ne vous contentez jamais d'un code de retour système (RC). Dans SAS Viya 4, le véritable statut d'une sauvegarde réside dans l'objet de réponse JSON renvoyé par l'action set. Pour une automatisation robuste, extrayez systématiquement la clé severity et le message détaillé du dictionnaire de résultat afin de conditionner vos pipelines CI/CD.
Cette réponse vous a-t-elle aidé ?
Vos votes aident à améliorer notre base de connaissances.