Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Quickreport erzeugt Zugriffsverletzung beim Aufruf (https://www.delphipraxis.net/37418-quickreport-erzeugt-zugriffsverletzung-beim-aufruf.html)

mr.floppy81 5. Jan 2005 17:42


Quickreport erzeugt Zugriffsverletzung beim Aufruf
 
moin,
wo fang ich an...

also ich habe ein programm... das läuft nicht

Ich habe die HauptForm und die QRForm.

In der Hauptform stelle ich berechnungen an.. lese über edit felder was ein. In dieser Hauptform ist in der mainmenuleiste ein eintrag Vorschau.

Wenn ich die schaltflächedrücke will ich eine Ansicht bekommen, wo alle ergebnisse aufgeführt sind. Ich möchte das über einen QR machen.

Habe das auch schon an einem Beispiel ausgetestet und das funzt 1a.

Dann kam mein Prog..Ich führe das mal kurz auf:

und der haupt1.form steht
Delphi-Quellcode:
procedure thaupt1.vorschau1click (sender : Tobject);
begin
quickreport.quickrep1.preview;
end
das sollte mir jetzt den Quickreport aufrufen.
Macht es aba net... Könnt ihr mir helfen wie ich auf eine lösung kommen kann??

Er zeigt mir nämlich die fehlermeldung an: Im Projekt Projekt1.exe ist eine exception der Klasse EAccessviolation aufgetreten. Meldung: 'zugriffsverletzung be adresse 004e99f3 in modul 'projekt1.exe'. lesen von Adresse 000002do'. prozess wurde angehalten.

wenn ich dann wieder den start kopf drücke steht diese Meldung da:
zugriffsverletzuung bei adresse 004e99f3 in modul Projekt1.exe. lesen von adresse 000002d0.

habe alle in der quickreportunit auftretenden variablen schon ausgeklammert{...} aber der fehler tritt weiterhin auf

kann ich im Quickreport in einer gruppenkopfzeile das ereignis before print aktivieren und dann schreiben:
Delphi-Quellcode:
procedure tquickreport.qrband2beforeprint...

begin
qrlabel14:= ti;
end

wie geschrieben würde ich den wert den ich berechnet habe jetzt grne in der hauptform sehen

hoffe auf eure hilfe...
LG Andres

[edit=MrSpock]Titel geändert. Mfg, MrSpock[/edit]

omata 5. Jan 2005 20:00

Re: wieder ein qr problem...
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin,

hier ist ein Beispiel. Schau es dir mal an, vielleicht hilft es dir...


MfG
Thorsten

SirThornberry 5. Jan 2005 20:24

Re: wieder ein qr problem...
 
[OT]Irgendwie nehmen die nichtssagenden ThreadTitel immer mehr zu. QR hat mir überhaupt nichts gesagt, und selbst wenn man weis das es Quick Report heißt weiß man nicht im entferntesten um was es in dem Thread noch geht. Ich denk Probleme hat hier so ziemlich jeder wenn er was postet (außer in OpenSource und Freeware). Für Leute die später die Suche bemühen und ein Problem mit QuickReport haben bekommen die Krise weil in jedem Titel nur Quickreport vorkommt und die leute somit alle Threads erst lesen müssen weil aus dem Titel nicht ersichtlich ist um was es genau bei deinem Quickreport-Problem geht. Sinnvoller wäre da wohl: "AccessViolation beim Aufruf von Quickreport" Somit weiß man wenigstens schon im entferntesten welches Problem du mit Quickreport hast.

Ein weiteres Beispiel ist der Thead mit dem Thema "Listboxen". Da könnte man auch gleich den Betreff "Delphi-Komponente" nehmen oder nur "Komponente"
[/OT]

mr.floppy81 6. Jan 2005 09:04

Re: wieder ein qr problem...
 
@ omata kannst du mal bitte in deine Nachrichten gucken? habe dir was geschrieben.

@ sir thornberry ich gelobe besserung ;)

Sharky 6. Jan 2005 09:06

Re: wieder ein qr problem...
 
Zitat:

Zitat von mr.floppy81
....@ sir thornberry ich gelobe besserung ;)

Ändere doch bitte einfach den Titel. Danke :stupid:

MrSpock 6. Jan 2005 09:41

Re: wieder ein qr problem...
 
Hallo mr.floppy81,

grundsätzlich kannst du einem Label in der beforePrint Methode einen Text zuweisen, aber wo ist ti definiert und wie wird der Wert von ti festgelegt? Werden alle Daten im Report über QRText Felder erzeugt und wie werden die gefüllt? Benutzt du auch datensensitive QuickReport Komponenten? Gibt es noch andere Zeilen im Quickreport Code, die nicht auskommentiert sind? Und heißt das Formular, in dem der Report steht wirklich Quickreport?

DP-Maintenance 6. Jan 2005 09:47

DP-Maintenance
 
Dieses Thema wurde von "MrSpock" von "Object-Pascal / Delphi-Language" nach "VCL-Komponenten und Controls" verschoben.
Der Fehler betrifft die QuickReport Komponente und ist kein allgemeines ObjectPascal oder Sprachen Problem.

mr.floppy81 6. Jan 2005 16:46

Re: Quickreport erzeugt Zugriffsverletzung beim Aufruf
 
@ sharky...
:duck: wusste gar net das man den titel nachträglich ändern kann...

MrSpock 7. Jan 2005 22:42

Re: Quickreport erzeugt Zugriffsverletzung beim Aufruf
 
Hallo mr.floppy81,

ich hab den Fehler gefunden. Du hast die Unit Quickreport1 im Projekt nicht automatisch erzeugt, sondern nur als verfügbares Formular eingerichtet. Das Objekt Quickreport existiert also noch gar nicht, wenn du Preview aufrufst. Daher kommt auch die Fehlermeldung.

Wenn du es so machst:

Delphi-Quellcode:
procedure Thaupt1.Drucken1Click(Sender: TObject);
begin
 quickreport := Tquickreport.Create(Self);
 quickreport.Quickrep1.Preview;

end;
ist die Fehlermeldung weg.

Das du dann aber nicht siehst, wenn du Drucken wählst, liegt daran, dass du kein Detailband hast. Du musst ein Detailband und die Methode OnNeedData so überschreiben, dass mindestens einmal MoreData True ist.

Beispiel: Füge ein Label in das Detailband und weise der OnNeedData Methode folgenden Code zu:

Delphi-Quellcode:
procedure Tquickreport.QuickRep1NeedData(Sender: TObject;
  var MoreData: Boolean);
begin
   Inc(Zeilen);
   QRLabel1.Caption := 'Hallo';
   MoreData := (Zeilen < 2);
end;

procedure Tquickreport.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
   Zeilen := 0;
end;
Das musst du machen, da du keine datensensitiven Elemente nutzt.

mr.floppy81 11. Jan 2005 09:32

Re: Quickreport erzeugt Zugriffsverletzung beim Aufruf
 
Hurra,

es geht *freu* :thumb: .

Vielsten Dank all den freundlichen Helfern. ;)

LG Andreas


PS: eine Frage habe ich noch, wieso definierst du die variable Zeilen? das ist mir nicht so ganz klar? inc erhöht die Variable Zeilen, aba warum wird "Zeilen" definiert???


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:25 Uhr.
Seite 1 von 2  1 2      

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