Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

demytrius

Limitando Cadastro de projeto, de acordo com cliente

Recommended Posts

Possuo 2 tabelas

CLIENTES e PROJETOS

 

o relacionamento é:

 

|Clientes| 1 ----------- N |Projetos|

 

O programa:

Tenho um form de cadastro de clientes, e neste form tem um botão "Projetos...", ao clicar neste botão, ele abre outro form com os campos da tabela PROJETOS.

 

O problema:

Quando estou no registro de um determinado cliente, gostaria que ao clicar em "Projetos..." ele limitasse o programa a mostrar-me apenas os projetos daquele cliente, e não de todos, como está ocorrendo, e mais que apenas mostrar, permita-me cadastrar novos projetos, porém sempre para o cliente em questão.

 

Info adicionais:

As chaves identificadoras da tabela projetos é

*CD_PROJ -> Chave primária (integer not null)

#CD_CLI -> Chave estrangeira (integer not null)

 

Desde já, obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, isso é questão de filtro na sua query de pesquisa... em vez de fazer um SELECT * FROM PROJETOS simplesmente, vai ter que fazer um select condicional, algo do tipo:

 

SELECT * FROM PROJETOS WHERE CD_CLI = 1

 

No select acima, você vai filtrar todos os projetos do cliente que possui o código 1. E na hora que for dar o insert, você tem que gravar na tabela de projetos o código do cliente que está gravando o registro. Assim terá sua relação cliente X Projetos (1 x N).

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você deve validar antes de gravar os dados na sua rotina com os testes necessários... no comando insert não tem validações. Quando for gravar os dados na tabela de projetos, lembre-se que sempre terá que gravar o código do usuário que criou o projeto, assim manterá a relação 1xN entre as tabelas.

 

Logo após a gravação, terá que reexecutar a query que carrega os dados da grid para o projeto aparecer na lista do usuário.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.