Publié le :
Reporting SASHELP

Rapport de profit par ligne de produit et par année

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le programme commence par définir un format utilisateur `$sequip` via `PROC FORMAT` pour clarifier les libellés de ligne de produit. Ensuite, `PROC REPORT` est employée pour analyser la table `sashelp.orsales`. Le rapport groupe les données par année et par ligne de produit, calcule le profit total (`sum`) et le pourcentage de profit de chaque ligne par rapport au total annuel (`computed`). Un sommaire détaillé est inclus après chaque année. La table résultante est sauvegardée dans `yrdat`. Enfin, `PROC PRINT` est utilisée pour afficher un aperçu de cette table de sortie `yrdat`.
Analyse des données

Type : SASHELP


Les données d'entrée principales proviennent de la table standard SASHELP.ORSALES. La table `yrdat` est créée en interne par la `PROC REPORT`.

1 Bloc de code
PROC FORMAT
Explication :
Ce bloc définit un format utilisateur nommé `$sequip`. Il est utilisé pour mapper la valeur 'Sports' à 'Sports Equipment', ce qui améliore la lisibilité de la variable 'product_line' dans le rapport généré.
Copié !
1PROC FORMAT;
2 value $sequip
3 'Sports' = 'Sports Equipment';
4 RUN;
2 Bloc de code
PROC REPORT Data
Explication :
Ce bloc utilise `PROC REPORT` pour générer un rapport à partir de `sashelp.orsales`, regroupé par année et ligne de produit. Il calcule le profit total (`profit`) et le pourcentage de profit de chaque ligne par rapport au total annuel (`percent`). La table `yrdat` est créée en sortie. Les instructions `compute` sont utilisées pour calculer le total annuel des profits et le pourcentage. La ligne `line @code_sas_json/test_sha256.json 'Profits in US dollars';` est une instruction `LINE` qui imprimerait la chaîne de caractères telle quelle dans la sortie du rapport ; son usage pour référencer un fichier JSON est une syntaxe inhabituelle dans un contexte SAS standard, mais est incluse telle quelle dans le code analysé.
Copié !
1title1 'Total profit per year';
2title2 'Separated by Product Line';
3PROC REPORT DATA=sashelp.orsales
4 out= yrdat nowd split='*';
5 column year product_line profit percent;
6 define year / group;
7 define product_line
8 / group
9 f=$sequip.
10 'Product*Groups';
11 define profit / analysis
12 sum FORMAT=dollar15.2
13 'Annual*Profit';
14 define percent/ computed 'Product*Percentage'
15 FORMAT=percent10.2;
16 
17 break after year/ summarize suppress skip;
18 
19 compute before year;
20 total = profit.sum;
21 endcomp;
22 compute percent;
23 percent = profit.sum/total;
24 endcomp;
25 compute after;
26 line ' ';
27 line @code_sas_json/test_sha256.json 'Profits in US dollars';
28 endcomp;
29 RUN;
3 Bloc de code
PROC PRINT
Explication :
Ce bloc utilise `PROC PRINT` pour afficher les premières observations de la table `yrdat`, qui a été générée par la `PROC REPORT` précédente. Cela permet un aperçu rapide de la structure et du contenu des données finales du rapport.
Copié !
1title3 'Glimpse of the Output
2Data Table';
3PROC PRINT
4DATA=yrdat;
5 
6RUN;
7 
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.
Informations de Copyright : * E5_3.sas * * Chapter 5 Exercise 3 * * Total profit and percentage for each Product line within year; * With annual summary and a glimpse of the Output data table;