AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi pdf aus Datenbank anzeigen
Thema durchsuchen
Ansicht
Themen-Optionen

pdf aus Datenbank anzeigen

Ein Thema von kluckweb · begonnen am 6. Apr 2006 · letzter Beitrag vom 6. Apr 2006
Antwort Antwort
Seite 1 von 2  1 2      
kluckweb

Registriert seit: 8. Okt 2005
149 Beiträge
 
#1

pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:05
Datenbank: MySQL • Zugriff über: Delphi
Hallo zusammen,

ich bräuchte relativ dringend Eure Hilfe.

Ich lade ein PDF in ein Blobfeld einer MySQL Datenbank. Dieses würde ich gerne nun auch wieder im Acrobat Reader anzeigen lassen, aber ich habe keine Ahnung, wie ich das PDF rausholen kann und dann direkt in Acrobat Reader anzeigen lassen kann.

Damit Ihr Euch vorstellen könnt, wie das PDF gespeichert wird, hier der Code zum Speichern des PDF im Blobfeld.

Delphi-Quellcode:
  if OpenDialog1.Execute then
  begin
    dataPersonen.Personenausweise.Insert;
    dataPersonen.Personenausweise.FieldByName('personenid').asInteger := dataPersonen.Personendaten.FieldbyName('id').asInteger;
    dataPersonen.Personenausweiseausweis.LoadFromFile(OpenDialog1.FileName);
    dataPersonen.Personenausweise.Post;
    JvXPButton1.Enabled := True;
    showmessage('Der Ausweis wurde erfolgreich gespeichert');
  end
  else showmessage('Der Ausweis konnte nicht gespeichert werden');
end;
Ich wäre Euch sehr dankbar, wenn Ihr mir kurz sagen könntet, wie ich das PDF wieder rausholen kann und dann im Acrobat Reader anzeigen lassen kann.

Vielen Dank!
  Mit Zitat antworten Zitat
mgubler

Registriert seit: 14. Jul 2002
Ort: Krefeld
115 Beiträge
 
Delphi 2006 Professional
 
#2

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:26
Lösungsvorschlag theoretisch:

Speicher die Datei im Temp-Ordner unter dem namen XYZ.PDF und öffne die dann!

praktisch habe ich leider gerade nix zur hand.
aber so schwer war das nicht.
musst mal suchen.
ich meine das hier schonmal gelesen zu haben!
Gruß,
mgubler
  Mit Zitat antworten Zitat
kluckweb

Registriert seit: 8. Okt 2005
149 Beiträge
 
#3

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:30
Hi,

erstmal danke für die schnelle Antwort.

Das hatte ich mir auch schon überlegt, aber leider sind die PDF´s, die erstellt werden immer 0KB los und der Acrobat Reader meldet "fehlerhafte Datei" beim Öffnen.

Daher denke ich, dass ich das schon per Stream öffnen müsste.
  Mit Zitat antworten Zitat
mgubler

Registriert seit: 14. Jul 2002
Ort: Krefeld
115 Beiträge
 
Delphi 2006 Professional
 
#4

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:36
ich schau mal nach ob ich irgendwo ein beispiel auftreiben kann.
ich hatte damals ein bsp mit images in einem blob feld.
da hatte das geklappt, meine ich!
Gruß,
mgubler
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:39
Ich würde erstmal überprüfen, ob die PDFs komplett in die DB abgespeichert worden sind, oder der Fehler schon beim einfügen entstanden ist. Ich würde dann versuchen einen Stream auf eine QuellPDF zu öffnen und diesen mit .LoadFromStream in das Blobfeld zu schreiben.
Markus Kinzler
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:49
Ich mache das genauso: PDF aus DB in Temp-Datei und dann mit Acrobat öffnen.

Wenn die Datei 0KB groß ist, hat das nicht viel mit Acrobat/PDF zu tun, sondern mit der fehlerhaften Speicherung der Daten in einer Datei. Sorge erstmal dafür, das die blob-Daten auch auf der Platte landen. Dann sollte der Rest kein Problem sein.

BTW: Es gibt schöne PDF-Komponenten für Delphi. Ich finde, das hätte mehr Charme..
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
kluckweb

Registriert seit: 8. Okt 2005
149 Beiträge
 
#7

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 10:55
Naja,

ich denke, dass der File schon richtig ankommt in der DB.
Weiß nur nicht, ob der wieder richtig rausgeholt wird:

   dataPersonen.Personenausweiseausweis.SaveToFile('c:\test.pdf'); Damit hole ich das PDF wieder raus. Wie ich es reinspeichere habe ich ja oben schon drin stehen. Ist da irgendein Fehler drin?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 11:02
Zitat von kluckweb:
ich denke, dass der File schon richtig ankommt in der DB.
Denken ist nicht wissen, ich würde dies überprüfen (Mysgl-Admintool)
Weiß nur nicht, ob der wieder richtig rausgeholt wird:
Zitat:
   dataPersonen.Personenausweiseausweis.SaveToFile('c:\test.pdf'); Damit hole ich das PDF wieder raus. Wie ich es reinspeichere habe ich ja oben schon drin stehen. Ist da irgendein Fehler drin?
Was für Typ hat das Feld Personenausweiseausweis?
Welche Datenbankzugriffskomponenten verwendest du?
Markus Kinzler
  Mit Zitat antworten Zitat
kluckweb

Registriert seit: 8. Okt 2005
149 Beiträge
 
#9

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 11:06
Benutze eine TMySQL Komponente und das Feld ist ein longblob.

Also ich habe es gerade extra noch mal nachgeschaut. Das PDF kommt in der DB an.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: pdf aus Datenbank anzeigen

  Alt 6. Apr 2006, 11:14
Zeig mal den gesammten Code der Abfrage zum Auslesen.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 22:27 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