![]() |
Tabellen im Quickreport?
Hallöchen,
gibt für Quickreport die Möglichkeit Inhalte tabellarisch darzustellen? Mit Memo ist das ja nur bedingt möglich... |
Re: Tabellen im Quickreport?
Ja, gibt es. Dazu brauchst Du ein rbColumnHeader Band, und ein Detailband.
Im Onneeddata des Reports, kannst Du dann die Daten des Detailbandes einstellen und festlegen, ob noch mehr Daten gedruckt werden. Im Beforeprint setzt Du einen internen Zähler auf 1. Das ganze könnte dann so aussehen:
Delphi-Quellcode:
procedure TDruckform.EreignisreportBeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean); begin printreport := true; EreignisZaehler := 1; end; procedure TDruckform.Ereignisreport2NeedData(Sender: TObject; var MoreData: Boolean); begin if EreignisZaehler = 1 then Ereignisreport2.NewColumn; QRLabel448.caption := DeinText; moredata := EreignisZaehler <= GeraeteEreignis.AnzahlEreignisse; inc(Ereignis2Zaehler); end; |
Re: Tabellen im Quickreport?
Danke
das ist ein guter Ansatz. In der OH von Delphi gibts kaum Beschreibungen zu den einzelnen QRkomponenten. Übergangsweise hab ich das so gelöst dass ich 3 schmale memos nebeneinander gesetzt habe :-) Beforeprint gehört zum TQuickReport?! Oder zum Band? funktioniert das mit dem Headerband auch mit Schleife? zB.aus einer sql-abfrage while not tabelle.eof .. schreibe... end; |
Re: Tabellen im Quickreport?
Ich habs begriffen :-)
mein onneeddata:
Delphi-Quellcode:
sieht jetzt so aus.
if ergz = 1 then
bonrep.NewColumn; spa1.caption := Form1.elist.Cells[1,ergz]; spa2.Caption := Form1.elist.Cells[2,ergz]; spa3.Caption := Form1.elist.Cells[5,ergz]; moredata := ergz <= Form1.elist.RowCount; inc(ergz); end; Nun gibts es in dem Report auch einen Header und Footer, sowie ein summary. Diese werden nun für jedes row im Grid mit gedruckt. Wo genau setzt man hier an? |
Re: Tabellen im Quickreport?
Tut mir leid, da muss ich passen. Ich habe es bisher immer ohne summary gemacht.
Wenn Du es findest, wäre es aber schön wenn Du es hier postest |
Re: Tabellen im Quickreport?
auffällig ist , dass die Zeilen aus dem Grid
immer in ein neues Page gedruckt werden und nicht hintereinander auf eine Page. Selbst der Versuch 3 Reports auf eine Form zu machen brachte nix, wobei ich die Idee von Anfang an nicht für gut hielt, hab ich es probiert. Nun sieht der Report so aus: Report->Headerband->rbColumnHeaderband->Detailband->Footerband. Ich weiß nicht wo was eingestellt werden muss das die Daten aus onneeddata auf eine Page geschrieben werden. Statt jedesmal eine neue Seite zu drucken.... |
Re: Tabellen im Quickreport?
Also ich hab es fertiggestellt,
es muss halt nur die Reihenfolge der Bands eingehalten werden. Header->Columheader->Detailband->Footer Das Detailband sollte nicht größer sein als die Labels hoch sind, da der Rest als Leerzeilen gedruckt wird. Die Größe des Reports (Page length) dann neu einstellen: Pagelength=length+(Ereigniszaehler*Labelhöhe) Dadurch wird nur ein kleiner Streifen gedruckt wenn nur wenig Daten da sind, und nicht die volle Länge des Report mit vielen freien Zeilen. Ansonst würde ich den Thread als gelöst bezeichnen. Dank an dich für die Anregung |
Re: Tabellen im Quickreport?
Danke auch für die Erklätung.
Ich werde es mir merken, wenn ich so etwas auch mal habe |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:18 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