Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   Fast Report PrepareRaport (https://www.delphipraxis.net/197599-fast-report-prepareraport.html)

Lemmy 23. Aug 2018 08:13

AW: Fast Report PrepareRaport
 
@Michael: Wenn Du ne PN schreibst und ne Antwort willst, dann solltest Du die Beschränkung abschalten, dass man dir keine PN schreiben darf :-)

michael.cohrs 23. Aug 2018 08:27

AW: Fast Report PrepareRaport
 
Oh Sorry, hab ich glatt übersehen das Häckchen jedoch ist das Problem noch vorhanden leider,
kennst Du eine Alternative zu Pages.AddPrepared ?

Lemmy 23. Aug 2018 08:35

AW: Fast Report PrepareRaport
 
Ich habe es selbst noch nicht in den aktuellen FR versucht, aber in FR4++ sollte das funktionieren:

Delphi-Quellcode:
frxReport1.PreviewPages.AddFrom(frxReport2);

michael.cohrs 24. Aug 2018 07:12

AW: Fast Report PrepareRaport
 
Guten Morgen Lemmy,

ich hab es versucht und es klappt auch, jedoch ist das nicht die Lösung für mein Problem
denn die Fastreport Routine PrepareReport ist so quälend langsam, alles andere läuft recht flott.
Ist es möglich einen oder mehrere Reports ohne Prepare darzustellen? Ich denke da an Memorystream oder ähnliches

Frickler 31. Aug 2018 16:31

AW: Fast Report PrepareRaport
 
Zitat:

Zitat von michael.cohrs (Beitrag 1411269)
Guten Morgen Steku, guten Morgen Frickler,

@ Frickler: Es sind 2-Pass Reports. Dein Ansatz / Lösung kling vielversprechend, hast Du vielleicht ein
Beispiel für mich an dem ich mich Orientieren kann, ich habe bisher keine Erfahrung damit.

Hier mal kurz skizziert, wie das funktioniert (mit UniDAC):

Delphi-Quellcode:
var
  TempProvider: TDataSetProvider;
  TempQuery  : TUniQuery;
...
TempProvider := TDataSetProvider.Create(nil);
TempQuery := TUniQuery.Create(nil);
try
  try
    TempQuery.Connection := ...
    TempQuery.UnPrepare;
    TempQuery.SQL.Text := 'SELECT bla FROM blubb WHERE faselrhabarber = :F';
    TempQuery.Params := ...
    TempQuery.Prepare;
    TempQuery.Active := true;
    TempProvider.Options := [poIncFieldProps];
    TempProvider.DataSet := TempQuery;
    cds.IndexName := '';
    cds.Data := TempProvider.Data;
  except
    on E: Exception do
      ...(Fehler melden)...
  end
finally
  TempQuery.Free;
  TempProvider.Free;
end;
Hinweis: "cds" ist eine auf dem Datenmodul liegende TClientDataSet-Komponente. Diese dient dann als Datenquelle für den Report. "sqltxt" ist die Anweisung für den Report.


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

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