AGB  ·  Datenschutz  ·  Impressum  







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

QuickReport: Count-Funktion

Offene Frage von "Windwalker"
Ein Thema von Windwalker · begonnen am 10. Aug 2009 · letzter Beitrag vom 10. Aug 2009
Antwort Antwort
Windwalker

Registriert seit: 9. Mär 2009
72 Beiträge
 
#1

QuickReport: Count-Funktion

  Alt 10. Aug 2009, 09:08
Hallo!

Quick Report bietet ja die Count-Funktion.

Leider ist die QR-Hilfe so spärlich, über Count steht fast nichts drin.

Kann mir jemand eine besser Quelle empfehlen, wo ich mich in diese Funktion einlesen kann?
Ich will eine bestimmte QRGroup
a) einmal immer zählen, wie oft sie auftritt
b) nur dann zählen, wie oft sie mit einem bestimmten Feld, und dieses mit eindeutigen Werten, auftritt.

Danke für die Hilfe
  Mit Zitat antworten Zitat
pmoegenb

Registriert seit: 24. Aug 2006
Ort: Aidlingen
155 Beiträge
 
Delphi XE6 Professional
 
#2

Re: QuickReport: Count-Funktion

  Alt 10. Aug 2009, 10:41
Weshalb zählst Du nicht einfach QRGroupAfterPrint hoch.
Peter Mögenburg
Gruß

Peter
  Mit Zitat antworten Zitat
Windwalker

Registriert seit: 9. Mär 2009
72 Beiträge
 
#3

Re: QuickReport: Count-Funktion

  Alt 10. Aug 2009, 10:52
Du meinst wahrscheinlich, dass ich das im AfterPrint-Event machen soll.

Kannst Du mir ein Beispiel geben?
- wie ich immer hochzähle
- und wie ich nur dann hochzähle, wenn der eine Wert, um den es mir geht, unique ist (um die distincten zu erhalten)
Geht das so einfach?
  Mit Zitat antworten Zitat
pmoegenb

Registriert seit: 24. Aug 2006
Ort: Aidlingen
155 Beiträge
 
Delphi XE6 Professional
 
#4

Re: QuickReport: Count-Funktion

  Alt 10. Aug 2009, 11:59
Zitat von Windwalker:
Du meinst wahrscheinlich, dass ich das im AfterPrint-Event machen soll.
Genau.

Beispiel:
Delphi-Quellcode:
private
    { Private-Deklarationen }
    Anzahl1, Anzahl2: Integer;

procedure TFrm.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
     Anzahl1 := 0;
     Anzahl2 := 0;
end;

procedure TFrm.QuickRep1AfterPrint(Sender: TObject);
begin
     Anzahl1 := Anzahl1+1;
     If Bedingung then Anzahl2 := Anzahl2+1;
end;
Peter Mögenburg
Gruß

Peter
  Mit Zitat antworten Zitat
Windwalker

Registriert seit: 9. Mär 2009
72 Beiträge
 
#5

Re: QuickReport: Count-Funktion

  Alt 10. Aug 2009, 12:18
Zitat von pmoegenb:
Beispiel:
Delphi-Quellcode:
private
    { Private-Deklarationen }
    Anzahl1, Anzahl2: Integer;

procedure TFrm.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
     Anzahl1 := 0;
     Anzahl2 := 0;
end;

procedure TFrm.QuickRep1AfterPrint(Sender: TObject);
begin
     Anzahl1 := Anzahl1+1;
     If Bedingung then Anzahl2 := Anzahl2+1;
end;
Aha, dann könnte ich z.B. alle Werte in eine StringList schreiben und dann jeweils im AfterPrint überprüfen, ob der Eintrag schon in der Liste ist.
Falls nicht, in die Liste einfügen und Anzahl2 erhöhen.

Richtig so?
Wie lese ich die Variablen dann mit QuickReport aus?
  Mit Zitat antworten Zitat
pmoegenb

Registriert seit: 24. Aug 2006
Ort: Aidlingen
155 Beiträge
 
Delphi XE6 Professional
 
#6

Re: QuickReport: Count-Funktion

  Alt 10. Aug 2009, 13:07
Zitat von Windwalker:
Aha, dann könnte ich z.B. alle Werte in eine StringList schreiben und dann jeweils im AfterPrint überprüfen, ob der Eintrag schon in der Liste ist.
Falls nicht, in die Liste einfügen und Anzahl2 erhöhen.

Richtig so?
Wie lese ich die Variablen dann mit QuickReport aus?
Ja, z.B. mit einer Stringliste.

Die Werte der Variablen kannst Du einem QRLabel zuweisen. Z. B.

Delphi-Quellcode:
procedure TFrm.QRLabel13Print(sender: TObject; var Value: String);
begin
     Value := IntToStr(Anzahl1);
end;
Peter Mögenburg
Gruß

Peter
  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 10:29 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