Scénario de test & Cas d'usage
Gestion de l'état de la session CAS.
Découvrir toutes les actions de sessionCréation d'une table de ventes simulée dans la librairie CASUSER.
| 1 | PROC CAS; |
| 2 | dataStep.runCode / code='data casuser.SALES_DATA; |
| 3 | do transaction_id = 1 to 50000; |
| 4 | sale_amount = 100 + rand("INTEGER", 1, 500); |
| 5 | product_id = "P" || put(rand("INTEGER", 1, 20), z3.); |
| 6 | output; |
| 7 | end; |
| 8 | run;'; |
| 9 | RUN; |
| 1 | PROC CAS; |
| 2 | SESSION.startSession RESULT=r_sess name='long_job_session'; |
| 3 | job_uuid = r_sess['session']; |
| 4 | PRINT 'UUID de la session du job: ' job_uuid; |
| 5 | |
| 6 | /* Lancer l'action summary de manière asynchrone dans cette session */ |
| 7 | SIMPLE.summary / TABLE='SALES_DATA', SESSION=job_uuid, async='summary_task'; |
| 8 | RUN; |
| 1 | PROC CAS; |
| 2 | /* La variable 'job_uuid' doit contenir la valeur obtenue à l'étape 1 */ |
| 3 | SESSION.actionstatus / uuid=job_uuid; |
| 4 | RUN; |
La sortie de la dernière étape doit afficher une table contenant le statut de l'action 'simple.summary'. Le statut peut être 'running' ou 'completed', indiquant que l'action `actionstatus` a réussi à interroger la session cible et à rapporter un état cohérent.