[firebase-br] Pontuação por Niveis AJUDA

Alysson Azevedo agalysson em gmail.com
Qui Abr 29 14:40:14 -03 2010


Sim, eu concordo que é mais elegante a maneira do rodrigo, mas ainda assim
deve se avaliar a possivel extenção do sistema de pontuação vs a
simplicidade de fazer criar os 5 campos...

em um, vc podera almentar pra 6, 10, 1000 niveis... mas com o inconveniente
de ter que selecionar o primeiro nivel, somar os pontos dele e pegar o cod
do segundo nivel e depois selecionar o segundo, atualizar e conseguir o
terceiro.... dependendo de como está o banco, pode ser um pouco chato...

ja no outro, vc terá os 5 niveis no mesmo record, faltando apenas os
updates...
e num precisa verificar em qual nivel vai gravar...
a ideia é que os 5 niveis pais de um registro é repectivamente o id, pai1,
pai2, pai3 e pai4 do indicador...

agora, cabe ao Robson decidir com qual opção ele se indentifica...
--

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


Em 29 de abril de 2010 14:22, Alexandre Sousa
<dave.malkavian em gmail.com>escreveu:

> 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
>
> ______________________________________________
> 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