Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia pessoal...
Tenho que criar um ABC de produtos, aonde tenho que somar a coluna A e multiplicar por 0.50 (50,00 %) e mostrar o valor A até o produto aonde a quantidade for igual o resultado desta multiplicação...
Exemplo abaixo:
124.818 * 0.50 = 62.409
como tenho 192 registros e na imagem acima aparece apenas 29 produtos, pela conta o A teria que aparecer até o 27ª produto...
e para baixo o B até completar 80 % e o C até completar os 100 %.
A do 1 ao 27, B do 28 ao 55e C do 56 ao 194.
Fórmula que estou utilizando mais está dando errado:
Aggr( IF((Rank(SUM(QTD_PRODUTO),1)-1) / Count(distinct total DES_CODDES_PRODUTO)< 0.50, 'A',
IF((Rank(SUM(QTD_PRODUTO),1)-1) / Count(distinct total DES_CODDES_PRODUTO)< 0.80, 'B', 'C')),
DES_CODDES_PRODUTO)
DES_CODDES_PRODUTO = DESCRIÇÃO DO PRODUTO
QTD_PRODUTO = QUANTIDADE DO PRODUTO
Segue em anexo o documento .xls
Consegui achar uma solução para o problema acima...
Agora está funcionado...
IF(RANGESUM(ABOVE(SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO),1,RowNo()),SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO)) <= 0.50, 'A',
IF(RANGESUM(ABOVE(SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO),1,RowNo()),SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO)) <= 0.80, 'B','C'))
Consegui achar uma solução para o problema acima...
Agora está funcionado...
IF(RANGESUM(ABOVE(SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO),1,RowNo()),SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO)) <= 0.50, 'A',
IF(RANGESUM(ABOVE(SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO),1,RowNo()),SUM(QTD_PRODUTO)/SUM(TOTAL QTD_PRODUTO)) <= 0.80, 'B','C'))
Uma pergunta pq você usa descrição do produto para dividir ? você pega o total de produtos que você tem cadastrado ?
Não deveria ser o total que vc tem de qtd ?
Sim, eu contava a descrição do produto, ou seja se eu tenho 200 produtos e multiplicar por 0.50 o A iria até 100 que está bem errado no script da pergunta...
Mais o script que coloquei na resposta deu certo...