AGB  ·  Datenschutz  ·  Impressum  







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

Reportbuilder Image Komponente

Ein Thema von AgentAS · begonnen am 16. Feb 2004 · letzter Beitrag vom 1. Mär 2004
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#11

Re: Reportbuilder Image Komponente

  Alt 20. Feb 2004, 06:59
ausserdem sollen threads nicht innerhalb von 24std gepusht werden...
Mario
  Mit Zitat antworten Zitat
Benutzerbild von AgentAS
AgentAS

Registriert seit: 14. Jul 2003
Ort: Reutlingen
88 Beiträge
 
Delphi 6 Professional
 
#12

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 11:44
Hallo,

also die Bilder sind alle gleich. Hier erstmal der Code.

Delphi-Quellcode:

var
  frmFotoanlage: TfrmFotoanlage;
  Gi : integer;

implementation

{$R *.dfm}


procedure TfrmFotoanlage.FileListBoxClick(Sender: TObject);
begin
  Image.Picture.LoadFromFile(FileListBox.FileName);
end;

procedure TfrmFotoanlage.FileListBoxDblClick(Sender: TObject);
begin
  ListBox.AddItem(FileListBox.FileName,FileListBox);
end;

procedure TfrmFotoanlage.CBVorschauClick(Sender: TObject);
begin
  if CBVorschau.Checked then
  begin
    GroupBoxVorschau.Visible := True;
  end
  else
  begin
    GroupBoxVorschau.Visible := False;
  end;
end;

procedure TfrmFotoanlage.FormCreate(Sender: TObject);
begin

  frmFotoanlage.Caption := 'Fotoanlagen Ver. 1.0 --' + DateToStr(Date);

  EditText.Text := '';
  EditGANr.Text := '';

end;

procedure TfrmFotoanlage.FormShow(Sender: TObject);
begin
   EditGANr.SetFocus;
end;

procedure TfrmFotoanlage.btnDruckenClick(Sender: TObject);
begin

  if CBDruckvorschau.Checked then
  begin
    Fotoanlage.Print;
  end
  else
  begin
    Fotoanlage.DeviceType := dtScreen;
    Fotoanlage.Print;
  end;

end;

procedure TfrmFotoanlage.FotoanlagePreviewFormCreate(Sender: TObject);
begin
  Fotoanlage.PreviewForm.WindowState := wsMaximized;
end;

procedure TfrmFotoanlage.FotoanlageBeforePrint(Sender: TObject);
var i : integer;
    hPfad, hschluessel : string;
begin

  if CBMitKopf.Checked then
  begin
    ppRegionKopf.Visible := True;
  end
  else
  begin
    ppRegionKopf.Visible := False;
  end;

  if EditGANr.Text <> 'then
  begin
    ppLblGANr.Caption := 'Fotoanlage zur GutachtenNr. ' + EditGANr.Text;
  end
  else
  begin
    ppLblGANr.Caption := '';
  end;

  for Gi := 0 to ListBox.Items.Count - 1 do
  begin
    hPfad := Trim(ListBox.Items.Strings[Gi]);
    hSchluessel := QuotedStr('1');

    ADOFotoInsert.Close;
    ADOFotoInsert.SQL.Clear;

    ADOFotoInsert.SQL.Add('INSERT INTO tblFOTO(schluessel, pfad)');
    ADOFotoInsert.SQL.Add(' VALUES('+ hschluessel + ', ' + QuotedStr(hPfad) + ')');

    ADOFotoInsert.ExecSQL;
  end;

  PfadSELECT;

  while not ADOFotoSELECT.Eof do
  begin
    ppImageDetail.Picture.LoadFromFile(Trim(ADOFotoSELECT.FieldByName('pfad').AsString));
    ADOFotoSELECT.Next;
  end;

end;

procedure TfrmFotoanlage.mnuLoeschenClick(Sender: TObject);
begin
  ListBox.Items.Delete(ListBox.ItemIndex);
end;

procedure TfrmFotoanlage.PfadSELECT;
begin
  ADOFotoSELECT.Close;
  ADOFotoSELECT.SQL.Clear;

  ADOFotoSELECT.SQL.Add('SELECT * FROM tblFOTO');

  ADOFotoSELECT.Open;
