Peguei um banco de um cliente onde ele tinha um modelo similar. Seus 
produtos eram classificados de acordo com um código (1, 1.1, 1.2, ...) e 
cada item era destacado como sintético ou analítico, indicando se tratar 
de grupo ou de item.

Assim, o problema era deslocado para o usuário, ele define os códigos e 
fica com a responsabilidade de cadastrar os itens corretamente dentro 
dos grupos sintéticos.

Nos relatórios, você pode tirar listagens por item, de grupos, etc. É 
uma questão de comparar uma substring durante o SELECT e combinar com o 
valor do campo sintético/analítico.

Cordialmente,

Demian Lessa
Salvador - Brasil

> Eu queria sugestões de vocês...
> 
> Preciso implementar um sistema de cadastro de produtos, onde cada
> produto tem um grupo. Cada grupo pode ter  um subgrupo, então isso
> pode atingir vários níveis. Vou implementar usando um esquema de
> árvore. Trabalhar com o TreeView não é problema.
> 
> O problema é como eu vou modelar isso no banco, para não precisar
> fazer consultas no banco recursivamente ???
> 
> Exemplo de uma árvore de produtos.
> 
> 1. Placa de Vídeo
> 1.1. ATI
> 1.1.1. Radeon 9200
> 1.1.2. Radeon 9800
> 1.2. NVidia
> 1.2.1. GeForce 4 MX
> 1.2.2. GeForce TI
> 1.2.3. GeForce FX
> 
> Vamos supor que o usuário queira procurar por placas da Radeon.
> Aí no SELECT eu tenho que buscar todos os "pais", que no caso são
> "ATI" e "Placa de Vídeo". Tem como modelar isso para evitar busca
> recursiva no banco ???
> 
> 
> 
> 
> 
> 
> 



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a