Falha Catastrófica ( ClientDataSet)
Estou utilizando um único (ClientDataSet e DataSetProvider) em um DataModule
(DM1). Uso esse ClientDataSet para realizar pesquisas dentro do sistema. Na Primeira pesquisa funciona perfeitamente, mas quando tento fazer outra consulta dá o erro: O erro ocorre não pelo select e sim porque o ClientDataSet esta alimentado
com a pesquisa realizada anteriormente (com fields e dados), acredito que
seria necessário limpá-lo para resolver o problema. O que não sei fazer é zerar o ClientDataSet: Excluir os Fields. O erro que dá é: Field “XXXX” not
found”. Aguardo,
(DM1). Uso esse ClientDataSet para realizar pesquisas dentro do sistema. Na Primeira pesquisa funciona perfeitamente, mas quando tento fazer outra consulta dá o erro: O erro ocorre não pelo select e sim porque o ClientDataSet esta alimentado
com a pesquisa realizada anteriormente (com fields e dados), acredito que
seria necessário limpá-lo para resolver o problema. O que não sei fazer é zerar o ClientDataSet: Excluir os Fields. O erro que dá é: Field “XXXX” not
found”. Aguardo,
Carlos Júnior
Curtidas 0
Respostas
Wilson Junior
27/01/2010
Por um acaso você inclui os Fields ClientDataSet? Se inclui, você deve excluí-los, caso contrário, apenas execute um ClientDataSet.Close antes de efetuar ClientDataSet.Open
Espero ter ajudado.
Espero ter ajudado.
GOSTEI 0
Carlos Júnior
27/01/2010
sim, eu incluir... quero saber como faço para excluir os campos no field editor em tempo de execução..
aguardo,
GOSTEI 0
Wilson Junior
27/01/2010
ClientDataSet.Fields.Clear;
Qualquer coisa pergunte.
Qualquer coisa pergunte.
GOSTEI 0
Carlos Júnior
27/01/2010
Valeu funcionou,
Eu tinha feito assim:
var
i : integer;
T : TField;
begin
for I := DataSet.FieldCount -1 downto 0 do
begin
T := DataSet.Fields[i];
DataSet.Fields.Remove(T);
end; Mas o DataSet.Fields.Clear; é bem melhor né rs...rs.. obrigado....
i : integer;
T : TField;
begin
for I := DataSet.FieldCount -1 downto 0 do
begin
T := DataSet.Fields[i];
DataSet.Fields.Remove(T);
end; Mas o DataSet.Fields.Clear; é bem melhor né rs...rs.. obrigado....
GOSTEI 0