Bonjour,
Dans un composant, j'ai un code de ce type
Il fonctionne correctement à condition que la Form qui l'emploie, utilise un TzQuery. Mais si -et c'est le cas- j'ai également un TzReadOnlyQuery voire un TsqlQuery, y a-t-il un moyen d'utiliser un DataSet générique ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function TmySQLtoSGtoSQL.SQLBlobToStr(aQuery : TZQuery; aField : TField) : String; {public} var aStream : TMemoryStream; begin Result := ''; with aQuery do if not(aField.isNull) then try aStream := TMemoryStream.Create; TBlobField(aField).SaveToStream(aStream); Result := MemStreamToString(aStream); finally aStream.Free; end; end;
Pour l'instant j'ai dû me résoudre à employer :
- SQLBlobToStr(aQuery : TZQuery; aField : TField) : String;
- SQLBlobToStr2(aQuery : TZReadOnlyQuery; aField : TField) : String;
J'avais pensé un moment déclarer aQuery : TDataset mais j'obtiens une Error: Identifier not found "ZReadOnlyQueryX". Peut-on faire mieux, par exemple, déclarer un aDataSet lié à une série de DataSets "possibles" : zQuery, ZReadOnlyQuery, sqlQuery ?
Cordialement. Gilles
Partager