FireDAC.Comp.DataSet.TFDDataSet.LoadFromStream

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

procedure LoadFromStream(AStream: TStream; AFormat: TFDStorageFormat = sfAuto);

C++

void __fastcall LoadFromStream(System::Classes::TStream* AStream, Firedac::Stan::Intf::TFDStorageFormat AFormat = (Firedac::Stan::Intf::TFDStorageFormat)(0x0));

Propriétés

Type Visibilité  Source Unité  Parent
procedure
function
public
FireDAC.Comp.DataSet.pas
FireDAC.Comp.DataSet.hpp
FireDAC.Comp.DataSet TFDDataSet


Description

Charge les données d'un ensemble de données à partir d'un flux.

Utilisez LoadFromStream pour remplir l'ensemble de données avec les données stockées dans un fichier externe. Les données ne sont pas déplacées dans une base de données, mais simplement chargées dans un stockage en mémoire d'ensemble de données. 

AStream est la référence au flux contenant les données à charger. Le flux doit être placé au début des données de l'ensemble de données, sinon le chargement échoue. 

AFormat est le format du fichier :

  • sfXML -- un flux contient des données XML autonomes correctement formées.
  • sfBinary -- un flux contient des données binaires ayant le format FireDAC personnalisé.
  • sfAuto -- un format est déterminé par l'extension ResourceOptions.
  • sfJSON -- un flux contient des données JSON autonomes.

DefaultStoreExt s'il est spécifié, sinon par ResourceOptions.DefaultStoreFormat.

LoadFromStream tente de charger à partir du flux les éléments spécifiés par ResourceOptions.StoreItems. Si le flux a été écrit avec une valeur StoreItems différente, une exception similaire à celle qui suit est déclenchée : 

 [FireDAC][Stan]-712 Cannot read [Relationlist] object

Exemple

var
  oStr: TStream;
....
oStr := FDQuery1.CreateBlobStream(FDQuery1.FieldByName('data'), bmRead);
try
  FDMemTable1.LoadFromStream(oStr, sfBinary);
finally
  oStr.Free;
end;

Voir aussi