AGB  ·  Datenschutz  ·  Impressum  







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

Quickreport Vorschau und Druck

Ein Thema von af99 · begonnen am 22. Apr 2004 · letzter Beitrag vom 27. Apr 2004
Antwort Antwort
af99

Registriert seit: 22. Apr 2004
84 Beiträge
 
Delphi XE5 Ultimate
 
#1

Quickreport Vorschau und Druck

  Alt 22. Apr 2004, 12:59
Hallo,

ich habe ein kleines Problem mit dem Quickreport (delphi 6).
Delphi-Quellcode:
procedure TForm8.ChildBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
...

if form1.radiogroup3.ItemIndex = 1 then
begin
form1.tb_rg_nr.Last;
rgnr := strtoint(copy(form1.tb_rg_nr.fieldbyname('rgnr').Asstring,6,4)) + 1;
dummy_rgnr := inttostr(rgnr);
dummy_rgnr2 := copy(form1.tb_rg_nr.fieldbyname('rgnr').Asstring,1,5);
laenge := 4;
laenge := laenge - length (dummy_rgnr);

for t := 1 to laenge do
begin
dummy_rgnr := '0' + dummy_rgnr;
end;

qrlabel54.Caption := copy(form1.tb_rg_nr.fieldbyname('rgnr').Asstring,1,5) +
dummy_rgnr;
form1.tb_rg_nr.Edit;
form1.tb_rg_nr.Append;
form1.tb_rg_nr.fieldbyname('rgnr').Asstring := dummy_rgnr2 + dummy_rgnr;

end else
begin
qrlabel54.Caption := 'keine !!!';
end;
....
vergebe hiermit eine fortlaufende Rechnungsnummer auf jeder Seite der Reports.
Rufe den Report mit Preview auf. Rechnungsnummern sind auch alle korrekt.
Wenn ich nun den Report aus der Vorschau drucke werden die Rechnungsnummern nochmal vergeben. Also in Preview stehen die Nummern 1,2,3,4,5, auf dem Ausdruck aber die Nummern 6,7,8,9,10.
Verstehe ich nicht.

kann mir jemand helfen ?

Gruss
Andreas

[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Quickreport Vorschau und Druck

  Alt 22. Apr 2004, 13:07
Hai af99,

ersteinmal: "Herlich willkommen in der Delphi-PRAXIS".

wenn ich das richtig sehe speicherst Du ja die Rechnungsnummern. Da die ganze Prozedure bei drucken noch einmal durchlaufen wird werden jetzt natürlich die nächsten Rechnungsnummern verwendet.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
af99

Registriert seit: 22. Apr 2004
84 Beiträge
 
Delphi XE5 Ultimate
 
#3

Re: Quickreport Vorschau und Druck

  Alt 22. Apr 2004, 13:19
hi Sharky,

jep das wusste ich auch !!! (habe ich ja an meinen ausdrucken gesehen).
Ich frage mich nur wieso die Prozedur nochmal durchlaufen wird. Ist doch schon alles beim Preview passiert. Es muss doch eigentlich nur Das Ergebnis als "screenshot" ausgedruckt werden.

Kann ich irgendwie den nochmaligen Durchlauf verhindern ?????

Gruss
Andreas
  Mit Zitat antworten Zitat
af99

Registriert seit: 22. Apr 2004
84 Beiträge
 
Delphi XE5 Ultimate
 
#4

Re: Quickreport Vorschau und Druck

  Alt 26. Apr 2004, 15:32
Hi,

hat keiner eine Idee.

Gruss
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#5

Re: Quickreport Vorschau und Druck

  Alt 26. Apr 2004, 15:35
Setze eine Boolean-Variable am Ende der Schleife. Falls die Boolean-Variable schon gesetzt ist, darfst du die Schleife nicht mehr durchlaufen. Nach dem drucken muss die Boolean-Variable zurückgesetzt werden.
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
af99

Registriert seit: 22. Apr 2004
84 Beiträge
 
Delphi XE5 Ultimate
 
#6

Re: Quickreport Vorschau und Druck

  Alt 26. Apr 2004, 15:57
Hi,

habe ich gemacht (abwechselnd bei allen Ereignissen des QR). Entweder erhalte ich nur noch eine Nummer, Keine Nummer oder wie oben beschrieben 2 x fortlaufende Nummern.

Gruss
Andreas
  Mit Zitat antworten Zitat
LKutscher

Registriert seit: 25. Sep 2003
7 Beiträge
 
Delphi 5 Enterprise
 
#7

Re: Quickreport Vorschau und Druck

  Alt 27. Apr 2004, 10:28
Da das BeforePrint von QR vor jedem Neuaufbau des Berichtes aufgerufen wird (also vor jedem Preview und jedem Print), solltest du das Füllen der Label-Felder an anderer Stelle durchführen - z.B. dort, wo du die Preview aufrufst:

Delphi-Quellcode:

var
  RgNrText: string

procedure TForm8.ShowReport;
begin
  [...]
  form1.tb_rg_nr.Last;
  rgnr := strtoint(copy(form1.tb_rg_nr.fieldbyname('rgnr').Asstring,6,4)) + 1;
  dummy_rgnr := formatFloat('0000', rgNr) //hat denselben Effekt, wie deine Schleife
  dummy_rgnr2 := copy(form1.tb_rg_nr.fieldbyname('rgnr').Asstring,1,5);
  RgNrText := dummy_rgnr2 + dummy_rgnr;
//form1.tb_rg_nr.Edit; (vor dem Append überflüssig)
  form1.tb_rg_nr.Append;
  form1.tb_rg_nr.fieldbyname('rgnr').Asstring := RgNrText;

  QuickReport1.Preview;
end;

procedure TForm8.ChildBand1BeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean);
begin
  if form1.radiogroup3.ItemIndex = 1 then
  begin
   qrlabel54.Caption := RgNrText;
   [...] (eventuell zuweisung von RgNrText zu weitern Labels ...)
  end else
    qrlabel54.Caption := 'keine !!!';
RgNrText kann entweder ein Formularfeld, eine Unit-Variable (Deklaration im Implementation-Abschnitt) oder eine Globale Variable (Deklaration im Interfaces-Abschnitt) sein - je nachdem, von wo aus du darauf zugreifst.
Die Methode ShowReport kannst du auf dem QR-Formular als public Methode deklarieren und dann (statt Form8.QuickReport.Preview)
als Form8.ShowReport aufrufen.
  Mit Zitat antworten Zitat
af99

Registriert seit: 22. Apr 2004
84 Beiträge
 
Delphi XE5 Ultimate
 
#8

Re: Quickreport Vorschau und Druck

  Alt 27. Apr 2004, 11:33
Hi,

ersteimal vielen Dank.

habe ich umgesetzt und dann leider festellen müssen das ich immer nur eine RGNR habe(ist ja auch logisch da Sie auch nur einmal erzeugt wird).

Mein Report besteht aber aus 1-n Rechnungen, also auch aus 1-n Seiten. D.H. ich brauche natürlich auch n Rechnungsnummern.

Gruss
Andreas
  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:17 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