Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Ranking por seleção

Pessoa

Preciso selecionar o produto,  e fazer um rank disso

imagino que tenha que usar a função "P" só não sei como aplicar

Exemplo :

Item  , Qtd

A    , 2

B    , 4

C    , 6

D    , 8

E    , 10

F    , 40

G    , 20

Pensei em :

Aggr(sum([Qtd]), Item  )

só não sei como aplicar o "P" para fazer o array

Eddit:

tentei  isso mas nao rolo :

Aggr(Sum({<  [Qtd] = P=[Qtd])  >}[Qtd] ), Item )

1 Solution

Accepted Solutions
guilherme_olive
Partner - Creator
Partner - Creator

Pelo que entendi este é o conceito de Cross Selling, ou seja, Vendas Cruzadas.

Você quer saber quais foram os produtos comprados junto (mesma Nota Fiscal, por exemplo) com o produto selecionado.

Segue um QVW como exemplo. Acredito que pode ajudar.

View solution in original post

28 Replies
nicolett_yuri

Julio, não entendi o que você quer fazer.

Pode explicar melhor?

A função P() é para pegar os possíveis resultados e não para fazer rank

Not applicable
Author

Usuário seleciona por exemplo o Item A

Preciso fazer um Rank dos Items que  mais estão presente do A

por exemplo

Sempre que tenho baixa da A tenho baixa de "B"  e "C"

então faria o rank quando selecionar A, trazer B e C  abaixo com suas quantidades ( vamos colocar que B tem 3 e C tem 30, então seria : C = 30, B = 3)

ta meio dificil de entender ne ?

nicolett_yuri

Um pouco, hehe!

Vou falar o que entendi:

Você tem uma tabela com itens e quantidade. O usuário vai selecionar um item qualquer e uma tabela deverá exibir os outros itens (itens excluídos) em ordem decrescente. É isso?

Dúvida, como você sabe que o item A esta ligado ao B e C? ("Sempre que tenho baixa da A tenho baixa de "B"  e "C"")

lucianosv
Specialist
Specialist

Entendi o mesmo que o Yuri, mas fiquei com uma dúvida:

O produto selecionado nunca entra no ranking? Ou melhor, não aparece na análise?

Se este for o caso, você teria que criar uma tabela mais ou menos assim:

Produto Produto_Rank

A          B

A          C

B          A

B          C

C          A

C          B

Depois você usa o campo Produto_Rank para fazer a sua análise.

Cuidado com essa solução, pois dependendo da análise pode multiplicar seus resultados.

Not applicable
Author

É uma Analise de Cesta

Acho que essa explicação fica mais clara, rs

Na verdade tenho

Nº do Pedido
Qtd
item

esses três parametros de analise

* Preciso verificar dentro dos numeros de pedidos, qtd de cada item < ---Consegui fazer

* Com a qtd de cada um em cada pedido fazer uma total e atribuir por item < ---Consegui fazer
* Quando usuário selecionar algum Item, verificar pelo item selecionado, quais são os itens que mais saem com ele, ou seja, baseado no no pedido o que tem as maiores  QTD  e Rankear em + 5 <--- a Bomba

Na vida real...
Analise de Cesta de quem vai fazer construição:
Quem compra Cano compra junto, fita Branca (que nao sei o nome),  "T" , joelho, caixa de agua,  cimento e areia
quando a pessoa seleciona CANO, trás: "T",  fita Branca , joelho, caixa de agua,  cimento e areia

Onde no caso "T" é que mais sai com Cano,

Fico melhor a explicação ?

Not applicable
Author

Oi Luciano

Expliquei melhor agora minha situação, eu acho

nicolett_yuri

Consegui entender.

Essa verificação deve "varrer" todo o histórico de pedidos ou dentro de algum período?

Not applicable
Author

Essa informação fica livre ele pode selecionar um periodo ou não, mas com questão de perfomance pelo 1 mês ja está sempre selecinado

lucianosv
Specialist
Specialist

Bom vamos lá:

Imagino que vc tenha uma linha para cada:

Nº do Pedido

Qtd

item


Se este for o caso, você têm uma base vertical. Acho que funcionaria se você horizontalizasse a base.


Nº do Pedido

Qtd1

item1

Qtd2

Item2


Desta forma você fixaria o item1 para seleção por exemplo e somaria os outros.


Mesmo assim, acho que não ficaria bom.


Você pode ler o resident da sua base criando uma tabela Nº do Pedido e item usando distinct.

Chamaremos essa base de Referencia por exemplo.


Depois disso você faz um lê o resident novamente assim:

Left Join(Referencia)

Load

Nº do Pedido,

Qtd     as     Qtd1,

item     as     item1

Resident ...

Dessa forma você terá uma tabela:

Nº do Pedido,

Qtd ,

item,

Qtd     as     Qtd1,

item     as     item1

Você disponibiliza o campo item para seleção rankeia o item1 somando Qtd1.