Ir para conteúdo
Fórum Script Brasil
  • 0

array para soma inteligente no banco


kania

Pergunta

Bom estou desenvolvendo uma palicação aqui para ameprsa que vai usar um sistema daqueles de Marketing de Rede, para caso não saiba o que é marketing de rede vou explicar, eu também não sabia e levei um tempo para entender a lógica da coisa.

Você entra no marketing e coloca duas pessoas abaixo de você, uma a sua direita e outra a esquerda. E estas pessoas irão fazer o mesmo, ao final de cada semana, deve-se gerar a comissão pelas vendas de produtos que toda a rede fez para daí ser calculado seu percentual de comissão, estas comições são calculadas sobre uma determinada pontuação que cada usuário gera na rede quando ele cadastra um novo usuário.

Exemplo eu cadastrei você, eu ganho na rede 200 ponto de um dos lados (direito ou esquerdo sempre sera assim, lado esquerdo ou direito)

O meu problema é que eu consegui fazer o cadastro dos distribuidores no marketing e consigo visualizar a árvore genealogica com os quatro primeiros níveis e os dados de cada distribuidor

Ex. Abaixo de mim tem duas pessoas, minha direita e minha esquerda e preciso calcular a quantidade de pontos que foi feita em cada lado. a pessoa que está a minha direita e todas as demais abaixo dela e a que está a minha esquerda com todas as que estão abaixo dela.

Vou colocar uma imagem que acredito que ficara mais simples de explicar

rede.png

Note que você na parte superior recebe toda a pontuação que entra na rede, independente de quem o cadastrou, até ai mais ou mneos, mas o que tem que cuidar é que se entrar um novo membro na equipe (circulado em vermelho) na rede, este não pode contar pontos na rede circulado em azul por exemplo, porque esta rede não faz parte do grupo dele

então preciso desenvolver uma rotina que consiga a cada cadastro pegar e somar os novos pontos dentro da rede no exmplo a rede toda teria 1800 pontos ao lado esquerdo e 1400 no direito

Mas se pegarmos uma outra equipe para analizarmos, elas terão menos pontos, porqwue como disse cada equipe é independete da outra, cada equipe incia-se com o cadastro de um membro do lado direito e outro do esquerdo, e conforme estes vão cadastrando novos membros, vai assim somendo pontos.

Bom não sei se consegui explicar, mas eu também levei um tempo para entender bem a lógica de como funciona isto, e agora tenho que ver como colcoar isto em programação

Tentei fazer algo da seguinte forma:

Set Rs = Server.CreateObject("adodb.recordset")
    SQL = "select SUM(PONTOSESQUERDO) AS PE, SUM(PONTOSDIREITO) AS PD from cad_consultor where IdConsultor = '" & IdPatrocinador & "'"
    Rs.Open SQL,Conn,3,3
    
    PD = Rs("PD")
    PE = Rs("PE")
    
    Rs.Close
    Set Rs = Nothing
é obviu que ele vai pegar somente os 2 cadastros diretos dele, ai mudei o select para
select SUM(PONTOSDIREITO) AS PD from cad_consultor where IdConsultor = PERNACADASTRO = 'D'"

Ai também não da porque ele pega toda a rede do lado determinado, e na verdade preciso epgar somente em cima de uma determinado associado

Bom ai vem a eprgunta como eu faço para conseguir criar um rotina que ele va descendo a rede e somando todos os pontos?

Estive pensando , será que tem como fazer tipo uma função em laço (array) de forma que quando for acionado ou não o botão para calcular a pontuação de um determinado usuário ele vá até o final da rede, pegue todos que geraram pontos até aquele momento e venha subindo na rede até chegar no usuário que esta logado e de a soma total dos pontos até então?

Editado por kania
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...