AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi FastReport und frxUserDataSet Problem
Thema durchsuchen
Ansicht
Themen-Optionen

FastReport und frxUserDataSet Problem

Ein Thema von Wirtz · begonnen am 18. Sep 2015 · letzter Beitrag vom 18. Sep 2015
Antwort Antwort
Wirtz

Registriert seit: 18. Sep 2015
4 Beiträge
 
Delphi XE Professional
 
#1

FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 09:45
Hallo zusammen,

kann mir vielleicht jemand sagen, warum das OnGetValue Ereigniss der frxUserDataSet-Komponente immer zweimal ausgeführt wird?
Es fällt mir gerade schwer das Problem eindeutig zu schildern daher folgend ein Beispiel:

Aufruf des Reports:
Delphi-Quellcode:
  frxReportAusdruck.LoadFromFile(Report+'\FRAusdruck.fr3');
  frxUserDataSet1.Tag:= 0;
  frxReportAusdruck.PrepareReport();
  frxReportAusdruck.ShowPreparedReport;

Delphi-Quellcode:
procedure TfrmAusdruck.frxUserDataSet1CheckEOF(Sender: TObject;
  var Eof: Boolean);
begin
  Eof:= frxUserDataSet1.Tag = frmPuffer.lvPuffer.Items.Count;
end;

procedure TfrmAusdruck.frxUserDataSet1First(Sender: TObject);
begin
frxUserDataSet1.Tag := 0;
end;

procedure TfrmAusdruck.frxUserDataSet1GetValue(const VarName: string;
  var Value: Variant);
begin
  if VarName = 'XYthen begin
       Value := strXY;
    end
    else if VarName = 'FAthen
        Value := strFA
    else if VarName = 'Titelthen
        Value := strFRTitel
    else if VarName = 'Anlagethen
    ...
end;

procedure TfrmAusdruck.frxUserDataSet1Next(Sender: TObject);
begin
  frxUserDataSet1.Tag:= frxUserDataSet1.Tag + 1;
end;
Der Report wird korrekt Angezeigt, aber die Procedure TfrmAusdruck.frxUserDataSet1GetValue wird zweimal ausgeführt. Das heißt, jeder VarName wird zweimal aufgerufen und beschrieben.

Hat vielleicht jemand eine Idee für mich woran das liegen könnte?

Vielen Dank
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 09:47
weil Du mehr als einen Datensatz hast?
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 09:50
Ich könnte mir vorstellen, dass es an der Double Pass-Option liegt. Ist aber nur ne Vermutung.
Jens
  Mit Zitat antworten Zitat
Wirtz

Registriert seit: 18. Sep 2015
4 Beiträge
 
Delphi XE Professional
 
#4

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 10:36
Ok. Viel geschrieben und die Aussage noch nicht treffend formuliert von mir.

Ja ich habe mehrere Datensätze aber in einem Datensatz wird der VarName zweimal aufgerufen und beschrieben.

Beispiel:
1234
2345
3456

jetzt wird bei Datensatz 1234 zweimal Value:= 'XY' und so weiter aufgerufen.

Double Pass-Option? sagt mir leider nichts.
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 10:44
Im Reportdesigner kannst Du in den Optionen für den Report irgendwo einen Haken "Double Pass" (ich glaub, ist auf Deutsch mit "Zweipass" übersetzt) setzen.

Einige Report-Funktionen benötigen diese Option. Dabei wird der Report praktisch 2x generiert. Wenn Du z.B. eine Seitennummerierung haben willst "Seite 1/10", dann wird im ersten Durchgang ermittelt, wie viele Seiten der Report insgesamt hat und im 2. Durchgang wird dann der Report mit der richtigen Gesamtseitenzahl generiert. Daher könnte ich mir vorstellen, dass mit dieser Option auch das GetValue-Event 2x aufgerufen wird.
Jens
  Mit Zitat antworten Zitat
Wirtz

Registriert seit: 18. Sep 2015
4 Beiträge
 
Delphi XE Professional
 
#6

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 11:06
Also an der DoublePass-Option lag es nicht. Stand schon auf False.
Aber auch mit True und nochmals False schalten liegt der Fehler weiterhin vor.

Danke führ den Hinweis
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#7

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 11:13
Könnte es daran liegen, dass du den Report zunächst "vorbeitest" mit Prepare und dann anzeigst?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Wirtz

Registriert seit: 18. Sep 2015
4 Beiträge
 
Delphi XE Professional
 
#8

AW: FastReport und frxUserDataSet Problem

  Alt 18. Sep 2015, 11:57
Daran hatte ich auch schon gedacht, ist allerdings nicht der Fall.
Ohne das PrepareReport wird nichts angezeigt und ShowPreparedReport durch ShowReport ersetzt zeigt nur eine Art abgespeckten Report an.
  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 22:55 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