Changes for page Reports
Last modified by Jannis Klein on 2024/03/19 18:00
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -130,8 +130,104 @@ 130 130 (% style="text-align:center" %) 131 131 [[image:https://manual.aagon.com/acmp/de/61/hmfile_hash_0d77700a.png||alt="8.6.4.2 - Diagram 4" height="299" width="560"]] 132 132 133 -(% style="text-align:center" %) 134 134 135 135 136 -Diagrammverwendung bei gruppierten Daten 135 +== Diagrammverwendung bei gruppierten Daten == 137 137 137 +Falls Sie in einem Report, der auf verschachtelten Datensätze aufbaut, Diagramme verwenden möchten, so müssen Sie die Daten manuell aufbereiten. Dies soll am folgenden Beispiel exemplarisch dargestellt werden. 138 + 139 +Der Report soll eine Auflistung aller Betriebssysteme enthalten. Zu jedem Betriebssystem soll zudem eine eigene Liste mit allen Clients, auf denen das entsprechende Betriebssystem läuft, erstellt werden. Am Ende des Reports soll die Verteilung der Betriebssysteme in einem Tortendiagramm grafisch dargestellt werden. Bevor dies jedoch geschehen kann, muss die Anzahl der Clients eines Betriebssystem manuell berechnet werden. 140 + 141 +Erstellen Sie zunächst einen neuen Report (siehe [[Report hinzufügen>>url:https://manual.aagon.com/acmp/de/61/reports_verwalten.htm]]). Falls bereits die gewünschte Abfrage besteht, so kann diese ausgewählt werden. Andernfalls können Sie eine eigene Abfrage für den Report erstellen. Das hier verwendete Beispiel benötigt lediglich die Informationen "OS Name" und "Computer Name". 142 + 143 +Fügen Sie anschließend einen Gruppenkopf und Gruppenfuß ihrem Report hinzu. Hinterlegen Sie den Betriebssystemnamen im Gruppenkopf und erstellen Sie ein entsprechendes Feld für die Anzahl der Clients im Gruppenfuß. Die dazugehörige Variable wird hinterher erstellt. Fall gewünscht, können Sie auch noch zusätzliche Informationen, wie z.B. das Datum, hinzufügen. 144 + 145 + 146 +[[image:https://manual.aagon.com/acmp/de/61/reports_groupdatadiagram_1.png||alt="Reports_GroupdataDiagram_1" height="376" width="733"]] 147 + 148 +Erstellen von Gruppenkopf und Gruppenfuß 149 + 150 + 151 +Für das Diagramm können Sie das Band "Reportzusammenfassung" verwenden. Dies dient nur der logischen Strukturierung und ist nicht notwendig. Fügen Sie anschließend das Diagramm ein. Achten Sie hierbei darauf, als Datenquelle "Fixe Daten" anzugeben. Bei Bedarf können Sie auch weitere optische anpassen vornehmen. 152 + 153 + 154 +[[image:https://manual.aagon.com/acmp/de/61/reports_groupdatadiagram_2.png||alt="Reports_GroupdataDiagram_2" height="482" width="543"]] 155 + 156 +Diagramm einfügen 157 + 158 + 159 +Wechseln Sie nun in den Code-Tab des Reporteditors. Hier müssen zunächst die benötigten Variablen definiert werden. Insgesamt werden 4 verschiedene Variablen benötigt: 160 + 161 +* Anzahl: Enthält die Anzahl der Clients eines Betriebssystem 162 +* Anzahl Gesamt: Enthält die Gesamtanzahl an Clients 163 +* X_Chart: Enthält die Liste mit verschiedenen Betriebssystemen 164 +* Y_Chart: Enthält die Liste mit der Anzahl der Clients der verschiedenen Betriebssystemen 165 + 166 +Der benötigte Quellcode für die einzelnen Bereiche des Reports kann nun in die entsprechenden OnBeforePrint-Prozeduren der einzelnen Bänder eingefügt werden. Zunächst einmal müssen die Variablen mit Ausgangswerten belegt werden. Dies geschieht im ReportTitle bzw. im GroupHeader. Achten Sie darauf, die Variable Anzahl im GroupHeader auf den Wert 0 zu setzen. Auf diese Weise kann die korrekte Anzahl der Clients eines Betriebssystems berechnet werden. Anschließend können Sie im MasterData die Anzahl, sowie die Anzahl_Gesamt jeweils um Eins erhöhen. Im GroupFooter können nun die Daten zu einer Liste zusammengeführt werden. Die Daten werden als String gespeichert und durch ein ";" getrennt (Beispiel: "Windows 7;Windows XP;"). 167 + 168 + 169 +Abschließend können die Daten in der ReportSummary dem Diagramm zugeordnet werden. 170 + 171 +====== Quellcode ====== 172 + 173 +~/~/Variablen definieren 174 + 175 +var 176 +Anzahl : int; 177 +Anzahl_Gesamt : int; 178 +X_Chart,Y_Chart : String; 179 + 180 + 181 +~/~/Ausgangswerte festlegen 182 +procedure ReportTitle1OnBeforePrint(Sender: TfrxComponent); 183 +begin 184 +Anzahl_Gesamt := 0; 185 +X_Chart := ''; 186 +Y_Chart := ''; 187 +end; 188 + 189 + 190 +~/~/Zähler wieder auf 0 setzen 191 +procedure GroupHeader1OnBeforePrint(Sender: TfrxComponent); 192 +begin 193 +Anzahl := 0; 194 +end; 195 + 196 + 197 +~/~/Clients zählen 198 +procedure MasterData1OnBeforePrint(Sender: TfrxComponent); 199 +begin 200 + Anzahl := 1 + Anzahl; 201 + Anzahl_Gesamt := 1 + Anzahl_Gesamt; 202 +end; 203 + 204 + 205 +~/~/Zur Liste der Clients und der Menge hinzufügen 206 +procedure GroupFooter1OnBeforePrint(Sender: TfrxComponent); 207 +begin 208 + X_Chart := X_Chart + Memo4.Value + ';' ; 209 + Y_Chart := Y_Chart + IntToStr(Anzahl) + ';' ; 210 +end; 211 + 212 +~/~/Daten an das Diagramm übergeben 213 +procedure ReportSummary1OnBeforePrint(Sender: TfrxComponent); 214 +begin 215 + Chart2.SeriesData[0].XSource := X_Chart; 216 + Chart2.SeriesData[0].YSource := Y_Chart; 217 +end; 218 + 219 +begin 220 + 221 +end. 222 + 223 +{{aagon.infobox}} 224 +Kommt es bei einem Diagramm zu Darstellungsfehlern, so ist dies oft auf eine nicht ausreichende Anzeigefläche zurückzuführen. Versuchen Sie in diesem Fall nicht benötigte Beschriftungen auszublenden, z.B. unter Pie -> Marks -> Visible = "False". Zudem kann es hilfreich sein die Position der Legende zu ändern, unter Diagramm -> Alignment = "laBottom" oder "laTop" 225 +{{/aagon.infobox}} 226 + 227 + 228 +(% style="color:inherit; font-family:inherit; font-size:16px" %)Beispieldiagramm: 229 + 230 +[[image:https://manual.aagon.com/acmp/de/61/reports_groupdatadiagram_3_zoom75.png||alt="Reports_GroupdataDiagram_3" height="599" width="480"]] 231 + 232 + 233 +