![]() |
Tchart mit Rave 5.0 Tip 19 von Nevrona
Hallo Raver,
ich versuche verzweifelt ein Tchart in einen Report zu bringen. Habe dazu die Schritte in Tip 19 realisiert, bekomme aber beim Ausführen den Fehler Field Dataview2:Piechart. Datatype expected: dtString Datatype found: dtGraphic Im Metafile habe ich Dataview2 und als Fieldname Piechart definiert. Im Übrigen hatte ich vorher noch den Fehler, daß der Compiler TRPCustomconnection (wie im Tip 19 angegeben) nicht kannte - habe TRVCustomconnection genommen. Wer kann mit helfen? Detlef |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
Liste der Anhänge anzeigen (Anzahl: 1)
detlef,
schau' mal in das attachment :wink: thomas, TeamNevrona |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
Hallo Thomas,
das sieht in Deinem Projekt ja richtig gut aus. Wenn ich aber den Rave-Designer starte, kommt Stream-Lesefehler, so daß mir die Seite nicht angezeigt wird. Mir ist unklar, wie ich zu DataView2Barchart: Graphic-Field komme. Wenn ich im Metafile ein Feld spezifiziere, wird immer ein Stringfeld draus! Detlef |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
hi,
nutzt du die version 5.0.8 von rave (d.h. das update von der borland-page) ?? schaue dir die customConnection-proceduren im pas-file mal' an. :-) thomas, TeamNevrona |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
Hallo Thomas,
habe nun Rave 5.0.8 von Borland geholt und installiert. Kann jetzt Dein Project öffnen. Leider ist mir immer noch schleierhaft, wie ich zu Dataview2Barchart: GraphicField Komponente komme? Gib mir bitte noch einen Tipp! Detlef |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
detlef,
du musst in der RvCustomConnection die Felder definieren, deine Application starten (!) und dann kannst du in der RAVE-IDE die Felder übernehmen. daneben noch in den uses die charts einfügen. :-) thomas, TeamNevrona |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
Hallo Thomas,
vielen Dank für diesen Tipp. Habe inzwischen schon nach dem Motto 'Dumm kannste sein - du must dir nur zu helfen wissen' aus Deinem Projekt Dataview2 exportiert und in meins importiert und siehe da es geht. Hast Du vielleicht noch einen Tipp, wie ich wieder eine deutsche Hilfe bekomme? Rave-Update 5.0.8 ist leider englisch und hapert's bei mir schon etwas: Danke für die Hilfe! Detlef |
TChart einfach in RAVE darstellen
Zitat:
Habe aber schnell herausgefunden, wie es geht. // Hiermit definierst Du alle möglichen Charts die Du auf Deinem Report verwenden möchtest -> bei "OnGetCols" definieren
Delphi-Quellcode:
// Das Schreibt die meta-Daten an Rave, für jedes Chart mußt Du auch eine Zeile definieren! Bei "OnGetRow" definieren
procedure TForm1.RvCustomConnection1GetCols(
Connection: TRvCustomConnection); begin Connection.WriteField('Chart1', dtGraphic, 30, '', ''); Connection.WriteField('Chart2', dtGraphic, 30, '', ''); end;
Delphi-Quellcode:
// Dies hier muß bei "OnOpen" definiert werden
procedure TForm1.RvCustomConnection1GetRow(
Connection: TRvCustomConnection); begin WriteChartData(Connection, Chart1); WriteChartData(Connection, Chart2); end;
Delphi-Quellcode:
// Wenn Du die folgenden beiden Proceduren vergisst, dann hast Du eine Endlosschleife -> Rave->Task-Beenden
procedure TForm1.RvCustomConnection1Open(Connection: TRvCustomConnection);
begin ChartRow := 1; // ChartRow ist bei "Var ChartRow:Integer" der Form zu definieren. end; // Die müssen bei "OnEOF" und "nNext"
Delphi-Quellcode:
// Hiermit rufst Du das ganze auf...
procedure TForm1.RvCustomConnection1Next(Connection: TRvCustomConnection);
begin inc(ChartRow); end; procedure TForm1.RvCustomConnection1EOF(Connection: TRvCustomConnection; var Eof: Boolean); begin Eof := (ChartRow > 1); end;
Delphi-Quellcode:
Jetzt die Applikation starten UND DANN erst die CustomConnection unter "NewDataObject->DirectDataView" importieren.
procedure TForm1.BitBtn2Click(Sender: TObject);
begin RvProject1.Execute; // oder mit ExecuteReport('Reportname') end; Dort sollte dann "DataView1Chart1" (und weitere) als Feldname stehen... Steht "DataViewFieldName" hast Du die Applikation nicht gestartet...-> Starten und dann auf Refresh... Danach Plazierst Du ein MetaFileComponent (Standard) und Gibst Dataview und Datafield an... F9 und das Chart sollte zu sehen sein... Achtung, F9 geht bei CustomConnection nur, wenn die Applikation läuft, sonst-> Fehlermeldung Ich hoffe, die Beschreibung hilft Dir weiter... Leider ist die Doku recht dürftig und man verschwendet viel Zeit mit probieren. Liebe Grüße |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
ich habe das gleiche Problem. Habe das mit einem DBChart gemacht (sollte doch das selbe Prinzip sein, oder ?)
Jedenfalls habe ich alles wie beschrieben erstellt. Apllication läuft auch. Im Rave Designer kann ich auch den DataView sehen, das Feld auswählen (In der Meta Komponente). Aber leider bleibt der Report leer bzw. zeigt mir nur das Raster der Meta Komponente an. Also meine Schritte waren so. - RPTChart in die uses mit aufgenummen. - DB Chart erstellt. (wird auch saber angezeigt). - CustomConnection hinzugefügt - Ereignisse wie beschrieben erstellt. - Aplication Compiliert (ohne Fehler) und den Rave Designer gestartet. - Dataview hinzugefügt (CustonConnection). - Meta Komponente hinzugefügt und Dataview und Field entsprechend eingetragen. - Report mit F9 (als Preview) gestartet. und jetzt bin ich ratlos. :gruebel: Kurze Infos zu den Programmversionen. Delphi 7 und Rave Version 5.0 (Borland Edition). Vielen Dank schonmal für Tips die mich auf den richtigen weg bringen. Gruß Markus. |
Re: Tchart mit Rave 5.0 Tip 19 von Nevrona
Zitat:
Wenn ein Fenster bei "automatisch erzeugt" drinnen steht darf es nur mit "fenster.show" geöffnet werden und nicht mit "TFormTourPlanen.Create(Application)" wie es aus den Beispielen ersichtlich ist. ansonsten gibt es das Fenster dann zweimal... das war bei mir der häufigste Grund, warum das Rave häufig nicht die richtigen Daten oder leere Seiten gezeigt hat... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:42 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-2025 by Thomas Breitkreuz