Passagem de Parâmetros Dinamicamente para o ClientDataSet
Camaradas, estou com um problema e preciso do auxílio de vocês.
Eu tenho dois DBLookupComboBox que funcionam da seguinte maneira:
Ao selecionar um código no primeiro e, ao entrar no segundo, este deverá apresetnar somente os códigos relacionados ao primeiro código indicado no primeiro DBLookup, pois as duas tabelas estão relacionadas e o código indicado no primeiro DBLookup é estrangeira no segundo.
O problema consiste em que, fazendo simplesmente as sentenças sql no onenter do segundo dblookup não resolve, pois eu estou apenas trabalhando na SQLQuery, pois, colocando-se uma SQLQuery no DataModule e inserindo as sentenças SQL na sua propriedade SQL iremos indicar os parâmetros e posteriormente passamos estes parâmetros para o ClientDataSet através do Fetch Params do Client.
Eu inseri estes códigos no OnEnter do segundo DBLookup, mas infelimente, não funcioou. Dá uma indicação de erro na passagem dinâmica dos parâmetros para o Client. Abaixo estão os códigos para serem analisados por quem interessar. Desde já agradeço a ajuda.
----------------------
DM.CDSModelo.Close;
with dm.SQLQModelo do
begin
close;
sql.Clear;
sql.Add(´select descricao_modelo from modelo_material where cod_classe= :cod´);
ParamByName(´cod´).AsString:=DBLClasse.KeyValue;
Prepared:=True;
open;
end;
// DM.CDSModelo.FetchParams := DM.SQLQModelo.Params[0].AsString;
DM.CDSModelo.Params[0].AsString:=DBLClasse.KeyValue;
DM.CDSModelo.Open;
--------
Erro apresentado na linha indicada por barra-barra(//)
[Error] UCons_Sup.pas(151): Left side cannot be assigned to
Eu tenho dois DBLookupComboBox que funcionam da seguinte maneira:
Ao selecionar um código no primeiro e, ao entrar no segundo, este deverá apresetnar somente os códigos relacionados ao primeiro código indicado no primeiro DBLookup, pois as duas tabelas estão relacionadas e o código indicado no primeiro DBLookup é estrangeira no segundo.
O problema consiste em que, fazendo simplesmente as sentenças sql no onenter do segundo dblookup não resolve, pois eu estou apenas trabalhando na SQLQuery, pois, colocando-se uma SQLQuery no DataModule e inserindo as sentenças SQL na sua propriedade SQL iremos indicar os parâmetros e posteriormente passamos estes parâmetros para o ClientDataSet através do Fetch Params do Client.
Eu inseri estes códigos no OnEnter do segundo DBLookup, mas infelimente, não funcioou. Dá uma indicação de erro na passagem dinâmica dos parâmetros para o Client. Abaixo estão os códigos para serem analisados por quem interessar. Desde já agradeço a ajuda.
----------------------
DM.CDSModelo.Close;
with dm.SQLQModelo do
begin
close;
sql.Clear;
sql.Add(´select descricao_modelo from modelo_material where cod_classe= :cod´);
ParamByName(´cod´).AsString:=DBLClasse.KeyValue;
Prepared:=True;
open;
end;
// DM.CDSModelo.FetchParams := DM.SQLQModelo.Params[0].AsString;
DM.CDSModelo.Params[0].AsString:=DBLClasse.KeyValue;
DM.CDSModelo.Open;
--------
Erro apresentado na linha indicada por barra-barra(//)
[Error] UCons_Sup.pas(151): Left side cannot be assigned to
Ricardo Giordano
Curtidas 0
Respostas
Paulo_amorim
07/06/2004
Olá
ClientDataSet.FetchParams não é uma função que recebe alguma coisa...
ela simplesmente eh executada:
Isso faz com que seus parametros sejam atualizados.
faça, na realidade
Espero que resolva...
Até+
ClientDataSet.FetchParams não é uma função que recebe alguma coisa...
ela simplesmente eh executada:
ClientDataSet.FetchParams;
Isso faz com que seus parametros sejam atualizados.
faça, na realidade
ClientDataSet.FetchParams; ClientDataSet.Params[0].AsString := dbl...
Espero que resolva...
Até+
GOSTEI 0