Oui, c'est l'un des points forts pour les développeurs multi-langages. Le paramètre syntax accepte les valeurs CASLLangage de script de SAS Viya utilisé pour interagir avec le serveur CAS. Il permet de combiner des actions CAS, de gérer la logique de programmation et de manipuler les résultats en mémoire., LUA ou ASLOGGED. Cela permet de convertir l'historique des appels vers la syntaxe d'un autre client de programmation, facilitant ainsi la migration de scripts entre différentes interfaces comme Python, Lua ou Java, tout en respectant la sémantique de la plateforme SAS Viya.
Est-il possible de récupérer l'historique formaté pour un autre langage que le CASL ?
Transpilation de syntaxe via l'action History
Exemple de Code Additionnel
| 1 | <pre>/* CASL Script : Extraction et Conversion de l'Historique CAS |
| 2 | (c) Nicolas Housset 2026 - Code SAS pour VIYA 4 - testé et validé en version 2024.09 */ |
| 3 | PROC CAS; |
| 4 | /* 1. Simulation de quelques actions pour remplir l'historique */ |
| 5 | TABLE.tableInfo / name="CARS"; |
| 6 | SIMPLE.summary / TABLE={name="CARS", caslib="CASUSER"}; |
| 7 | /* 2. Récupération de l'historique formaté pour LUA */ |
| 8 | PRINT "--- HISTORIQUE FORMATÉ POUR LUA ---"; |
| 9 | BUILTINS.history RESULT=resL / syntax="LUA"; |
| 10 | describe resL; |
| 11 | PRINT resL.history; |
| 12 | /* 3. Récupération de l'historique formaté tel qu'enregistré (ASLOGGED) */ |
| 13 | PRINT "--- HISTORIQUE FORMATÉ ASLOGGED ---"; |
| 14 | BUILTINS.history RESULT=resA / syntax="ASLOGGED"; |
| 15 | PRINT resA.history; |
| 16 | QUIT;</pre> |
Exemples pour l'action history
Affichage simple de l'historique
Récupère et affiche la liste des actions exécutées dans le journal SAS.
Extraction des 5 dernières actions au format CASL
Cet exemple récupère les 5 dernières actions et les sauvegarde dans une table CAS pour une analyse ultérieure.
Récupération d'une plage spécifique sans affichage verbeux
On demande ici l'historique de l'action 1 à 10, uniquement sous forme de résultat structuré, sans polluer le journal.
