AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi alte quick reports in bds 2006 übernehmen ohne qr zu ändern
Thema durchsuchen
Ansicht
Themen-Optionen

alte quick reports in bds 2006 übernehmen ohne qr zu ändern

Ein Thema von cherry · begonnen am 23. Jan 2007 · letzter Beitrag vom 13. Mär 2007
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von cherry
cherry

Registriert seit: 14. Nov 2005
561 Beiträge
 
RAD-Studio 2009 Ent
 
#11

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 24. Jan 2007, 09:51
Zitat von MaBuSE:
Anmerkung: Evtl. wurden fehlende Eigenschaften umbenannt oder in andere Objekte verschoben.
Dann sollte man prüfen, ob diese Eigenschaften noch sinnvoll gesetzt werden müssen.
Ich habe alle Reports geöffnet, keine fehlermeldung.
Auch beim kompillieren kein Problem.

Laufzeitfehler beim laden der Reports. Programm kann dann nicht weiter ausgeführt werden.
Der Fehler eben "Fehlende Eigenschaft: reportXY.ClientHight ...

Diese Eigenschaft ist aber für jeden einzelnen Report gesetzt.

- Zudem muss ich vielleicht erwähnen, dass ich in D7 ein Chart (Kuchen Diagramm) angezeigt hatte,
diese Komponente scheint nicht mehr vorhanden zu sein in QR 4 für BDS2006. - Ich habe dies einfach gelöscht,
momentan wäre ich schon froh wenn der Rest funzen würde.

- Auch Habe ich festgestellt, dass einige Reports in der Formularansicht nicht mehr korrekt angeordnet waren.
Diesen Fehler habe ich dann manuell behoben...

kannst du mir mir mir noch einen Tip geben, wie würdest du nun weiter vorgehen?
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#12

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 24. Jan 2007, 10:43
Hallo cherry,

lösche mal alle DCU-Dateien in deinem Projektverzeichnis und erzeuge dann dein Programm neu.

Ansonsten: Mach mal einen Doppelklick auf deinen TQuickRep im Formular, dann sollte sich eigentlich ein Dialog öffnen, mit dem du die Seiteneinstellungen vornehmen kannst. Schau mal, ob dort etwas ungewöhnlich ist.

Die Eigenschaft ClientHeigth gibt es bei TQuickRep.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#13

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 24. Jan 2007, 12:30
Zitat von cherry:
Laufzeitfehler beim laden der Reports. Programm kann dann nicht weiter ausgeführt werden.
Der Fehler eben "Fehlende Eigenschaft: reportXY.ClientHight ...

Diese Eigenschaft ist aber für jeden einzelnen Report gesetzt.

- Zudem muss ich vielleicht erwähnen, dass ich in D7 ein Chart (Kuchen Diagramm) angezeigt hatte,
diese Komponente scheint nicht mehr vorhanden zu sein in QR 4 für BDS2006. - Ich habe dies einfach gelöscht,
momentan wäre ich schon froh wenn der Rest funzen würde.

- Auch Habe ich festgestellt, dass einige Reports in der Formularansicht nicht mehr korrekt angeordnet waren.
Diesen Fehler habe ich dann manuell behoben...

kannst du mir mir mir noch einen Tip geben, wie würdest du nun weiter vorgehen?
Ich würe folgende Dinge tun:
  • Die TeeChart Komponenten gibt es in einer neuen Std Version bei Borland zum kostenlosen Download. (ca. 15 MB) Wenn Du die installierst, kannst du in der welcome.txt nachlesen wie Dich unter http://www.steema.com/downloads/client_access.html einloggen kannst (in der txt stehen die Logindaten)
    Dort gibt's einen Download um TeeChart mit dem QuickRep zu nutzen. (Source code of QRChart control (QuickReport chart) packages for BDS 2006)
    Damit ist dieses Problem schon mal gelöst.
  • Wenn die Reports in der Formularansicht nicht mehr korrekt angeordnet waren, deutet das auf Probleme hin.
    Ich würde mir das Formular mal im Text Modus anschauen und kontrollieren, ob die Objekte alle im gewünschten Container liegen.
    (Rechtsklick auf Formular -> Ansicht als Text)
  • zu guter Letzt würde ich Debuggen um herauszufinden wo der Fehler genau auftritt.
    Wenn der Fehler in den vorkompilerten dcu der Komponenten auftritt, hilft auch ein DebugTool wie MAD Exceptions, oder die in der kostenlosen JEDI JCL enthaltenen Möglichkeiten. (jclDebug)
  • Wenn mich das alles nicht weiterbringen würde, würde ich mal ein Leeres Projekt anlegen und mal einen Report neu erstellen.
    Wenn das schon nicht gelingt, muss was an der Installation faul sein.
    Wenn es funktioniert würde ich das Formular des Reports wieder als Text anzeigen lassen und mit dem nicht funktionierenden vergleichen. Die Unterschiede würde ich dann genauer analysieren. Sprich das Beispielprojekt dahingehend erweitern, das die Formulardateien gleich sind.
    Wenn das funktioniert, ist das Problem in Deinem Quellcode zu suchen.
    Also würde ich alle relevanten Teile in das Beispielprogramm implementieren.
    Wenn das funktioniert, wäre ich erst mal ratlos
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Benutzerbild von cherry
cherry

