Agrupamento

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Boa noite pessoal,
tudo bem?
Eu desenvolvi um sistema utilizando APEX que realiza o controle de vendas, custos e margens. Todas informações de clientes e pedidos eu busco nas tabelas que são proveniente do ERP utlizado na empresa. Até ai esta ok!?!?
Porém surgiu uma melhoria que a não estava prevista inicialmente e que precisa ser implementada o quanto antes. Vou descrever com um exemplo:

Tenho uma tabela de Cliente que guarda informações do mesmo. Os clientes são vinculados as vendedoras, montando assim sua carteira. Como realizo o controle de metas das vendedoras e informo por email os clientes que estão a 30, 45 e 60 dias sem realizar compras, surgiu a seguinte situação:
Uma pessoa pode ter mais de uma empresa, com CNPJ's diferentes (não sendo filiais), ou seja, tenho cadastrado na tabela: CLIENTE_1, CLIENTE_2, CLIENTE_3, CLIENTE_4 e CLIENTE_5. Só que CLIENTE_1 e CLIENTE_3 eu preciso considerar como uma empresa. Não posso alterar a tabela de clientes, criando por exemplo um consolidador, pois como citei acima é proviente de um ERP (com atualizações de sistemas eu iria perder o trabalho se alterar a tabela Cliente). A vendedora recebe email que o CLIENTE_1 não realiza compra a 30 dias, porém o CLIENTE_1 é o mesmo CLIENTE_3 cadastrado.
É uma situação complicada de explicar!!

Pensei uma maneira de criar uma tabela que vou agrupar os clientes que ocorrem essa situção e tratar em um campo consolidador.

Porém, alguém tem uma idéia melhor?

Abs.
Daniel.
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Eu não consegui entender direito, mas eu acho que você vai ter que pegar esses dados e talvez colocar numa tabela temporária e fazer DISTINCT depois... Pra tirar os duplicados.
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Sim.
Mas dessa maneira vou precisar criar também um procedimento que atualize essa tabela temporária sempre que a tabela "oficial" de clientes for incrementada.
Pelo menos estou seguindo esse caminho.

Obrigado Thomas.
Avatar do usuário
ecio
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 9
Registrado em: Ter, 31 Jul 2012 1:00 am
Localização: Salvador-BA
"É o grau de comprometimento que determina o sucesso e não a quantidade de seguidores."

Deveria mesmo haver mais de dois ID's fazendo referência ao mesmo cliente?

Esse é um problema de modelagem, cada cliente deveria ter apenas um registro na tabela! Ou o problema está nos operadores do sistema ou no sistema que não valida os dados para saber se o cliente já possui cadastro. Nesse caso, acredito que criar um rotina de unificação de cadastros seja o mais viável, você escolhe um cadastro origem e outro destino e transfere as movimentações para ele, sendo que um deles seria desativado.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes