Publié le :
Reporting SASHELP

Rapport de Bénéfice Annuel par Ligne de Produit

Ce code est également disponible en : Deutsch English Español
Le script commence par définir les options système et ferme les sorties ODS par défaut. Il configure ensuite la sortie ODS en HTML vers un fichier spécifié. La procédure PROC REPORT est utilisée pour agréger les données du jeu de données `sashelp.orsales`. Les variables 'year' et 'product_line' sont définies comme variables de groupement, et 'profit' est sommée. Des ruptures sont définies après chaque année et à la fin du rapport pour afficher des totaux. Des styles conditionnels sont appliqués aux lignes et colonnes pour améliorer la lisibilité du rapport.
Analyse des données

Type : SASHELP


Le rapport est construit à partir du jeu de données `orsales` de la bibliothèque SASHELP. Ce jeu de données est un exemple standard fourni par SAS, ne nécessitant pas de données externes spécifiques ou de création de données interne au script.

1 Bloc de code
PROC REPORT / ODS
Explication :
Ce bloc configure d'abord les titres du rapport et les options ODS pour générer une sortie HTML stylisée. La procédure `PROC REPORT` est ensuite invoquée sur le jeu de données `sashelp.orsales`. Elle définit des colonnes, des variables de groupement (`year`, `product_line`) et une variable d'analyse (`profit`) qui est sommée et formatée. Les instructions `break` et `rbreak` ajoutent des lignes de résumé pour les totaux intermédiaires par année et un total général. Les blocs `compute` appliquent des styles de couleur (cyan, rose, vert, rouge) aux en-têtes et aux lignes de résumé via la fonction `call define`, améliorant la présentation visuelle du rapport.
Copié !
1options center;
2ods listing close;
3 
4ods html style=default
5 path="&pathesults"
6 body='E8_2.html';
7 
8title1 'Total profit per year';
9title2 'Separated by Product Line';
10title3 'Profit Summaries';
11PROC REPORT DATA=sashelp.orsales nowd split='*';
12 * Call define does not offer control of the header spaces
13 * style(header)={background=white}
14 * style(column)={background=pink};
15 column year product_line profit;
16 define year / group;
17 define product_line
18 / group
19 'Product*Groups';
20 define profit / analysis
21 sum FORMAT=dollar15.2
22 'Annual*Profit';
23 break after year / summarize suppress skip;
24 rbreak after / summarize;
25 
26 compute year;
27 call define(_col_,'style','style={background=cyan}');
28 endcomp;
29 
30 compute product_line;
31 call define(_col_,'style','style={background=pink}');
32 endcomp;
33 
34 compute after year;
35 call define(_row_,'style','style={background=green}');
36 endcomp;
37 
38 compute after;
39 call define(_row_,'style','style={background=red}');
40 endcomp;
41 RUN;
42ods _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.