Registriert seit: 15. Mär 2004
8 Beiträge
|
TChart in Delphi 7 einfach mit Rave ausdrucken
3. Jul 2004, 23:09
Tip 19 auf der Ravehomepage ist leider unvollständig...
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:
procedure TForm1.RvCustomConnection1GetCols(
Connection: TRvCustomConnection);
begin
Connection.WriteField('Chart1', dtGraphic, 30, '', '');
Connection.WriteField('Chart2', dtGraphic, 30, '', '');
end;
// Das Schreibt die meta-Daten an Rave, für jedes Chart mußt Du auch hier eine Zeile definieren! Bei "OnGetRow" definieren
Delphi-Quellcode:
procedure TForm1.RvCustomConnection1GetRow(
Connection: TRvCustomConnection);
begin
WriteChartData(Connection, Chart1);
WriteChartData(Connection, Chart2);
end;
// Dies hier muß bei "OnOpen" definiert werden
Delphi-Quellcode:
procedure TForm1.RvCustomConnection1Open(Connection: TRvCustomConnection);
begin
ChartRow := 1; // ChartRow ist bei "Var ChartRow:Integer" der Form zu definieren.
end;
// Wenn Du die folgenden beiden Proceduren vergisst, dann hast Du eine Endlosschleife -> Rave->Task-Beenden
// Die müssen bei "OnEOF" und "nNext"
Delphi-Quellcode:
procedure TForm1.RvCustomConnection1Next(Connection: TRvCustomConnection);
begin
inc(ChartRow);
end;
procedure TForm1.RvCustomConnection1EOF(Connection: TRvCustomConnection;
var Eof: Boolean);
begin
Eof := (ChartRow > 1);
end;
// Hiermit rufst Du das ganze auf...
Delphi-Quellcode:
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
RvProject1.Execute; // oder mit ExecuteReport('Reportname')
end;
Jetzt die Applikation starten UND DANN erst die CustomConnection unter "NewDataObject->DirectDataView" importieren.
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
|
|
Zitat
|