Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Statistik mit TDBCart ? (https://www.delphipraxis.net/157017-statistik-mit-tdbcart.html)

smart 24. Dez 2010 14:49

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.

Bummi 24. Dez 2010 15:14

AW: Statistik mit TDBCart ?
 
Kannst Du gruppieren und für die Gruppen gegf. zusätzliche Unterdiagramme erstellen?

alzaimar 24. Dez 2010 16:36

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....

Hansa 24. Dez 2010 16:41

AW: Statistik mit TDBCart ?
 
Zitat:

Zitat von smart (Beitrag 1070351)
Wie seit Ihr vorgegangen damit das Ganze übersichtlich ist.

Eigentlich geht das ziemlich einfach. Allerdings nur, wenn man weiss, wie. Ist klar. :P Zuerst Datenmenge richtig zusammenstellen.

Angenommen die Datenmenge ist vorhanden, dann (stark verkürzt) :

Delphi-Quellcode:
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;
Vor und zurück ginge dann so :

Delphi-Quellcode:
if not AusgabeDS.Eof then begin
  chStat.Show;
  AusgabeDS.Next
end
else begin
  chStat.Hide;
  showmessage ('keine weiteren Daten vorhanden !');
end;
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 !!

wg. roter Kasten : so siehst aus !

smart 24. Dez 2010 22:08

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.

mschaefer 24. Dez 2010 22:17

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

smart 24. Dez 2010 22:39

AW: Statistik mit TDBCart ?
 
Zitat:

Zitat von mschaefer (Beitrag 1070376)
Frohe Weihnachten aus Hannover
Martin

Hi, Martin, alle Grüße voll zurück. Du sitzt auch am Pc.? Ich sehe gerade an unsere Daten, dass wir ja schon alte Hasen hier in der DP sind. Nochmals, schöne Feiertage.

mschaefer 24. Dez 2010 23:44

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

mschaefer 26. Dez 2010 11:00

AW: Statistik mit TDBCart ?
 
Moin, moin

einige Beispiele zu DBChart:
Chart example at Delphi About.com
at stema.net

Tücken bei TDBChart: TDBChart and WideString

und mehr allgemeine Beispiele auf Torry Chrt and Graphics

Auch wenn der Artikel etwas speziell ist, könnte es passen:
Olap with Delphi using MSSQL-Server

und noch ausgefalleneres gibt es: Chart in an ISAPI App.

Grüße aus dem Norden

smart 26. Dez 2010 17:31

AW: Statistik mit TDBCart ?
 
Zitat:

Zitat von mschaefer (Beitrag 1070488)

einige Beispiele zu DBChart:
Chart example at Delphi About.com
at stema.net

Viele Dank für die Mühe Martin. Die Beiden hatte ich auch schon gesehen. Du hattest aber Recht, mehr wie 30 Einheiten kann man nicht übersichtlich darstellen. Daher werde ich eine Art Highscore darstellen, wo die besten 30 verkauften Waren dargestellt werden. Für eine ganze Darstellung aller Waren dachte ich an eine art Strichliste, welche aller Dings nur ausgedruckt werden kann (wegen der Länge). Hört sich dumm an und sieht nicht so gut aus, ist aber gar nicht so schlecht. Wenn man die Blätter zusammen fügt oder Endlospapier nimmt, ist es sogar einigermaßen übersichtlich.

Ware 1234 |||||||||| (10)
Ware 7456 |||||| (6)
Ware 7555 |||||||||||||||||||||| (22)
...

Grüße aus NRW


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:26 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz