AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Blob in Interbase 5.x + BDE 4.,51

Blob in Interbase 5.x + BDE 4.,51

Ein Thema von GeraldK · begonnen am 25. Nov 2005
Antwort Antwort
GeraldK

Registriert seit: 9. Nov 2005
11 Beiträge
 
Delphi 2 Client/Server
 
#1

Blob in Interbase 5.x + BDE 4.,51

  Alt 25. Nov 2005, 19:00
Datenbank: Interbase • Version: 5.1 • Zugriff über: BDE 4.51
Hallo,

ich habe folgendes Problem, welches mich bald zum Wahnsinn treibt.

Da Delphi 2 als DBImage nur BMP laden kann und der Reportgenerator (QRDesign v1.12b) auch nur BMP
laden kann, habe ich dieses Problem wie folgt umgangen.

Mittels ProcessAufruf wird das Progamm I_VIEW32.EXE (Bildbetrachter - sehr empfehlenswert) aufgerufen,
welches parametergesteuert dann ein JPG Bild aufruft, und dieses ins Clipboard kopiert.
Anschließend wird das Bild aus dem Clipboard der DBVariable(Blob) zugewiesen und in der DB gespeichert.

Beim Druck wird dann das in der Datenbank befindliche Bild mit dem Reportgenerator ausgedruckt.
So weit so gut, aber es funktioniert manchmal gar nicht, manchmal bestens.
Machmal steht im Feld Blob das Bild des vorherigen Records, manchmal auch gar nichts.
Wertet man den Wert (das Bild) vom Clipboard aus, so beinhaltet es das richtige Bild.
Und irgendwie stehe ich da jetzt am Ende meiner Weisheit.


Def. Datenbank (IB 5.1)
SQL-Code:
CREATE TABLE S_ART_BILD
       (MAND_NR INTEGER NOT NULL,
        WAREN_GRP CHAR(9) NOT NULL,
        ART_NR CHAR(13) NOT NULL,
        GROESS_CD CHAR(3) NOT NULL,
        FARB_CD CHAR(3) NOT NULL,
        ART_ORIGNR VARCHAR(15),
        ARNR_MATCH VARCHAR(13),
        BILD BLOB SUB_TYPE 0 SEGMENT SIZE 64, // ebenso versucht mit 256, 512, 640, 1024
PRIMARY KEY (MAND_NR, WAREN_GRP, ART_NR, GROESS_CD, FARB_CD));
Dann der Umwandlungsprozess und Post in der IB:
Delphi-Quellcode:
       ProcessTemp := TProcess.Create(Owner); // Aufruf I_VIEW32 inkl. Pfad, JPG Bildname und Paramter
       ProcessTemp.Command := sPfad_PRG + ' ' + sPfad_Bild + ' /resize=(20p,20p) /clipcopy /killmesoftly';
       ProcessTemp.ShowWindow := swShowMaximized;
       ProcessTemp.Wait := FALSE; // auch mit True probiert
       ProcessTemp.Execute;

 DBImage.PasteFromClipboard;
 DBImage.LoadPicture;
 QueryS_Art_Bild.Post;
BDE 4.51 Einstellungen:
Blobs to cache: von 64 bis 65000 alles durchprobiert
Blob size: von 64 bis 1024 alles durchprobiert

1.000 Dank für eine Anregung !

Liebe Grüße
Gerald

[edit=Sharky]SQL- und Delphi-Tags gesetzt. Mfg, Sharky[/edit]
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 15:50 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