1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
| procedure TFHistoire.btnExportClick(Sender: TObject);
var
QueryRead: TibQuery;
dossier: string;
B: TFileStream;
T: TMemoryStream;
begin
//dossier := 1;
QueryRead := TibQuery.Create(Application);
QueryRead.Database := dm.ibd_BASE;
QueryRead.SQL.Clear;
QueryRead.SQL.Add('select hi_dicorigine'
+ ',hi_date_texte'
+ ',hi_cat'
+ ',hi_titre'
+ ',hi_texte'
+ ',hi_image'
+ ' from ref_histoire'
+ ' where hi_dossier=' + intTostr(dm.NumDossier) );
// if cxComboBox1.ItemIndex > 0 then
// QueryRead.SQL.Add('and hi_dicorigine=''' + ComboBoxDico.Text + '''');
QueryRead.SQL.Add('order by hi_date_debut');
QueryRead.Open;
if QueryRead.RecordCount = 0 then
begin
ShowMessage('Rien à exporter');
QueryRead.Close;
QueryRead.Free;
exit;
end;
B := TFileStream.Create(ChangeFileExt('dede.txt', '.dica'), fmCreate);
T := TMemoryStream.Create;
while not QueryRead.EOF do
begin
B.WriteAnsiString(QueryRead.FieldByName('hi_dicorigine').AsString);
B.WriteAnsiString(QueryRead.FieldByName('hi_date_texte').AsString);
B.WriteDWord(QueryRead.FieldByName('hi_cat').AsInteger);
B.WriteAnsiString(QueryRead.FieldByName('hi_titre').AsString);
T.Clear;
TBlobField(QueryRead.FieldByName('hi_texte')).SaveToStream(T);
B.WriteDWord(T.Position);
if not QueryRead.FieldByName('hi_texte').IsNull then
TBlobField(QueryRead.FieldByName('hi_texte')).SaveToStream(B);
T.Clear;
TBlobField(QueryRead.FieldByName('hi_image')).SaveToStream(T);
B.WriteDWord(T.Position);
if not QueryRead.FieldByName('hi_image').IsNull then
TBlobField(QueryRead.FieldByName('hi_image')).SaveToStream(B);
QueryRead.Next;
end;
B.Free;
T.Free;
QueryRead.Close;
QueryRead.Free;
end; |
Partager