Delphi-PRAXiS

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 AlReport mit Delphi XE3 Starter verwenden (https://www.delphipraxis.net/172701-alreport-mit-delphi-xe3-starter-verwenden.html)

Kutter111 18. Jan 2013 08:59

AlReport mit Delphi XE3 Starter verwenden
 
Hallo,

Ich habe mir in mein Delphi XE3 Starter die ALReport Komponente http://www.delphipraxis.net/attachme...-alrep_101.zip installiert. Das hat auch problemlos funktioniert. Dann änderte ich, da im Starter keine Datenbankkomponente dabei sind, mit den ComponentAce Absolute Database Komponenten die Demo von ALReport.
Wenn ich die Demo dann kompiliere, funktioniert alles bestens. Wenn ich nun aber ein neues Project anlege und alrep mit einbinde, dann starte, bekomme ich in der Unit alrep.pas eine Fehlermeldung: "Der linken Seite kann nichts zugewiesen werden".
Delphi-Quellcode:
const
  bDebugMode  : boolean = false;
  bCaptionMode : boolean = false;
.
.
.
constructor tAlReport.Create (AOwner:tComponent);
begin
   inherited Create (AOwner);
   FOrientation := poPortrait;
   FPapersize  := alr_A4;
   if csDesigning in ComponentState then
      UpdateScrollBars
   else
    with Owner as TForm do begin
      HorzScrollBar.Position := 0;
      VertScrollBar.Position := 0;
    end;
   bDebugMode := false; //<- hier
   bCaptionMode := false; //<- und hier
   FLogProc := NIL;
end;
Gibt es dafür eine Erklärung?

Im Vergleich: In Turbo Delphi klappt das anstandslos.

Lemmy 18. Jan 2013 09:42

AW: AlReport mit Delphi XE3 Starter verwenden
 
Hi,

die beiden "Variablen" sind als KOnstanten definiert - warum auch immer. Da ist das aktuelle Delphi deutlich strenger als bisher was Zuweisungen angeht. Ist alles in allem aber schlicht sehr schlechter Stil - entweder sind es Konstanten, dann gibts da keinen Grund die Werte doch zu ändern, wenn doch dann sind es einfach keine Konstanten sondern Variablen...

Grüße

moe120 18. Jan 2013 09:47

AW: AlReport mit Delphi XE3 Starter verwenden
 
wie Lemmy schon schreibt, das mit der Definition als Konstante könnte das Problem sein.

eine einfache Umbenennung könnte vllt. schon helfen:


Delphi-Quellcode:
const
  c_bDebugMode : boolean = false; //***
  c_bCaptionMode : boolean = false; //***
.
.
.
constructor tAlReport.Create (AOwner:tComponent);
begin
   inherited Create (AOwner);
   FOrientation := poPortrait;
   FPapersize := alr_A4;
   if csDesigning in ComponentState then
      UpdateScrollBars
   else
    with Owner as TForm do begin
      HorzScrollBar.Position := 0;
      VertScrollBar.Position := 0;
    end;
   bDebugMode := c_bDebugMode; //***
   bCaptionMode := c_bCaptionMode; //***
   FLogProc := NIL;
end;

Kutter111 18. Jan 2013 10:44

AW: AlReport mit Delphi XE3 Starter verwenden
 
Hallo,

vielen Dank für die schnellen Antworten.

Mir ist klar, dass die Deklarierung für Delphi XE3 nicht ganz gut gewählt ist. Ist ja auch schon eine älterere Komponente. Aber warum funktioniert das alles mit der Demo von AlReport in Delphi XE3 ohne Fehlermeldung? Da wird die alrep.pas auch aufgerufen.

Lemmy 18. Jan 2013 11:52

AW: AlReport mit Delphi XE3 Starter verwenden
 
@moe120: würde ich so nicht unterschreiben - wer Konstanten als Variablen "missbraucht" macht das mit Absicht, d.h. die Zuweisung wird irgend wo anders vermutlich verwendet - zumindest geh ich davon einfach aus ohne die Sourcen genauer angeschaut zu haben.

@Kutter111: Die Möglichkeiten sind vielfältig. z.B. weil bei der demo eine entsprechende DCU da war die der Compiler einfach zusammengeschweißt hat. War vielleicht eine exe da die direkt ausgeführt wurde - keinen Plan was da Delphi so alles treibt....

Kutter111 18. Jan 2013 12:25

AW: AlReport mit Delphi XE3 Starter verwenden
 
Nein, eine .dcu ist nicht dabei. Eine .exe ist zwar dabei, ich habe aber die Demo neu komiliert. Was aber dabei ist (ausser .pas und .dfm und natürlich die .dpr), ist eine .res. Da steht doch, soweit ich weiss auch die Versions Info drin. Kann es evtl. daran liegen?

Gruß

DeddyH 18. Jan 2013 12:42

AW: AlReport mit Delphi XE3 Starter verwenden
 
Liste der Anhänge anzeigen (Anzahl: 1)
Schau doch mal in die Projektoptionen unter "Compilieren - zuweisbare typisierte Konstanten".

Lemmy 18. Jan 2013 12:59

AW: AlReport mit Delphi XE3 Starter verwenden
 
Zitat:

Zitat von DeddyH (Beitrag 1199583)
Schau doch mal in die Projektoptionen unter "Compilieren - zuweisbare typisierte Konstanten".

Danke für den Hinweis!

Kutter111 18. Jan 2013 13:38

AW: AlReport mit Delphi XE3 Starter verwenden
 
Das werde ich heute abend gleich nachsehen. Vielleicht wird bei der Neuerstellung eines Projectes diese Einstellung verändert (bzw. ist Standart).
Poste dann das Ergebnis.

Ich danke vorerst mal allen.

Kutter111 18. Jan 2013 18:16

AW: AlReport mit Delphi XE3 Starter verwenden
 
So, jetzt hab ich das mal angeschaut. Und DeddyH hat Recht gehabt. Als Standard ist dieser Punkt auf false gesetzt. Habs geändert, und schon klappt es.
Danke für die Unterstützung und die Lösung.

Gruß


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