[firebase-br] Pontuação por Niveis AJUDA
Alexandre Sousa
dave.malkavian em gmail.com
Qui Abr 29 14:22:19 -03 2010
Rapaz, eu ficaria com a idéia do Rodrigo. É mais expansível.
Você poderia colocar uma trigger para verificar a quebra dos 5 níveis,
mantendo a regra de negócios atual mas permitindo que a qualquer momento
possa ser expandida.
Na tabela bastaria colocar um código que se relaciona com um registro da
própria tabela (auto-relacionamento), tipo:
CREATE TABLE CLIENTES(
CODIGO integer not null,
NOME varchar(50),
.
.
.
CODIGO_INDICADOR integer)
Se o código indicador é nulo, esse cara é uma raiz. Senão, foi indicado por
alguém. Basta um algoritmo recursivo como o Rodrigo mencionou para montar a
árvore toda.
A implementação no sistema inclusive fica mais fácil, afinal vc não
precisará verificar em qual dos 5 campos vc vai gravar: basta inserir um
novo registro com o código indicador preenchido.
Para calcular a pontuação basta ver a altura da árvore. Pelo que percebi
existe um padrão à medida que se aumenta um nível.
[]'s
Alexandre Sousa
----- Original Message -----
From: "Alysson Azevedo" <agalysson em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, April 29, 2010 2:04 PM
Subject: Re: [firebase-br] Pontuação por Niveis AJUDA
Rodrigo, essa ideia é boa, pois permite que um pai filhos, netos e etc sem
limites...
mas no caso do amigo ali, onde é necessario especificamente tenha 5 niveis,
o seu metodo fica um pouco exagerado...
sem contar o trampo que vai dar pra calcular os pontos de cada um...
se criando 5 campos, igual allan disse, pra calcular ficaria um simples
update para cada id que estao nos 5 campos..
acho que é mais simples e igualmente eficaz...
--
Alysson Gonçalves de Azevedo
(11) 8491-7730
(\(''^_^ )/)
"Se realmente deseja ter alguma coisa nesta vida, você deve trabalhar para
consegui-la. Agora, silêncio! que eu quero ouvir os números da loteria...."
- Homer Simpson
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista