![]() |
Datenbank: ABS • Version: 5.1 • Zugriff über: Dataset
Statistik mit TDBCart ?
Hallo Alle!
Habe hier eine Tabelle mit 370 Einträgen. Jetzt soll eine Statistik – in Form von Diagrammen – erstellt werden. Jetzt habe ich versucht das Ganze mit TDBCart zu lösen. Ist aber unübersichtlich. Jetzt meine Frage, hat einer von Euch schon mal so etwas erstellt. Wie seit Ihr vorgegangen damit das Ganze übersichtlich ist. |
AW: Statistik mit TDBCart ?
Kannst Du gruppieren und für die Gruppen gegf. zusätzliche Unterdiagramme erstellen?
|
AW: Statistik mit TDBCart ?
Was für eine Statistik?
Was sind das für Werte? Was stellen sie dar? Eine Statistik hat ja mit einem Chart nichts gemein.... |
AW: Statistik mit TDBCart ?
Zitat:
Angenommen die Datenmenge ist vorhanden, dann (stark verkürzt) :
Delphi-Quellcode:
Vor und zurück ginge dann so :
AusgabeDS.close; // zuerst Datenmenge ermitteln
AusgabeDS.SelectSQL.Add ('SELECT * FROM ARTSTAT WHERE'); AusgabeDS.SelectSQL.Add ('ID_ART = :ID AND JAHR = :JAHR ORDER BY MONAT'); AusgabeDS.ParamByName('ID').AsInteger := LeseIntFeld (AusgabeDS,'ID'); AusgabeDS.ParamByName('JAHR').AsString := edVonJahr.Text; AusgabeDS.open; while not AusgabeDS.Eof do begin WertArray [LeseIntFeld (AusgabeDS,'MONAT')] := LeseRealFeld (AusgabeDS,WertFeld); AusgabeDS.Next; VerglJahrZaehler := VerglJahrZaehler + 1; end; // Die Datensätze werden als 12er Block in Array gelesen und an das TChart übergeben : for i := 1 to 12 do begin if WertArray[i] <> 0 then Series2.AddXY(i,WertArray[i]) else Series2.AddXY(i,0) end;
Delphi-Quellcode:
Das ist jetzt eventuell noch zu kompliziert, wegen der Monate. Ausserdem ist das jetzt eigentlich vom TChart her nur für Linien-Grafiken brauchbar. Wie das am Besten geht, das ist auch sehr stark von der darzustellenden Datenmenge abhängig !!
if not AusgabeDS.Eof then begin
chStat.Show; AusgabeDS.Next end else begin chStat.Hide; showmessage ('keine weiteren Daten vorhanden !'); end; wg. roter Kasten : so siehst aus ! |
AW: Statistik mit TDBCart ?
@Hansa
Die Idee ist nicht schlecht. Danke. @Bummi Statistik ist hier etwas weit hergeholt. Das Ganze ist eine Warenliste mit 300> verschidene Waren. Es soll dargestellt werden von welchen Waren am meisten verkauft wurden. Natürlich sollte man möglichst mit einem Blick sehen können wie der Bestand ist. Ich habe versucht das Ganze mit Strichen in Form eines Grafen dar zu stellen. Sieht aber nicht so gut aus. |
AW: Statistik mit TDBCart ?
Na offensichtlich scheint das als Weihnachtsproblem zu starten mit Feiertagseinsatz :wink:.
Meist geht die Übrsichtlichkeit so ab 30 in Eimer. Ich würde das in Warengruppen aufteilen und dann bei Anklicken einer Warengruppe innerhlab der Warengruppe ein Diagramm machen. Und Top 30 Sales und Top 30 Ladenhüter als Monatscharts. Ja im Zeitraum kann man das auch noch variieren. Wenn man das man Anfängt ist das kein Weihnachtsproblem mehr sondern wächst . . . Frohe Weihnachten aus Hannover Martin |
AW: Statistik mit TDBCart ?
Zitat:
|
AW: Statistik mit TDBCart ?
Ja ist wohl so, aber offensichtlich gehörst Du immernoch zu den Nachtschwärmern 8-)
Grüße und gute Nacht Martin |
AW: Statistik mit TDBCart ?
Moin, moin
einige Beispiele zu DBChart: ![]() ![]() Tücken bei TDBChart: ![]() und mehr allgemeine Beispiele auf Torry ![]() Auch wenn der Artikel etwas speziell ist, könnte es passen: ![]() und noch ausgefalleneres gibt es: ![]() Grüße aus dem Norden |
AW: Statistik mit TDBCart ?
Zitat:
Ware 1234 |||||||||| (10) Ware 7456 |||||| (6) Ware 7555 |||||||||||||||||||||| (22) ... Grüße aus NRW |
AW: Statistik mit TDBCart ?
Ja ich habe die Liste auch als Sammlung für mich mal angelegt, denn soviel gibt es da nicht wie Du auch wohl schon gemerkt hast. Bei mehr Posten ist das leidlich. Mache derzeit viel mit SAS und da sind Dashboards (Tachometer und Co.) gerade modern, aber irgendwie sind 90 Tachos auch nicht übersichtlich.
Aber bei Deiner Liste zum Ausdruck, bringst Du mich auf eine Idee. Eine Webseite hat wie ein Drucker keine vertikale Begrenzung und man kann nach unten eigentlich beliebig viele Artikel anhängen. Dann kann man auch horizontale Balken einfach untereinander legen. Also könnte man von Delphi Code für eine Webseite generieren und mit TWebbrowser anzeigen oder drucken lassen. Um es einigermaßen einfach zu halten würde ich dann css zur Graphic nutzen: Balken Definition
Code:
Balkenaufruf pro Artikel
<style>
.graph { position: relative; /* IE is dumb */ width: 200px; border: 1px solid darkgreen; padding: 2px; } .graph .bar { display: block; position: relative; background: green; text-align: center; color: #B1D632; height: 2em; line-height: 2em; } .graph .bar span { position: absolute; left: 1em; } </style
Code:
Naja so in etwas. In etwas günstigerem Wachzustand muß ich das nochmal vervollständigen.
<div class="graph">
<strong class="bar" style="width: 24%;">24%</strong> </div> <div class="graph"> <strong class="bar" style="width: 24%;">24%</strong> </div> . . . Grüße / Martin |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz