Duvida Com Modelagem

To Tentando fazer a modelagem de um sistema, aqui pra empresa mas to mto perdido…
N sei c alguem pode me ajudar pq ta mto complicado…

tipo

Eh um sistema pra venda d plano de saude, consegui fazer 1 pkinho mas agora travei…

Tipo tenho 1 Entidade Venda, que tem ligação com 1 ITem Venda, so que ai eu me complikei, pq eu tenho 1 Cliente so q eu nao sei com quem o Cliente tem Ligação com pessoa Fisica ou Juridica.

Como fica um eskeminha simples de Venda…
Se alguem puder dar uma força vlw :smiley:

amigo,vc quer o que? não deu pra me intender qual sua necessidade

Tipo Assim, Eu Preciso Montar um Diagrama Que Funcione Com Venda…

So que to com uma duvida, por que PessoaFisica e Juridica no caso duas entidades, são meus clientes…

Como eu vo padronizar isso na tabela de clientes…
O cara aki começou essa modelagem mas eu axo q esta errado…

Eu tava refazendo e fiz alguma coisa ja…
Tipo

[URL=http://img35.imageshack.us/i/fotozzl.jpg/][/URL]

So que eu preciso adaptar por que Tem Pessoa Fisica e Juridica tb…
Alguem pode me ajudar…

Sem pensar muito sobre como resolver isto (no seu modelo) eu diria que o cliente pode ser tanto pessoa fisica como pessoa jurídica; ou seja, uma pessoa passando pela rua pode entrar no estabelecimento e comprar ou algum comprador de uma grande empresa pode ligar e comprar também. Logo, o cliente pode ser tanto pessoa fisica como pessoa jurídica.

flws

Isso eu sei, mas o problema eh como vo associar isso…

Tipo a Chave deles na Tabela Cliente entende…

so falta esse detalhe pra eu me acertar…
o que pode ser comum tanto pra PF e PJ na tabela Cliente…

Eu entendi que vc tem 2 tabelas, uma para pessoa fisica e outra para pessoa juridica certamente você tera que colocar 2 colunas (ID_PESSOA_JURIDICA, ID_PESSOA_FISICA) na tabela de clientes como FK para estas tabelas.

Por uma acaso vc está pendando que deveria ser utilizado uma única coluna na tabela de clientes?

Se for isso a coisa pode complicar porque os chaves certamente vão se repetir e vc não saberá quem é o quê (fisica ou juridica) dando inicio a uma ciranda de gambiarras para controlar o trio.

Já vi casos que havia uma única tabela para a entidade pessoa mas ficava com algumas colunas vazias dependendo do tipo de pessoa que era inserida não me pareceu uma boa idéia.

flws

Exatamente grand Fantomas. foi o que pensei, por isso to com essa duvida…
o unico jeito d fazer isso seria, com 2 colunas mas eu achei q msm assim teria um jeito mais pratico…

kkk o cara aki q ta modelando comigo ele keria fazer Cliente PF, PJ, Venda PF, Venda PJ…
Falei af assim ta horrivel neh…

então o jeito mais facil eh esse mesmo??

uma coluna pra kd tipo de pessoa…

Então eu Fiz aki… N sei c está correto, você pode Opinar Obrigado :smiley:

[URL=http://img30.imageshack.us/i/fotolbr.jpg/][/URL]

Agora q eu vi ta faltando a venda de itens mas n influencia nessa parte…

Mas ta Certo essa Parte?

Então a principio é isto mesmo… o que eu acho que pode ser chato nesta idéia é que quando for incluido um cliente do tipo pessoa fisica a coluna correspondente da pessoa juridica irá ficar nula sem falar que não existe (que eu saiba) cliente que pode ser tanto pessoa fisica e pessoa juridica ao mesmo tempo isto teria que ser controlado via aplicação para não acontecer. Outro ponto são as instruções sqls vc tera que ficar verificiando se uma das colunas é nula para determinar que tipo de cliente vc está acessando e por ai vai… Talvez utilizando JOIN a coisa fique mais tranquila, se for utilizar ORM (Hibernate, JPA, etc…) acredito que eles resolvam “automaticamente”.

Existe outra idéia que é a seguinte:

Criar mais uma tabela, então ficaria assim por exemplo CLIENTE, DADOS_CLIENTE, PESSOA_FISICA, PESSOA_JURIDICA; na tabela DADOS_CLIENTE fica os dados comuns entre pessoa juridica e pessoa fisica, a chave desta tabela (DADOS_CLIENTE) iria como FK para PESSOA_JURIDICA ou PESSOA_FISICA dependendo do tipo do cliente (isto controlado pela aplicação) e por último a chave iria como FK para a tabela CLIENTE. Acho que isto consiga eliminar a situação de ter 2 colunas. Nas instruções sqls ainda teria que utilizar o JOIN para resolver a questa dos dados complementares estar em uma tabela ou em outra.

flws

Por que vc precisa fazer esses diagramas? e como vai testar se isso esta correto?

Eu Estou Pensando Na Forma q o Sistema vai ter…
por existe algum metodo melhor???