Beim Erstellen von Berichten mit PROC REPORT ist das Hinzufügen einer Zusammenfassungszeile (Gesamtsumme) eine häufige Operation, die normalerweise mit der Anweisung RBREAK durchgeführt wird.
Standardmäßig übernimmt diese Zusammenfassungszeile einen Standardstil, der durch die aktive ODS-Vorlage definiert ist (oft ein hellgrauer oder weißer Hintergrund). Aus ästhetischen Gründen oder zur besseren Lesbarkeit ist es jedoch oft erwünscht, dass diese Summenzeile genau wie die Kopfzeile der Tabelle aussieht (gleiche Hintergrundfarbe, gleiche fette Schrift, gleiche Textfarbe).
Die erste natürliche Reaktion ist, den Quellcode der ODS-Vorlage zu öffnen, die hexadezimalen Farbcodes der Kopfzeile zu finden (zum Beispiel cx112277 für den Text und cxEDF2F9 für den Hintergrund im Stil HTMLBlue), und sie manuell in die Anweisung zu kopieren.
/* À éviter : Code rigide et difficile à maintenir */
rbreak after / summarize style=[fontweight=bold color=cx112277 backgroundcolor=cxEDF2F9];
1
/* À éviter : Code rigide et difficile à maintenir */
2
rbreak after / summarize style=[fontweight=bold color=cx112277 backgroundcolor=cxEDF2F9];
3
Obwohl diese Methode funktioniert, ist sie problematisch: Wenn Sie den ODS-Stil ändern (z. B. von HTMLBlue zu Plateau), passt sich Ihre Summenzeile nicht an und behält die alten Farben bei, was zu einem inkonsistenten Design führt.
Es gibt zwei einfache Möglichkeiten, diesen Stil auf Ihre Zusammenfassungszeile anzuwenden.
Methode 1: Lokale Anwendung auf die RBREAK-Anweisung
Dies ist die präziseste Methode, wenn Sie nur die von RBREAK erzeugte Gesamtsumme gezielt ansprechen möchten.
proc report data=sashelp.class;
columns sex weight;
define sex / group;
define weight / analysis mean f=5.2;
/* On applique directement le style 'Header' à la ligne de résumé */
rbreak after / summarize style=Header;
run;
1
PROC REPORTDATA=sashelp.class;
2
columns sex weight;
3
define sex / group;
4
define weight / analysis mean f=5.2;
5
6
/* On applique directement le style 'Header' à la ligne de résumé */
7
rbreak after / summarize style=Header;
8
RUN;
Methode 2: Globale Anwendung über die Option STYLE
Sie können dieses Verhalten auch auf der Ebene der PROC REPORT-Anweisung selbst definieren. Dies weist die Prozedur an, den Stil "Header" für jedes Element vom Typ "summary" zu verwenden.
proc report data=sashelp.class style(summary)=Header;
columns sex weight;
define sex / group;
define weight / analysis mean f=5.2;
rbreak after / summarize;
run;
Die auf WeAreCAS.eu bereitgestellten Codes und Beispiele dienen Lehrzwecken. Es ist zwingend erforderlich, sie nicht blind in Ihre Produktionsumgebungen zu kopieren. Der beste Ansatz besteht darin, die Logik zu verstehen, bevor sie angewendet wird. Wir empfehlen dringend, diese Skripte in einer Testumgebung (Sandbox/Dev) zu testen. WeAreCAS übernimmt keine Verantwortung für mögliche Auswirkungen oder Datenverluste auf Ihren Systemen.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.