Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi QReport (https://www.delphipraxis.net/49914-qreport.html)

cell 18. Jul 2005 10:52

Datenbank: sql • Zugriff über: database

QReport
 
hi
ich hab hier auf meinem QReport einige QRDBTextfelder und will in diese dateneinlesen, leider haben diese Felder keine Caption und kein Text, auch Lines.Add oder Append funktioniert nicht,
weiß jemand wie man da was einfügt

thx

marabu 18. Jul 2005 12:27

Re: QReport
 
Hi cell,

die datensensitiven Controls aus der QuickReport-Palette erhalten ihre Daten aus einer Query oder allgemein aus einem DataSet. Du kannst, nachdem du die Eigenschaft DataSet von TQRDBText entsprechend gesetzt hast, im property editor von DataField das richtige Feld auswählen. Wenn die Form mit dem Report in der Uses-Klausel schon dein Datenmodul aufführt, dann kannst du im Feld DataSet sogar auswählen.

Grüße vom marabu

Fehlenden Buchstaben ergänzt

MrSpock 18. Jul 2005 12:31

Re: QReport
 
Hallo cell,

ergänzend möchte ich noch darauf hinweisen, dass man im OnPrint Event den Ausgabewert noch anpassen kann (einfach dem Wert Value das zuweisen, was angezeigt werden soll).

cell 18. Jul 2005 12:32

Re: QReport
 
gibt es keine andere möglichkeit ? so etwas wie mit dem momofeld memofeld1.Lines.Add()
gibt es sowas nicht ???

Duke_2004 18. Jul 2005 12:38

Re: QReport
 
Gibt es schon... Quickreport + Stringsbänder + Quickreport.OnNeedData -> Den ganzen Druck selbst zusammenstellen, aber das macht bei einem etwas größerem Druck ne Menge Arbeit... Musste das zwar schon öfters machen, aber genau erklären kann ich es jetzt auch net auf die schnelle...

cell 18. Jul 2005 12:40

Re: QReport
 
hast du ein tutorial darüber wie man das händisch macht bzw kann mir das jemand anders erklären ??

FBrust 18. Jul 2005 12:41

Re: QReport
 
Hallo,

wenn Du QRDB-Textfelder verwendest, geht es nicht anders als MrSpock und marabu beschrieben haben. Die einzige Möglichkeit für "freien" Text, der nicht aus der Datenbank stammt, wäre ein QRLabel, dem Du in Deinem Programm oder im OnPrint-Ereignis über die Eigenschaft .Caption einen beliebigen Text zuweisen kannst.


Gruß
Frank

marabu 18. Jul 2005 12:45

Re: QReport
 
Zitat:

Zitat von cell
gibt es keine andere möglichkeit ? so etwas wie mit dem momofeld memofeld1.Lines.Add()
gibt es sowas nicht ???

QRMemo.Lines.Add()

cell 18. Jul 2005 12:45

Re: QReport
 
danke dir :)

Duke_2004 18. Jul 2005 12:50

Re: QReport
 
:oops: Sorry, vergessen zu schreiben... Geht natürlich net mit QRDBLabel
Ich meinte auch die QRLabel...

cell 18. Jul 2005 12:53

Re: QReport
 
Delphi-Quellcode:
frmfriktionstest.qrlbltest.Caption:=lbldatum.Caption;
so müsste das doch stimmen es geht zwar aber es schreibt mir nichts hinein ??????

FBrust 18. Jul 2005 13:19

Re: QReport
 
Stimmt, so sollte es funktionieren

Versuch mal:

1. Steht in lblDatum.Caption was drin?

2. Setz den Wert doch mal im OnPrint-Ereignis des Labels (Value := lblDatum.Caption). Steht dann was drin?


Gruß
Frank

cell 18. Jul 2005 13:33

Re: QReport
 
nein steht leider auch nichts drinnen, aber ich bekomme vorher immer noch einen fehler irgendwas mit FROm vom SQL befehl.
aber ich habe mir das ganze probramm gerade von meinem partner gehohlt und bei ihm geht es ohne fehler und bei mir ist einer ??
was kann das sein ??

Matthias-k 18. Jul 2005 13:42

Re: QReport
 