Registriert seit: 14. Nov 2005
561 Beiträge
 
RAD-Studio 2009 Ent
 
#14

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 24. Jan 2007, 13:01
Zitat von MaBuSE:
... Ich würe folgende Dinge tun: ...
- Danke das werde ich genau so machen...
- Dies wird eine Weile dauern, ich werde dann meinen Stand wieder Preisgeben,
wenn ich all diese Schritte durch hab.

Vielen Dank schon mal bis dahin.
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#15

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 24. Jan 2007, 13:15
Zitat von cherry:
Vielen Dank schon mal bis dahin.
Keine Ursache, gern geschehen.
Mich würde auch interesieren, woran es dann letztendlich lag.
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Benutzerbild von cherry
cherry

Registriert seit: 14. Nov 2005
561 Beiträge
 
RAD-Studio 2009 Ent
 
#16

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 30. Jan 2007, 12:59
r So...

habe schon wieder Stunden damit verbraten die QR's endlich zum laufen zu bringen...
leider hab ichs immer noch nicht geschafft.

- Die Formulare scheinen soweit in Ordnung zu sein, ausser:
dass sie sich nicht in einem TQuickRep lagen... (also nicht im richtigen Container)

- Ich habe dann die "Fehlende" (?) Komponente eingefügt und die anderen Reportkomponenten
dort hinein getan. Nun ist der Bericht zumindest Optisch (in der Entwicklungsumgebung)
wieder i.o.

- Leider kommt immer noch die selbe Fehlermeldung beim Compillieren: "..Eigenschaft ClientHight.." ist nicht gesetzt
Obwohl diese Eigenschaft überall gesetzt ist... (mehrfach überprüft)

- Das ist leder alles was ich herausbekommen habe..


PS:

In D7 konnte man unter "Datei->Neu->weitere" einen "Bericht" (QR) erstellen...
Bei BDS2006 geht das nicht mehr (Zumindest bei mir)

die übernommenen QR sind normale Formulare.. vielleicht ist da der Bock???

- Hat noch jmd eine Idee? -Ich bin nämlich am Ende meines Pascals...
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 30. Jan 2007, 16:22
Hast du geschaut ob diese Eigenschaft auch in der dfm existiert?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#18

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 31. Jan 2007, 06:51
Hallo Cherry,

bist du sicher, dass die Property ClientHeight von TQuickRep gesetzt wird, oder wird die Property bei TForm gesetzt. Dein Hinweis auf die Nutzung des Assistenten von D7 läßt darauf schließen, dass überhaupt kein TForm existiert.

Bei meinen Programmen liegt TQuickRep immer auf einem normalen TForm, ich konnte dabei keine Probleme feststellen. Letztlich ist es schwer, dein Problem aus der Ferne zu lösen, da du bis jetzt auch keinen Quelltext gezeigt hast, der vielleciht einen Hinweis auf dein Problem geben könnte.

