Ajuda ao salvar em campo BLOB

14/03/2017

0

Oi Pessoal,

Estou tentando fazer com que meu código salve o estado de uma grid no Banco de dados:
[code]
procedure TfrmGrid.FormClose(Sender: TObject; var Action: TCloseAction);
var
  AStream: TMemoryStream;
begin
  CdsStream.Close;
  CdsStream.Open;
  AStream := TMemoryStream.Create;
  cxGrid1DBTableView1.StoreToStream(AStream);
  AStream.Position := 0;
  cdsStream.Edit;
  TBlobField(cdsStream.FieldByName('CC_CONF_GRADE')).loadfromStream(AStream);
  cdsStream.Post;

  Freeandnil(Astream);
end;
[/code]

porém não é salvo nada no BD (uso o firebird 2.5), sempre que vou checar para ver a informação no campo, aparece "Null".
Gabriel

Gabriel

Responder

Posts

14/03/2017

Raylan Zibel

cxGrid1DBTableView1.StoreToStream(AStream);


Que tipo de conteúdo é esse?
Responder

14/03/2017

Gabriel

É de um componente chamado devExpress, minha intenção é salvar o layout da tabela em um campo blob e depois restaurar este layout.
Responder

15/03/2017

Raylan Zibel

A documentação do componente diz que é assim que deve ser gravado?
Responder

14/03/2018

Diego Sounobre

Não sei se já conseguiu, mas se não, tente assim:

cxGrid1DBTableView1.StoreToStream(AStream,[],'cxGrid1DBTableView1');

Para recuperar:

cxGrid1DBTableView1.RestoreFromStream(AStream,false,false,[],'cxGrid1DBTableView1');
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar