http://d3js.org soll für die Visualisierung verwendet werden.
Galerie: https://github.com/mbostock/d3/wiki/Gallery
Tutorials: https://github.com/mbostock/d3/wiki/Tutorials
Einstieg: http://bost.ocks.org/mike/bar/ (Beispiel: http://codepen.io/mbostock/pen/Jaemg)
| Typen | (Englisch) |
|---|---|
| Säulendiagramm | Column Chart |
| Balkendiagramm | Bar Chart |
| Liniendiagramm | Line Chart |
| Kombiniertes Säulen- / Liniendiagramm | Combined Column / Line Chart |
| Kuchendiagramm | Pie Chart |
| Streudiagramm (Fliegenschiss | Scatter Chart |
| Tacho | Speedometer |
Die Verwendung von Diagrammen soll in verschiedenen Bereichen möglich sein.
1. In einem Business Objekt
Ein Diagramm kann in diesem Fall seine Daten nur von Unterformularen beziehen. Hierfür können auch Dynamische BOs verwendet werden, um z.b. zu Gruppieren und zu Summieren. Es wird eine neue Möglichkeit benötigt, solche BOs anzulegen und zu berechtigen, ohne das sie in einem Layout konfiguriert werden müssten. Ein Nuclet soll damit Vorlagen für Diagramme mitliefern, wobei ein User selbst entscheiden kann, welche er in welchem Format konfiguriert.
Ein Suchkriterium oder Suchfilter sollte die Basis eines Diagrammes sein. Unklar ist jedoch noch, wie man eine Gruppierung ermöglicht. Vielleicht über eine Erweiterung des QueryProviders. Eine Nutzung im BO (Punkt 1.) könnte dann auch ohne dynamische BOs auskommen. Allerdings muss der User schon wissen was er da macht. Als Alternative könnte man auch noch über Report-Datenquellen nachdenken, die einem BO zugewiesen werden können. Aktuell gibt es noch gar keine Reports im Webclient.
Wäre eine Willkommensansicht mit Diagrammen im Webclient nicht schön?
| Codeblock | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
{
"chartLabel": {"de": "Umsatzanalyse", "en": "sales analysis"},
"primaryChart": {
"chartType": "(Column|Bar|Line|Pie|Scatter|Speedometer)",
"boMetaId": "com_buymore_Umsaetze",
"categoryAttrId": "com_buymore_Umsaetze_umsatzjahr",
"categoryLabel": {"de": "Jahr"},
"scaleLabel": {"de": "TEuro"},
"series": [
{
"boAttrId": "com_buymore_Umsaetze_umsatz",
"label": {"de": "Umsatz"},
"color": "#000000"
},
{
"boAttrId": "com_buymore_Umsaetze_gewinn",
"label": {"de": "Gewinn"},
"color": "#222222"
}
],
"searchTemplate": [
{
"label": "Jahr von",
"boAttrId" : "com_buymore_Umsaetze_umsatzjahr",
"comparisonOperator": ">=",
"mandatory": true
},
{
"label": "bis",
"boAttrId" : "com_buymore_Umsaetze_umsatzjahr",
"comparisonOperator": "<=",
"mandatory": true
},
{
"label": "Artikelkategorie",
"boAttrId" : "com_buymore_Umsaetze_kategorie",
"comparisonOperator": "=",
"mandatory": true,
"dropdown": true
}
]
},
"secondaryChart": {
"chartType": "Line",
"useCombinedScaleWithPrimary": false,
"boMetaId": "com_buymore_Arbeitsleistung",
"categoryAttrId": "com_buymore_Arbeitsleistung_jahr",
"scaleLabel": {"de": "h"},
"series": [
{
"boAttrId": "com_buymore_Arbeitsleistung_stunden",
"color": "#777777"
}
]
}
} |
nur zur Auswahl stellen was Sinn macht
| Paket | Aufwand in Tagen | Erledigt |
|---|---|---|
| Version 0.1 Demonstration fertiger Diagramme | ||
| Einbindung prüfen | x | |
Neue JSON Struktur zur Ablage solch einer Diagrammkonfiguration. Möglicherweise neues Konzept für "Preferences" aller Art. | x | |
| x | |
| x | |
| x | |
| Rendern der Diagramme im Webclient | x | |
| 2 | x |
| 3 | x |
| 1 | x |
| 0,5 | x |
| Version 0.2 Erste Lieferung (Interaktivität, Filterung) | ||
| Diagramm-Datenquellen sollen einem Benutzer ebenfalls als "Datenherkunft" angeboten werden. Hierfür muss in der Datenquelle das Attribut "Eltern-Businessobjekt" (NEU) gesetzt sein. Für BOs mit Statusmodell muss zusätzlich im Statusmodell eine Berechtigung vergeben werden, ähnlich den Unterformularen. | 0,5 | x |
| Filterung der Daten | x | |
| x | |
| x | |
| x | |
| Konfiguration der Diagramme | ||
| ||
| ||
| Preferences Sharing, Berechtigung und Nucletzuweisung (derzeit hat jeder Benutzer seine eigenen Prefs / Diagrammkonfigurationen) | x | |
| x | |
| x | |
Klick / Touch auf einen Punkt, Balken etc. soll Details anzeigen. Verwendung 1 (im BO): | 1,5 | x |
| x | |
| x | |
| Version 1.0 | ||
Konfiguration der Diagramme | ||
| ||
| ||
| ||
| ||
| ||
| Preferences Sharing - Teil II | ||
| ||
Version 2.0 | ||
| Verwendung 2. u. 3. | ||
| ||
|