end;

procedure TfrmFotoanlage.FotoDELETE;
begin
  ADOFotoDELETE.Close;
  ADOFotoDELETE.SQL.Clear;

  ADOFotoDELETE.SQL.Add('DELETE FROM tblFOTO');

  ADOFotoDELETE.ExecSQL;
end;

procedure TfrmFotoanlage.FotoanlagePreviewFormClose(Sender: TObject);
begin
  // Löscht Datenbank nach Druck
  FotoDELETE;
end;

procedure TfrmFotoanlage.pplblBildNrPrint(Sender: TObject);
begin
  pplblBildNr.Caption := 'Bild-Nr. ' + IntToStr(Gi);
end;


Gruss AS
Nichts wissen ist auch eine Art Wissen.
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#13

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 13:08
So wird dass natürlich nix

Du erzeugst im OnBeforePrint die Datenmenge neu und lädst jeden Datensatz in das aktuelle Bild. Am Ende dieser Routine ist wieder nur das letzte Bild im Image?

Du musst nur einmal die Datenmenge erzeugen (vorm Report) und dann immer nur das aktuelle Bild laden...
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
Benutzerbild von AgentAS
AgentAS

Registriert seit: 14. Jul 2003
Ort: Reutlingen
88 Beiträge
 
Delphi 6 Professional
 
#14

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 14:01
Hallo,

musst entschuldigen weiss aber nicht genau was Du meinst. Ich brauche doch eine Schleife um alle Datensätze aus der Datenbank zu bekommen.
Hättest Du vielleicht ein Beispiel, kann mir leider nichts genaueres unter Deiner Aussage vorstellen.

Gruß AS
Nichts wissen ist auch eine Art Wissen.
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#15

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 14:10
Nein, Du brauchst keine Schleife.

Du hast eine Datenbank mit einer beliebigen Anzahl von Datensätzen. Diese verbindest Du mit Deinem Report bzw. Deinem SubReport. Der Report wird bei der Preview bzw. beim Druck den Detail-Bereich automatisch solange wiederholen, wie Du Datensätze hast. Wenn Du DBText-Elemente rein plazierst, werden dann ja auch automatisch die Daten angezeigt. Du kannst ja mal statt dem Bild erst mal nur ein DBText auf den Detail-Bereich setzen und mit dem Feld von Deiner DB verbinden. Siehst Du dann alle in der Datenbank enthaltenen Sätze in der Preview?
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
Benutzerbild von AgentAS
AgentAS

Registriert seit: 14. Jul 2003
Ort: Reutlingen
88 Beiträge
 
Delphi 6 Professional
 
#16

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 15:25
Hallo,

wenn ich ein ppdbText Komponente in den Detailbereich setze dann sehe ich jeweils 5 verschiedene Datensätze.

Gruß AS
Nichts wissen ist auch eine Art Wissen.
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#17

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 15:30
Und sind diese 5 Datensätze auch in der Datenbank?
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
Benutzerbild von AgentAS
AgentAS

Registriert seit: 14. Jul 2003
Ort: Reutlingen
88 Beiträge
 
Delphi 6 Professional
 
#18

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 15:44
ja sind sie. Aber ich verstehe immer noch nicht ganz wie Du mit dem Pfad die Komponente füllen kannst. Wenn ich nämlich der ppdbImage Komponente das Feld zuweise bringt Sie mir gar nichts.
Nichts wissen ist auch eine Art Wissen.
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#19

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 15:52
Ja aber genau hier kommt Deine Routine im OnBeforePrint ins Spiel. Mache doch mal folgendes:

Plaziere ein normales Text-Element rein und schreibe ins OnBeforePrint einfach:
MyText.Caption := TableFeld.Value; Dann solltest Du den gleichen Effekt wie beim DBTExt haben, oder?
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
Benutzerbild von AgentAS
AgentAS

Registriert seit: 14. Jul 2003
Ort: Reutlingen
88 Beiträge
 
Delphi 6 Professional
 
#20

Re: Reportbuilder Image Komponente

  Alt 23. Feb 2004, 15:59
jupp geht.
Nichts wissen ist auch eine Art Wissen.
  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 12:30 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