sag uns ja nicht, was für ein sql string es ist und sag uns auch nicht, was für eine fehlermeldung! frag einfach nach der ursache!

cell 18. Jul 2005 14:55

Re: QReport
 
lol
die SQL fehlermeldung ist jetzt weg aber hineinschreiben tut er trodzdem nichts

marabu 18. Jul 2005 15:11

Re: QReport
 
Wenn "er" nichts reinschreibt, dann hat "er" wahrscheinlich nix zum reinschreiben. Setze mal einen break point auf die Zeile mit der Zuweisung und schau dir den Inhalt von lblDatum.caption an. Wenn du nicht weiter kommst, wirst du dann doch mal etwas code und das sql statement herzeigen müssen.

marabu

cell 18. Jul 2005 15:14

Re: QReport
 
ich hab ja auch schon probiert das ich ihm was zuweise
Delphi-Quellcode:
frmfriktionstest.qrlbltestnummer.Caption:='hallo';
funktioniert leider auch ned

zum code keine ahnung wast du da haben möchtest das sind nur labels :)

Sharky 18. Jul 2005 16:12

Re: QReport
 
Hai cell,

bitte verstehe mich nicht falsch:
Aber möchtest Du nicht ersteinmal die anderen "Probleme" deines Programmes beheben?

Du hast, wenn ich das richtig sehe grundlegende Probleme mit:
  • Dem Syntax von Delphi
  • Datenbankdesign (und SQL-Abfragen)

Darum empfehle ich dir:

Versuche erst einmal etwas einfacheres. Weil -> So kommst Du nicht weiter!

marabu 18. Jul 2005 16:18

Re: QReport
 
@cell

deine Zuweisung ist in Ordnung, aber du machst sie zum falschen Zeitpunkt. Sie gehört in das Ereignis OnBeforePrint() des Bandes, in dem dein Label positioniert ist.

marabu

cell 19. Jul 2005 06:41

Re: QReport
 
morgen

Delphi-Quellcode:
procedure Tfrmfriktionstest.bdqrtitelBeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
qrlbltestnummer.Caption:=frmtestauswahl.cbotestnummer.Text;
end;
mit dem hab ich das auch schon probiert, funktioniert auch ned. Aber rein theorethisch muss das doch auch funktionieren wenn ich bei einer anderen Form auf einen Button klicke und dann sich der Bericht öffnet und ich ihm das reinschreibe??

Delphi-Quellcode:
procedure Tfrmmdichild.cmdberichtClick(Sender: TObject);

begin
     frmfriktionstest.showModal;
     frmfriktionstest.qrlbltestnummer.Caption:=frmtestauswahl.cbotestnummer.Text;
end;

marabu 19. Jul 2005 08:10

Re: QReport
 
Also einfach so sichtbar wird da gar nichts - hast du deinen Report überhaupt schon mal angewiesen sich zu rendern?

Print() und Preview() heißen die Methoden.

marabu

FBrust 19. Jul 2005 08:16

Re: QReport
 
Hallo,

Zitat:

frmfriktionstest.showModal;
frmfriktionstest.qrlbltestnummer.Caption:=frmtesta uswahl.cbotestnummer.Text;
Bei mir musste ich die Zuweisung machen, bevor ich den Bericht anzeige, also:

Delphi-Quellcode:
     
     frmfriktionstest.qrlbltestnummer.Caption:=frmtestauswahl.cbotestnummer.Text;
frmfriktionstest.DeinQuickReport.Preview;
.

Der Grund ist, dass sich der Bericht nach dem Rendern nicht mehr ändern lässt.

Gruß
Frank

Baeumchen 19. Jul 2005 10:37

Re: QReport
 
hallo,

ich weiß, das es hier nicht mit rein passt, aber ihr werd es bestimmt trotzdem wissen :)

aber welcher version habe ich QReport?
ich habe Delphi7 Enterprise und ich habe es nicht gefunden, also dort wo auch BDE, WIN32 und so weiter ist
oder muss ich da noch was extra installieren??

FBrust 19. Jul 2005 10:46

Re: QReport
 
Hallo,

Du hast Recht, es gehört nicht hierher, aber trotzdem: Wo ist Quickreport? (Ziemlich weit unten)

Gruß
Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:57 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