Filtrar os dados de um cliente.
Ola Galera, sou novo aqui no fórum, e preciso de uma ajudinha de vcs.
Tenho um cadastro de clientes onde tenho um dbgrig conectado numa tabela chamada parcelas, onde quando efetivada a venda registra o cod do cliente.
Preciso que esse dbgrig puxe apenas os dados da T_parcelas referente ao cliente que esta o pont da Tabela naquele momento ou seja
clinte 1 -> parc 1 , parc2 , parce3 assim por diante.
Desde já agradeço.
Tenho um cadastro de clientes onde tenho um dbgrig conectado numa tabela chamada parcelas, onde quando efetivada a venda registra o cod do cliente.
Preciso que esse dbgrig puxe apenas os dados da T_parcelas referente ao cliente que esta o pont da Tabela naquele momento ou seja
clinte 1 -> parc 1 , parc2 , parce3 assim por diante.
Desde já agradeço.
Fluka
Curtidas 0
Respostas
Luineumann
09/10/2003
faça o seguinte
tabela_parcelas.close;
tabela_parcelas.mastersource := data_source_da_tabela_clientes;
tabela_parcelas.masterfields := ´nome do campo código do cliente´;
tabela_parcelas.open;
para desfazer:
tabela_parcelas.close;
tabela_parcelas.mastersource := nil;
tabela_parcelas.masterfields := ´´;
tabela_parcelas.open;
ou então no evento ondatachange do datasource da tabela de clientes faça
begin
se codigo do cliente é campo númérico
tabela_parcelas.filter := ´Codigo_do_cliente = ´
+ formatfloat(´0000´, tabela_cliente_codigo_do_cliente)
se codigo do cliente é campo alfanumérico
tabela_parcelas.filter := ´Codigo_do_cliente = ´
+ quotedstr(tabela_cliente_codigo_do_cliente)
tabela_parcelas.filtered := true;
tabela_parcelas.close;
tabela_parcelas.mastersource := data_source_da_tabela_clientes;
tabela_parcelas.masterfields := ´nome do campo código do cliente´;
tabela_parcelas.open;
para desfazer:
tabela_parcelas.close;
tabela_parcelas.mastersource := nil;
tabela_parcelas.masterfields := ´´;
tabela_parcelas.open;
ou então no evento ondatachange do datasource da tabela de clientes faça
begin
se codigo do cliente é campo númérico
tabela_parcelas.filter := ´Codigo_do_cliente = ´
+ formatfloat(´0000´, tabela_cliente_codigo_do_cliente)
se codigo do cliente é campo alfanumérico
tabela_parcelas.filter := ´Codigo_do_cliente = ´
+ quotedstr(tabela_cliente_codigo_do_cliente)
tabela_parcelas.filtered := true;
GOSTEI 0
Fluka
09/10/2003
e se o campo cli_cod da tab clientes for autoincremento ???
pq ta dando um erro aqui de incompatibilidade de variaveis.
pq ta dando um erro aqui de incompatibilidade de variaveis.
GOSTEI 0
Fluka
09/10/2003
table1.Filtered:= false;
table1.Filter:= ´Mes = ´´a´´´;
.table1.Filtered:= true;
onde mes é o noe do campo e o A que vc esta vendo e a letra do filtro
Funciona Legalzinho
table1.Filter:= ´Mes = ´´a´´´;
.table1.Filtered:= true;
onde mes é o noe do campo e o A que vc esta vendo e a letra do filtro
Funciona Legalzinho
GOSTEI 0
Fluka
09/10/2003
Desculpe agora qu entendi a resposta, vlw cara brigadão.....
GOSTEI 0
Fluka
09/10/2003
dm.T_parcelas.Filtered:= false;
dm.T_parcelas.Filter:= ´Cod_cli =´ + dm.T_clientesCli_cod.AsString;
dm.T_parcelas.Filtered:= true;
dm.T_parcelas.Filter:= ´Cod_cli =´ + dm.T_clientesCli_cod.AsString;
dm.T_parcelas.Filtered:= true;
GOSTEI 0