AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tchart und Access DB

Ein Thema von poterp · begonnen am 28. Aug 2006 · letzter Beitrag vom 29. Aug 2006
Antwort Antwort
poterp

Registriert seit: 27. Mär 2005
175 Beiträge
 
#1

Tchart und Access DB

  Alt 28. Aug 2006, 18:39
Hallo Freunde,

Ich habe ein Problem und zwar ich möchte die Daten, was ich auf ein Access DB habe Graphisch darstellen, und Zwar Links vertikal soll bestimmt Name aus der DB übernohmen werden und horizontal unter Zahlen. ich habe die verbindung mit Jet ole hergestellt und weiter weisse ich nicht kann mich jemanden helfen???? ich benutze Delphi 2005 Architekt und Teechart 4.04

Grüß
Poter

meine Code


Delphi-Quellcode:
procedure TForm1.Button13Click(Sender: TObject);
const FieldName0 = 'Ereignis_name';
       FieldName1 = 'Positiv';
       FieldName2 = 'Neutral';
       FieldName3 = 'Negativ';
       FieldName4 = 'ohne Wertung';
       Max_data_count = 10;
var i,j, v1, v2, v3, v4 : integer;
   name : AnsiString;
 p : TChartSeriesList;
begin
  Chart1.Title.Text.Clear;
  Chart1.Title.Text.Add('Chart1 Title'+ ComboBox3.Text);
  Chart1.Title.Text.Add(DBLookupComboBox6.Text);
  Chart1.Title.Text.Add( 'Bezugsubjekt:'  + ComboBox3.Text);
  Chart1.Title.Text.Add('Geschäftsfeld:'  + ComboBox4.Text);
  Chart1.Title.Text.Add( 'Bezugsgebiet:'  + ComboBox5.Text);
  Chart1.Title.Text.Add( 'Zeitbezug:'  + Tabsheet1.Caption);
  Chart1.Title.Text.Add( 'Urheber:'  + ComboBox6.Text);
 // Chart1.Series[0].Add(70,'');
 // Chart1.Series[1].Add(90,'');
 // Chart1.Series[2].Add(80,'');
 // Chart1.Series[3].Add(90,'');

//ShowMessage('Series count = ' + IntToStr(Chart1.SeriesCount));

 tbl_data.First;
 i:=0;
 // clear series
  Chart1.Series[0].Clear;
  Chart1.Series[1].Clear;
  Chart1.Series[2].Clear;
  Chart1.Series[3].Clear;
   labels.Clear;
while (not tbl_data.Eof) do
begin
    name:= tbl_data.FieldByName(FieldName0).AsString;
    v1 := tbl_data.FieldByName(FieldName1).AsInteger;
    v2 := tbl_data.FieldByName(FieldName2).AsInteger;
    v3 := tbl_data.FieldByName(FieldName3).AsInteger;
    v4 := tbl_data.FieldByName(FieldName4).AsInteger;
    tbl_data.Next;

// chart1.Series[0].
   // Chart1.
    labels.Add(name);
    Chart1.Series[0].Add(v1, '');
    Chart1.Series[1].Add(v2, '');
    Chart1.Series[2].Add(v3, '');
    Chart1.Series[3].Add(v4, '');
    inc(i);
    if (i > max_data_count) then break;
 end;


end;

procedure TForm1.Button14Click(Sender: TObject);

const FieldName0 = 'Ereignis_name';
       FieldName1 = 'Positiv';
       FieldName2 = 'Neutral';
       FieldName3 = 'Negativ';
       FieldName4 = 'ohne Wertung';
       Max_data_count = 10;
var i,j, v1, v2, v3, v4 : integer;
 p : TChartSeriesList;
begin
ShowMessage('Series count = ' + IntToStr(Chart1.SeriesCount));

 tbl_data.First;
 i:=0;
 // clear series
  Chart1.Series[0].Clear;
  Chart1.Series[1].Clear;
  Chart1.Series[2].Clear;
  Chart1.Series[3].Clear;

 while (not tbl_data.Eof) do
begin
    v1 := tbl_data.FieldByName(FieldName1).AsInteger;
    v2 := tbl_data.FieldByName(FieldName2).AsInteger;
    v3 := tbl_data.FieldByName(FieldName3).AsInteger;
    v4 := tbl_data.FieldByName(FieldName4).AsInteger;
    tbl_data.Next;
    Chart1.Series[1].Add(v1, '');
    Chart1.Series[2].Add(v2, '');
    Chart1.Series[3].Add(v3, '');
    Chart1.Series[4].Add(v4, '');
    inc(i);
    if (i > max_data_count) then break;
 end;


end;


procedure TForm1.FormCreate(Sender: TObject);
begin
 labels := TStringList.Create;
end;

procedure TForm1.Chart1GetAxisLabel(Sender: TChartAxis; Series: TChartSeries;
  ValueIndex: Integer; var LabelText: string);
begin
    if (labels.Count > 0) and (ValueIndex >0)
    then
    begin
    if (valueIndex <= labels.count) then LabelText := labels[ValueIndex];

    end;
end;
[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]
  Mit Zitat antworten Zitat
29. Aug 2006, 06:13
Dieses Thema wurde von "Sharky" von "Die Delphi-IDE" nach "VCL / WinForms / Controls" verschoben.
Die Frage könnte auch in die DB-Sparte. Aber hauptsächlich geht es ja um das TChart
Thanatos81
(Gast)

n/a Beiträge
 
#3

Re: Tchart und Access DB

  Alt 29. Aug 2006, 07:56
Gibt es bei der D2005 auch das TDBChart? Das ist nämlich für solche Fälle sehr schön. Du verbindest einfach eine TDataSource-Komponente mit deiner Datenmenge. Dann kannst du im TDBChart zu den einzelnen Series die TDataSource auswählen und die Felder für die einzelnen Achsen bestimmen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:21 Uhr.
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