Moin,
hab da echt ein dickes Problem: Ein RTF-Dokument, welches ich in einer
DB (Field ist Typ Image), speichere, kommt als Müll wieder heraus (bzw. alle Formatierungen sind weg)
Der Quelltext zum Speichern ist hier: (inhalt enthält wprichtext.text, also das rtf)
Delphi-Quellcode:
function Tfrm_dokumente.neuer_datensatz(zu_akte, _name, inhalt :
string) : integer;
var _stmp :
string;
_query : TAdoquery;
store : boolean;
begin
result := 0;
_query := TADOquery.Create(
nil);
with _query
do begin
connection := AktenManager.ADOConnFDD;
try
_stmp := '
insert into dokumente (dokument) values (''
'+inhalt+'
''
)';
sql.Add(_stmp);
result := ExecSQL;
SQL.Text := '
Select @@Identity';
Active := True;
result := Fields[0].AsInteger;
sql.Clear;
_stmp := '
insert into dokumentenliste (zu_akte,name,dokument_nr) values ('+zu_akte+'
,''
'+_name+'
''
,'+inttostr(result)+'
)';
sql.Add(_stmp);
result := ExecSQL;
except
result := 99;
end;
end;
freeandnil(_query);
end;
Hier nun der Code zum Lesen: (Wptext ist wprichtext von den WPTOOLS)
Delphi-Quellcode:
try
_stmp := 'select dokument from finanzdesk.dbo.dokumente where lfdnr ='+dok_nr;
_query.sql.Text := _stmp;
_query.open;
erg64 := _query.FieldByName('dokument').Value;
_query.close;
erg := base64decode(erg64);
wptext.Text := erg;
wptext.SaveToFile('text.rtf'); // Dieses RTF ist zerhackt - die Formatierung ist weg
except
//
end;
end;
Gruss
EL