Hast du mal versucht, wenigstens einen deiner Reports komplett neu zu designen? Wenn nicht, solltest du das nachholen, und dann vergleichen, was anders ist als bei deinen Originalen.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#19

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 31. Jan 2007, 08:34
Zitat von mikhal:
bist du sicher, dass die Property ClientHeight von TQuickRep gesetzt wird, oder wird die Property bei TForm gesetzt. Dein Hinweis auf die Nutzung des Assistenten von D7 läßt darauf schließen, dass überhaupt kein TForm existiert.
Bei meinen Programmen liegt TQuickRep immer auf einem normalen TForm, ich konnte dabei keine Probleme feststellen. Letztlich ist es schwer, dein Problem aus der Ferne zu lösen, da du bis jetzt auch keinen Quelltext gezeigt hast, der vielleciht einen Hinweis auf dein Problem geben könnte.
Ich habe die QR auch immer auf ein Form gelegt
Ich werde das mal austesten und Dir dann posten... (heute noch)
Ich habe da schon eine Idee
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#20

Re: alte quick reports in bds 2006 übernehmen ohne qr zu änd

  Alt 31. Jan 2007, 12:25
Zitat von cherry:
In D7 konnte man unter "Datei->Neu->weitere" einen "Bericht" (QR) erstellen...
Bei BDS2006 geht das nicht mehr (Zumindest bei mir)
die übernommenen QR sind normale Formulare.. vielleicht ist da der Bock???
Hallo, ich habe eine Lösung für Dich

Du hast Recht. Genau hier liegt das Problem.
Delphi denkt Dein Report ist ein Formular (TForm) und deshalb klappt es nicht.
Delphi 2006 kann (wegen des fehlenden QR Experten) nicht mit diesen Reports ohne Form umgehen.

Aber es gibt eine einfache Lösung:
  • Achte darauf, das der QuickReport als Text abgespeichert wird.
    (In die *.dfm Dateien kucken, falls die binär gespeicher sind, einfach im Delphi 7 in den Report gehen und das TQuckRep im Formulardesigner mit rechts anklicken und das Häckchen bei als Text speichern aktivieren)
  • Die *.dfm Datei in einem Texteditor (z.B. notepad) öffnen
  • Eine 2. Zeile (object myRep: TQuickRep) wie folgt einfügen:
    Delphi-Quellcode:
    object QuickReport2: TQuickReport2
      Left = 0
      Top = 0
      Width = 794
    ...
    wird zu
    Delphi-Quellcode:
    object QuickReport2: TQuickReport2
    object myRep: TQuickRep
      Left = 0
      Top = 0
      Width = 794
      Height = 1123
    ...
  • Am Ende der Datei noch ein zusätzliches END einfügen
    Delphi-Quellcode:
    ...
        Left = 56
        Top = 152
      end
    end
    wird zu
    Delphi-Quellcode:
    ...
        Left = 56
        Top = 152
      end
    end
    end
  • speichern
  • die zugehörige *.pas Datei im Editor öffnen
  • die Deklaration des Reports wie folgt ändern
    (aus class(TQuickRep) wird class(TForm) und myRep: TQuickRep; einfügen)
    Delphi-Quellcode:
    ...
    type
      TQuickReport2 = class(TQuickRep)
        QRBand1: TQRBand;
        QRSysData1: TQRSysData;
    ...
    wird zu
    Delphi-Quellcode:
    ...
    type
      TQuickReport2 = class(TForm)
        myRep: TQuickRep;
        QRBand1: TQRBand;
        QRSysData1: TQRSysData;
    ...
  • speichern
  • Delphi 2006 starten
  • Projekt laden
  • Report in Delphi öffnen -> geht ohne Fehler !!!
  • Beim Compilieren treten nun Fehler an allen Stellen auf, in denen auf den Report zugegriffen wird.
    Das lässt sich aber leicht beheben:
    Einfach ein myRep. einfügen.
    Delphi-Quellcode:
    ...
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      QuickReport2.Preview;
    end;
    ...
    wird zu
    Delphi-Quellcode:
    ...
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      QuickReport2.myRep.Preview;
    end;
    ...
  • Fertig !!!
Damit sollte Dein Problem gelöst sein.

Was wurde gemacht?
Eigentlich ganz einfach. Da TQuickRep eine visuelle Komponente ist, die man auf ein Formular legen kann, habe ich bei den Reports ohne Formular einfach ein leeres Formular druntergelegt Das Formular heißt nun wie Dein Report und der eigentliche Report heißt myRep. Da der Report nun auf dem Formular liegt, muß beim Zugriff auf den Report natürlich nicht nur der Report, sonder auch das Formular angegeben werden. -> Formular.Report.Preview -> alterReportname.myRep.Preview
Das ist alles.

Eigentlich ganz einfach, oder?

Viel Spaß
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 07:44 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