AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stringgrid mit Fastreport ausdrucken

Ein Thema von Luckner · begonnen am 15. Jul 2019 · letzter Beitrag vom 22. Jul 2019
Antwort Antwort
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#1

Stringgrid mit Fastreport ausdrucken

  Alt 15. Jul 2019, 16:51
Hallo,
ich würde gerne ein Stringgrid über den Fastreport ausdrucken. In dem Fastreport-Verzeichniss gibt es ein Demo, das wunderbar funktioniert. Das habe ich versucht für mich anzupassen, aber es funktioniert nicht.
Hier das Demo-Bespiel:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  frxClass, StdCtrls, Grids, frxCross;

type
  TForm1 = class(TForm)
    Button1: TButton;
    StringGrid1: TStringGrid;
    frxCrossObject1: TfrxCrossObject;
    frxReport1: TfrxReport;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure frxReport1BeforePrint(c: TfrxReportComponent);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
var
  i, j: Integer;
begin
  for i := 1 to 16 do
    for j := 1 to 16 do
      StringGrid1.Cells[i - 1, j - 1] := IntToStr(i * j);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  frxReport1.ShowReport;
end;

procedure TForm1.frxReport1BeforePrint(c: TfrxReportComponent);
var
  Cross: TfrxCrossView;
  i, j: Integer;
begin
  if c is TfrxCrossView then
  begin
    Cross := TfrxCrossView(c);
    for i := 1 to 16 do
      for j := 1 to 16 do
        Cross.AddValue([i], [j], [StringGrid1.Cells[i - 1, j - 1]]);
  end;
end;

end.
Hier meine Version:
Delphi-Quellcode:
procedure TForm1.ButtonGejoDruckenClick(Sender: TObject);
begin
  frxReportGejo.ShowReport;
end;

procedure TForm1.frxReportGejoBeforePrint(c: TfrxReportComponent);
var
  Cross: TfrxCrossView;
  i, j: Integer;
begin
  if c is TfrxCrossView then
  begin
    Cross := TfrxCrossView(c);
    for i := 1 to 5 do
      for j := 1 to GridGejo.RowCount do
        Cross.AddValue([i], [j], [GridGejo.Cells[i - 1, j - 1]]);
  end;
end;
Wobei GridGejo das besagte Stringrid ist. Das Ergebniss ist, dass im Preview von Fastreport eine leere Seite entsteht. Hat möglicherweise Jemand eine Idee, woran das liegen kann?

Irgendwie habe ich das Gefühl, dass es keine Verbindung zwischen dem Report und der Cross-Komponente.

Danke, Luckner

Geändert von Luckner (15. Jul 2019 um 17:03 Uhr)
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Stringgrid mit Fastreport ausdrucken

  Alt 18. Jul 2019, 10:26
Hallo,

hat noch Keiner mit einem Stringgrid in Verbindung mit Fastreport gearbeitet?

Gruß, Luckner
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

AW: Stringgrid mit Fastreport ausdrucken

  Alt 18. Jul 2019, 10:58
Du könntest mal Probieren die Cross Komp. im onprint des Bandes zu erzeugen das hilft ab und zu bei Fastreport
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Stringgrid mit Fastreport ausdrucken

  Alt 22. Jul 2019, 14:42
Hallo franktron,

hat etwas länger gedauert mit der Antwort. habe an einem anderem Projekt gearbeitet. Jetzt bin ich wieder Ohr. Was mich wundert, dass dieses Demo auf Anhieb funktioniert. Und ich sehe dort auch keine großartigen, komplexen Routinen. Die Bedeutung des Cross-Objektes verstehe ich auch nicht, weil es irgendwie keine Verknüpfung gibt, zwischen der frxReports gibt.
Hat sich schon Jemand dieses Demo mal angeschaut, oder eigene Routine für Fastreport geschrieben. Über jeden Hinweis wäre ich glücklich.

Gruß, Luckner
  Mit Zitat antworten Zitat
KJN

Registriert seit: 17. Feb 2019
Ort: Bad Saulgau
9 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Stringgrid mit Fastreport ausdrucken

  Alt 22. Jul 2019, 18:59
Hallo,

probier mal im FastReport Designer,
das CrosstabObject direkt auf die Seite zu legen, und nicht in ein Band.

Im Cross Tab Editor Row auf 0, Columns auf 0, Celles auf 1 setzen.
Haken bei Show Title raus.

Bei mir geht's dann.
Karl
  Mit Zitat antworten Zitat
Antwort Antwort


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 23:46 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