Einzelnen Beitrag anzeigen

Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.099 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

DataSnap überträgt kein Firebird Bynary Blob Feld

  Alt 26. Aug 2015, 20:47
Datenbank: Firebird • Version: 2.5 • Zugriff über: Firedac
Hallo Zusammen,

kann es sein dass DataSnap keine Binary Blob Feld transportieren kann?
Die Remote Methode überträgt ein TDataSet. Ein Feld der Tabelle ist ein Bild dessen Größe auf 100KB begrenz ist.
Das Dataset wird komplett ohne Fehlermeldung übertragen lediglich ist das Bild leer.

Die Methode zum Übertragen:
Delphi-Quellcode:
function TdmDAL.GetADRESS(conn: TFDConnection; TransferID: integer; out RecordCount: integer): TDataSet;
var
  oQuery: TFDQuery;
begin
  result := nil;
  if conn=nil then exit;

  oQuery := nil;



  oQuery := TFDQuery.Create(nil);
  try
    TThread.Synchronize(nil, procedure
    begin
      oQuery.Connection := conn;
      oQuery.FetchOptions.AutoFetchAll := afAll;
      oQuery.FetchOptions.RecordCountMode := cmTotal;


      oQuery.SQL.add('/*Alle Adressen*/');
      oQuery.SQL.add('select f.*');
      oQuery.SQL.add('from ADRESS f');
      oQuery.SQL.add('where ((f.transferid is null) or (f.transferid > :transferid))');
      oQuery.Params[0].AsInteger := TransferID;
      oQuery.Open;
    end);

    result := oQuery;
    RecordCount := oQuery.RecordCount;
  finally
// oQuery.Free;
  end;

end;

Clientseitig wird das DataSet in eine MemTable per CopyDataSet kopiert. Dabei ist das Binary Memo immer leer.
mtPostfachPaketIDsForDownload.CopyDataSet(LDataSet, [coStructure, coRestart, coAppend]);
Falls meine Vermutung stimmen sollte, hoffe ich dass es doch eine Möglichkeit gibt Binary Blobs zu übertragen. Die Bilder zu extrahieren und
per FTP gesondert zu übertragen ist nur relativ Schlecht umsetzbar.

Schöne Grüße
Kostas
  Mit Zitat antworten Zitat