Campo ´memo´ que desaparece
Olá pessoal,
Estamos enfrentando um problema que é o seguinte:
Utilizando os componentes de acesso TIBQuery + TIBUpdateSQL + TClientDataSet + TIBUpdateSQL para acessar um banco de dados Firebird, em determinadas condições o conteúdo armazenado em um campo memo (blob sub_type 1) simplesmente é perdido ao editar um registro.
Estamos usando para este teste uma tabela bem simples, contendo três campos (Codigo Integer; Nome varchar(100); Descricao blob sub_type 1). O problema acontece seguindo os seguintes passos: Incluir um registro novo com os três campos preenchidos; Depois disso, editar a tabela e alterar o campo nome ou o código (não se pode alterar o campo memo), gravar as alterações e atualizar a tabela (fechar a consulta e abrir rnovamente). E então percebe-se que o conteúdo do campo Memo simplesmente desapareceu! O desaparecimento do memo apenas acontece se o mesmo *não* é editado. Se seu valor também for editado, o novo valor é mantido após a gravação.
Acreditem, por mais absurdo que isso possa parecer, estamos enfrentando este problema na empresa aonde eu trabalho, e ainda não conseguimos uma solução. Verificamos e vasculhamos os fontes da VCL e do IBX, mas não conseguimos descobrir a causa deste problema.
Então resolvi recorrer à lista, para ver se alguém já passou por esta
situação, ou se tem alguma idéia do que pode ser feito para corrigir este
problema.
Ferramentas utilizadas:
:: Borland Delphi 7.0 (Build 8.1)
:: IBX 7.08
:: Firebird 1.5
Desde já, muito obrigada,
Isabel Tiburski
Estamos enfrentando um problema que é o seguinte:
Utilizando os componentes de acesso TIBQuery + TIBUpdateSQL + TClientDataSet + TIBUpdateSQL para acessar um banco de dados Firebird, em determinadas condições o conteúdo armazenado em um campo memo (blob sub_type 1) simplesmente é perdido ao editar um registro.
Estamos usando para este teste uma tabela bem simples, contendo três campos (Codigo Integer; Nome varchar(100); Descricao blob sub_type 1). O problema acontece seguindo os seguintes passos: Incluir um registro novo com os três campos preenchidos; Depois disso, editar a tabela e alterar o campo nome ou o código (não se pode alterar o campo memo), gravar as alterações e atualizar a tabela (fechar a consulta e abrir rnovamente). E então percebe-se que o conteúdo do campo Memo simplesmente desapareceu! O desaparecimento do memo apenas acontece se o mesmo *não* é editado. Se seu valor também for editado, o novo valor é mantido após a gravação.
Acreditem, por mais absurdo que isso possa parecer, estamos enfrentando este problema na empresa aonde eu trabalho, e ainda não conseguimos uma solução. Verificamos e vasculhamos os fontes da VCL e do IBX, mas não conseguimos descobrir a causa deste problema.
Então resolvi recorrer à lista, para ver se alguém já passou por esta
situação, ou se tem alguma idéia do que pode ser feito para corrigir este
problema.
Ferramentas utilizadas:
:: Borland Delphi 7.0 (Build 8.1)
:: IBX 7.08
:: Firebird 1.5
Desde já, muito obrigada,
Isabel Tiburski
Isabelct
Curtidas 0
Respostas
Codex
09/01/2005
Talvez seja um bug do IBX, tente o seguinte
Só uma dica simples
no BeforePost ( antes de dar o post ) coloque:
TabelaCampomemo.value := memo1.text;
Isto vai colocar o valor do memo no campo antes da gravação
tks , poste aki o resultado !
Só uma dica simples
no BeforePost ( antes de dar o post ) coloque:
TabelaCampomemo.value := memo1.text;
Isto vai colocar o valor do memo no campo antes da gravação
tks , poste aki o resultado !
GOSTEI 0