Publié le :
Reporting CREATION_INTERNE

Définition de style ODS personnalisé

Ce code est également disponible en : Deutsch English Español
L'objectif principal de ce code est d'améliorer l'esthétique des sorties générées par SAS©, en particulier pour les rapports et les visualisations. Le style 'customSapphire' modifie les éléments suivants :
  • Les couleurs de fond des classes 'Header', 'Footer', 'RowHeader' et 'RowFooter' sont définies sur CXdae4f3.
  • La classe 'graph' a la priorité d'attribut définie sur 'none'.
  • Les couleurs du texte, des lignes de référence, des bordures, des contours, des grilles et des axes sont personnalisées sous 'GraphColors'.
  • L'apparence des tableaux est modifiée pour inclure des bordures plus épaisses, un espacement des cellules et une couleur de bordure spécifique (cx919191).
  • L'épaisseur de diverses lignes de graphique (bordures, axes, contours, données, boîtes à moustaches, grilles) est uniformément définie à 2px pour une meilleure visibilité.
Analyse des données

Type : CREATION_INTERNE


Le script ne traite pas de données externes. Il définit un objet de style interne qui sera ensuite utilisé par SAS pour formater les sorties. La clause `store=Bookdata.Template` indique que la définition du style sera stockée dans la bibliothèque `Bookdata`, mais n'implique pas l'utilisation de données d'entrée provenant de cette bibliothèque pour la définition du style elle-même.

1 Bloc de code
PROC TEMPLATE
Explication :
Ce bloc utilise la procédure `PROC TEMPLATE` pour créer un nouveau modèle de style ODS. Le `libname BookData` initial est une instruction commentée à l'utilisateur pour définir une bibliothèque, mais n'affecte pas l'exécution de la `PROC TEMPLATE` elle-même. Le style `customSapphire` est défini comme un enfant du style `styles.sapphire`. Il spécifie des attributs personnalisés pour diverses classes ODS (Header, Footer, RowHeader, RowFooter, graph, GraphColors, table, GraphBorderLines, etc.), permettant de contrôler l'apparence des rapports et des graphiques générés par SAS. Les couleurs sont définies à l'aide de codes hexadécimaux (CX).
Copié !
1LIBNAME BookData "--insert path to SAS data sets/BookData library here if not already assigned--";
2 
3PROC TEMPLATE;
4 define style customSapphire/store=Bookdata.Template;
5 parent = styles.sapphire;
6 class Header /
7 backgroundcolor=CXdae4f3;
8 class Footer /
9 backgroundcolor=CXdae4f3;
10 class RowHeader /
11 backgroundcolor=CXdae4f3;
12 class RowFooter /
13 backgroundcolor=CXdae4f3;
14 class graph / attrpriority="none";
15
16 class GraphColors /
17 'gtext' = black
18 'gtextt' = black
19 'greferencelines'= cx808080
20 'gborderlines' = cx000000
21 'goutlines'= cx000000
22 'ggrid'= CX797c7e
23 'gaxis'= cx000000;
24 
25 style TABLE from TABLE /
26 borderwidth=3px
27 cellpadding=3pt
28 borderspacing=.05pt
29 frame=box
30 bordercolor=cx919191
31 bordercollapse=collapse;
32 
33 class GraphBorderLines / lineThickness=2px color=CX000000;
34 class GraphAxisLines / lineThickness=2px color=CX000000;
35 class GraphOutLines / lineThickness=2px color=cx000000;
36 class GraphAnnoLines / lineThickness=2px color=cx000000;
37 class GraphReference / lineThickness=2px color=cx000000;
38 class GraphWalls / lineThickness=2px;
39 class GraphDataDefault / lineThickness=2px;
40 class GraphBoxWhisker / lineThickness=2px;
41 class GraphBoxMedian / lineThickness=2px;
42 class GraphOther / lineThickness=2px;
43 class GraphConfidence / lineThickness=2px;
44 class GraphAnnoShape / lineThickness=2px;
45 class GraphDataNodeDefault /
46 linethickness = 2px
47 linestyle = 1;
48 class GraphOutliers / linethickness=2px linestyle=1;
49 class GraphGridLines / lineThickness=2px linestyle = 1 color=cx000000;
50END;
51 
52RUN;
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.