AGB  ·  Datenschutz  ·  Impressum  







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

Rave einzelne Seiten drucken

Ein Thema von okoeller · begonnen am 2. Jun 2008 · letzter Beitrag vom 4. Jun 2008
Antwort Antwort
okoeller

Registriert seit: 21. Nov 2006
66 Beiträge
 
Turbo Delphi für Win32
 
#1

Re: Rave einzelne Seiten drucken

  Alt 4. Jun 2008, 18:35
Ich hab es inzwischen wie folgt gelöst:
Vielleicht hilft mein Ansatz ja hier weiter.

Delphi-Quellcode:
uses
  . . .
  RpSystem, RpRave, RpDefine, RpRender, RpRenderCanvas,
  RpRenderPreview, RpBase, RpFiler, RpRenderPDF, RvClass, RvCSStd;
Im constructor :
Delphi-Quellcode:
   FReport := TRvProject.Create(self);

   FReport.ProjectFile := TFormularwesenRes.Instance.PluginFilePath + 'Risikoanalyse.rav';
   FReport.Open;
   FReport.ProjMan.ActiveReport.PageList.Clear;
   (* Seiten hinzufügen die immer enthalten sein sollen *)
   RS1 := FReport.ProjMan.ActiveReport.LoadedPage[0];
   RS2 := FReport.ProjMan.ActiveReport.LoadedPage[1];
   FReport.ProjMan.ActiveReport.PageList.Add(RS1);
   FReport.ProjMan.ActiveReport.PageList.Add(RS2);
Jede weitere Seite wird über Ja- Nein-RadioButtons aktiviert/deaktiviert.
Also das OnClick-Ereignis eines Radiobuttons mit einer Prozedur verbinden die der PageList eine weitere Seite hinzufügt oder löscht.

Delphi-Quellcode:
procedure TfrmRisikoanalyse.rbxxxJAClick(Sender: TObject);
begin
  Aktivierexxx(true);
end;

procedure TfrmRisikoanalyse.rbxxxNEINClick(Sender: TObject);
begin
  Aktivierexxx(false);
end;

procedure TfrmRisikoanalyse.Aktivierexxx(value: boolean);
begin
...
  ReportSeiteAktivieren('S2',value);      (* S2 ist der Name der Seite im RaveDesigner *)
end;

procedure TfrmRisikoanalyse.ReportSeiteAktivieren(Bez:string; const value: boolean);
begin
  FRSeite := FReport.ProjMan.FindRaveComponent('Risikoanalyse.'+Bez, nil) as TRavePage;
  if value = true then
  begin
    FReport.ProjMan.ActiveReport.PageList.Add(FRSeite);
  end else begin
    FReport.ProjMan.ActiveReport.PageList.Remove(FRSeite);
  end;
end;
Via ButtonClick das Anzeigen des Protokolls auslösen und vorher Feldparameter übergeben.

Delphi-Quellcode:
procedure TfrmRisikoanalyse.ProtokollErzeugen(Vorschau: boolean);
var
  ProtokollArt: string;
begin
  (* Parameter zuweisen*)
  FReport.SetParam('ProtokollArt', ProtokollArt);
  FReport.SetParam('Teilnehmer', FD.Teilnehmer);
  . . .
  
  if Vorschau then
  begin
  (*  zeigt in der Framekomponente eine Vorschau an *)
    FReport.Engine := FNDRWriter;
    FNDRWriter.StreamMode := smUser;
    FNDRWriter.Stream := FReportStream;
    FReport.ExecuteReport('Risikoanalyse');
    FPreview.NDRStream := FReportStream;
    FPreview.ScrollBox := ScrollBox1;
    FPreview.Render;
    FPreview.ZoomFactor := FPreview.ZoomPageWidthFactor;
  end else begin
    (* Zeigt den Standard Output Options Dialog an *)
   FReport.Engine := nil;
    FReport.Execute;
  end;
end;
Oliver
  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 20:03 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