Resultado Sql em um DBGrid (com uma condição)

Delphi

13/05/2006

Pessoal,

Tô precisando de uma ajuda !!!
Tenho uma tela de cadastro, aonde existe o cadastro
principal do cliente; como são ´fazendeiros´, coloquei
um DBGrid neste mesmo formulário do cliente, aonde
lista-se as fazendas cadastradas para o mesmo (cada
cliente pode ter quantas fazendas quiser).
Sei que tenho que usar o IBSql com um DataSource para
poder ligar ao DBGrid, mas qual é o comando SQl para
que liste as fazendas de um determinado cliente (neste caso
o que o formulário me apresenta num determinado cliente),
ou seja, quero que quando posiciono a tabela no cliente
número 10 (por exemplo), no DBGrid liste as fazendas
cadastradas para este cliente (já fiz a tabela e as respectivas
FK´s) só falta este bendito código em SQl.

Alguém pode me ajudar ??

Abraço Kleber


Ksotte

Ksotte

Curtidas 0

Respostas

Rjun

Rjun

13/05/2006

SELECT * FROM Tabela WHERE <Condicao>



GOSTEI 0
Roger1976

Roger1976

13/05/2006

ksotte, eu não sei como é a tela que vc montou, mas se estiver trabalhando com dois dbgrids (um para CLIENTES e outro para FAZENDAS, por exemplo) a melhor solução seria trabalhar com mestre-detalhe, ou seja, qdo vc clicar num cliente no grid1, aparecer as fazendas que ele possui no grid2.

Agora, se vc tem um edit onde vc digita o código do cliente, aí vc terá que utilizar um sql simples, por exemplo:

select * from FAZENDAS where COD_CLIENTE = :COD_CLIENTE

Estou acostumado a trabalhar com sqldataset + dataseprovider + clientdataset, mas esta idéia pode ser aplicada qdo se trabalha com outros componentes, como no seu caso.

Caso tenha entendido errado, poste novamente com mais detalhes para melhor entendimento.

Espero ter ajudado.


GOSTEI 0
Ksotte

Ksotte

13/05/2006

Caro roger1976,

Acredito que seja esta a ´fórmula´ para resolver meu problema
select * from FAZENDAS where COD_CLIENTE = :COD_CLIENTE

Eu tenho um formulário (frm_clientes) aonde tenho todos os campos ligados a tabela TBClientes. Navego normalmente entre os registros, através do dbnavigator ou mesmo botões com comandos first, prior, etc...
E logo abaixo, adicionei um DBGrid, aonde conforme o registro que estou, ele me mostra as fazendas que estão cadastradas em uma outra tabela (TBPropriedades) a qual tem um campo (chave estrangeira FK) que faz referência a qual cliente a fazenda pertence.
O correto (eu acho) seria uma Query ligada a um Datasource; aonde nesta query teria o comando SQL que retornasse somente as fazendas daquele determinado cliente (o código do cliente encontra-se no objeto dbe_codclie.txt).

Como proceder ?

abraço e obrigado
Kleber


GOSTEI 0
Ksotte

Ksotte

13/05/2006

Caros amigos,

Já resolvi o problema, fiz uma master detail .... deu certinho....

Grato a todos
Grande Abraço


GOSTEI 0
POSTAR