Bom dia André,

Não sou nenhum fera em modelagem mas arrisco a te dar a seguinte sugestão:

Criar uma tabela de "Entidade" pois nesse universo temos pessoas sejam
elas físicas ou jurídicas, clientes ou fornecedores.

Com isso, você teria na verdade uma tabela de correspondência, onde
imagino que existiria uma relacionamento de 1 para muitos com a tabela
de entidade (1 entidade pode ter N entradas na tabela de
correspondência), ou seja, elimina aí a necessidade de 2 tabelas de
correspondência visto que a partir da tabela pessoa você reconhece
facilmente se ela é física/jurídica, cliente/fornecedor (usando
atributos e relacionamentos definidos por você).

Vou tentar esboçar:

Entidade:
idEntidade(PK)
nome
...
idTipoPessoa(FK)
idTipoEntidade(FK)

Fisica:
idEntidade(FK)
CPF
...

Jurídica:
idEntidade(FK)
CNPJ
...

Correspondencia:
idEntidade(FK)
Sequencial
...

Ou seja, cada entrada na tabela Entidade pode ser identificada como
física ou jurídica através das respectivas tabelas. Bem como o tipo
dessa entidade: se é cliente, fornecedor ou qualquer outro tipo.

A correspondência se relaciona com a Entidade, independente de sua
natureza ou tipo. Um modelo conceitual ajudaria mas agora não tenho
como fazer infelizmente.

Espero ter ajudado.

--
Fernando França
linux user #263682

gtalk: furansa
skype: fernando_desconstruindo

http://desconstruindo.eng.br
http://www.cbpf.br/~lsd
http://www.rnp.br/keyserver/pks/lookup?search=0xB5E21164

Por favor considere o meio ambiente antes de imprimir esta mensagem.
S'il vous plaît à l'environnement avant d'imprimer ce message.
Please consider the environment before printing this message.



2009/5/14 "André Ormenese ( Yahoo )" <[email protected]>:
> Pessoal,
> sei que esta lista não é para isso, mas sei que tem um pessoal muito
> fera em modelagem de dados aqui.
> Se alguém puder dar um pitaco ...
> O problema é o seguinte : Tenho uma tabela de clientes,  e uma de
> fornecedores. Preciso registrar todas as correspondências enviadas a
> cada cliente e a cada fornecedor. A minha dúvida é se eu posso armazenar
> estas correspondências numa tabela só, com a seguinte estrutura.
> codigo da corresp.
> codigo do destinatario
> tipo do destinatario
> data da corresp.
>
> Onde, codigo do destinatario, hora pode ser do cliente, hora do
> fornecedor. Esta solução me parece estranha. O correto seria uma tabela
> de correspondência para clientes e outra para fornecedor ???
>
> Obrigado
> André
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a