Publié le :
Reporting SASHELP

Rapport ODS HTMLPanel avec PROC PRINT et PROC GCHART

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script commence par configurer les options graphiques et les paramètres initiaux de ODS TAGSETS.HTMLPANEL, incluant la destination du fichier HTML et le nombre de colonnes pour les panneaux. Il exécute ensuite plusieurs PROC PRINT de la table SASHELP.CLASS, regroupées dans des panneaux. Les options des panneaux sont modifiées en cours d'exécution. Une PROC SORT est utilisée pour trier SASHELP.CLASS par l'âge, créant une nouvelle table temporaire, qui est ensuite visualisée avec PROC GCHART pour afficher la somme du poids par rapport à la taille, regroupée par âge. Le script se termine par la fermeture de toutes les destinations ODS.
Analyse des données

Type : SASHELP


Le script utilise exclusivement la table SASHELP.CLASS, une table de démonstration standard intégrée à SAS, et crée une table temporaire 'WORK.FOO' à partir de celle-ci pour les opérations de tri et de graphique.

1 Bloc de code
GOPTIONS & ODS HTMLPANEL Setup
Explication :
Configure les options graphiques pour la sortie GIF avec des dimensions spécifiées. Initialise la destination ODS TAGSETS.HTMLPANEL pour créer un rapport HTML paginé avec des panneaux, définissant le fichier de sortie ('printpanel2.html') et plusieurs options d'affichage des panneaux comme le nombre de colonnes, les bordures, et la gestion des titres.
Copié !
1goptions dev=gif xpixels=480 ypixels=320;
2 
3ods tagsets.htmlpanel nogtitle file="printpanel2.html"
4 options(panelcolumns='3'
5 panelborder='2'
6 embedded_titles='yes'
7 bylabels='no');
2 Bloc de code
PROC PRINT
Explication :
Démarre un nouveau groupe de panneaux ODS HTML. Trois PROC PRINT consécutives sont exécutées sur la table SASHELP.CLASS, chacune précédée d'un titre distinct. Chaque sortie de PROC PRINT est encapsulée dans un panneau séparé. Le groupe de panneaux est ensuite fermé.
Copié !
1/* start the panelling */
2 
3ods tagsets.htmlpanel event = panel(start);
4 
5title 'First proc Print';
6 
7PROC PRINT DATA=sashelp.class;RUN;
8 
9title 'Second proc Print';
10PROC PRINT DATA=sashelp.class;RUN;
11 
12title 'Third proc Print';
13PROC PRINT DATA=sashelp.class;RUN;
14 
15 
16/* Stop the current Panel */
17ods tagsets.htmlpanel event = panel(finish);
3 Bloc de code
PROC SORT & PROC GCHART Data
Explication :
Modifie les options du panneau HTML, réduisant le nombre de colonnes à 2 et désactivant les titres intégrés. La table SASHELP.CLASS est triée par la variable 'age' et le résultat est sauvegardé dans une nouvelle table temporaire nommée 'foo'. Ensuite, PROC GCHART génère un graphique à barres horizontales à partir de la table 'foo', regroupé par 'age', affichant la somme de 'height' par 'weight'.
Copié !
1/* Change the panel settings */
2 
3ods tagsets.htmlpanel options(panelcolumns='2'
4 embedded_titles='no');
5 
6/* this bygroup get's a panel of it's own. */
7 
8title ;
9 
10PROC SORT DATA=sashelp.class out=foo;
11 BY age;
12 RUN;
13
14PROC GCHART DATA=foo;
15 BY age;
16 hbar weight / sumvar=height;
17RUN;
18QUIT;
4 Bloc de code
PROC PRINT
Explication :
Démarre un nouveau groupe de panneaux ODS HTML. Deux autres PROC PRINT de SASHELP.CLASS sont exécutées. La première a un titre simple, tandis que la seconde inclut à la fois un titre et une note de bas de page. Le groupe de panneaux est ensuite fermé.
Copié !
1/* start a new, semi-automatic panel */
2ods tagsets.htmlpanel event = panel(start);
3 
4title 'Fourth proc Print';
5PROC PRINT DATA=sashelp.class;RUN;
6 
7title 'Fifth proc Print';
8Footnote 'End of Fifth proc Print';
9PROC PRINT DATA=sashelp.class;RUN;
10 
11ods tagsets.htmlpanel event = panel(finish);
5 Bloc de code
ODS Closure
Explication :
Ferme toutes les destinations ODS qui ont été ouvertes pendant l'exécution du script, garantissant que les fichiers de sortie sont finalisés.
Copié !
1ods _all_ close;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.