Announcement

Collapse
No announcement yet.

Delphi2007 / QuickReport 4 / Duplex Druck mit Sonderseite

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Delphi2007 / QuickReport 4 / Duplex Druck mit Sonderseite

    Hallo zusammen,

    ich habe folgende Situation, bei der ich nicht so recht weiterkommen

    In meinem Programm drucke ich Verträge mittels QuickReport.
    Die Anwender haben ein spezielles Papier, welches auf der Rückseite mit Vertragsinformationen bzw. Geschäftsbedingungen bereits bedruckt ist.

    Nun sollen beim Anwender spezielle Duplex-Drucker angeschafft werden und mein Programm soll die Rückseite bedrucken. Hier nun das Problem...

    Um den Vertrag korrekt ausgedruckt zu bekommen, muss pro Vertragsseite eine Zwischenseite gedruckt werden. Ich habe das ganze nun per TQRPageList einigermaßen realisiert bekommen. Leider hänge ich aktuell an Zugriffsverletzungen

    In Delphi habe ich 2 Reports.
    Report A: Der Vertrag
    Report B: Die Rückseite

    Die Logik:
    Code:
    - Gehe durch alle Seiten des Vertrages.
    - Füge die aktuelle Vertragsseite der PageList hinzu.
    - Füge die Rückseite der PageList hinzu.
    - Drucke die PageList
    Hier nun der Code:
    Code:
    procedure DruckeVertrag;
    var
      I   : Integer;
      PL  : TQRPageList;
    begin
      PL := nil;
      try
        PL := TQRPageList.Create;
        PL.Stream := TQRStream.Create(100000);
        QuickRepA.Prepare;
        QuickRepB.Prepare;
        PL.LockList;
        try
          for I := 1 to QuickRepA.QRPrinter.PageCount do
            begin
            PL.AddPage(QuickRepA.QRPrinter.GetPage(I));
            PL.AddPage(QuickRepB.QRPrinter.GetPage(1));
            end;
          PL.Finish;
        finally
          PL.UnlockList;
        end;
        PL.SaveToFile('test.qrp');
      finally
        FreeAndNil(PL);
      end;
      QRPreview1.QRPrinter := TQrPrinter.Create(self);
      QrPreview1.QRPrinter.Load('test.qrp');
      QrPreview1.PageNumber := 1;
      QrPreview1.Refresh;
    end;
    Soweit so gut, ich bekomme die Vorschau angezeigt und dachte mir, "Gut, ausdrucken wird ja wohl kein Problem sein."

    Tja, sobald ich versuche
    Code:
    QrPreview1.Print;
    auszuführen bekomme ich eine Zugriffsverletzung. Wenn ich
    Code:
    QrPreview1.Preview;
    ausführe und in der Vorschau versuche die Druckeinstellungen aufzurufen oder zu drucken, bekomme ich Zugriffsverletzungen.

    Mittlerweile weiß ich leider nicht mehr weiter. Ich hoffe es hatte jemand schonmal eine ähnliche Situation und kann mir weiterhelfen.

    Bei Bedarf kann ich auch ein Dummy-Projekt zur Verfügung stellen.

    Mit freundlichen Grüßen,

    Michael Brotrück

  • #2
    Schau mal obs bei Codegear oder beim Quickreporthersteller updates gibt.
    QR ist nicht gerade für Fehlerfreiheit bekannt.

    Comment

    Working...
    X