Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
EduardoAlexandredeFrancisco

Problema com expressão

Boa!!!

Vou tentar ser breve e objetivo:

tem um gráfico do tipo Tabela simples.

Dimesão:

Unidade

Produto

Expressão

A = Venda R$ do produto no D-1

B = Média da venda R$ do produto dos últimos 20 dias

C = Diferente entre a Expressão A / B. Se for maior que 10% mostra, senão não aparece.

Até aqui ok

Problema

D =  Quantidade de produtos vendidos naquele dia  e que a Expressão A / B tem que ser diferente de 10%.

Alguém me ajuda?

Por motivos de segurança da empresa, não é possível pucbicar um qvw;

Ex. Tançea

Unidade | Produto | Expressão A | Expressão B | Expressão C|

1 Solution

Accepted Solutions
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Eduardo,

da para fazer na dimensao com aggr

2016-02-16 18_41_58.jpg

furtado@farolbi.com.br

View solution in original post

3 Replies
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Eduardo,

da para fazer na dimensao com aggr

2016-02-16 18_41_58.jpg

furtado@farolbi.com.br
EduardoAlexandredeFrancisco
Author

Alessandro, bom dia.

Retomando a atividade, após mudança de prioridade ..rs

Não deu certo.

=aggr(

if(

  //retorna a menor venda de d-1

  min({< DATA_EMISSAO={">=$(=DATE(MAX(TODAY())-1))<$(=DATE(MAX(TODAY())))"},   D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'}, PEDIDO_TIPO={'1'}>}

  (  (D2_TOTAL -D2_D1_TOTAL)   -   (   (   ( D2_VALBRUT - D2_D1_VALBRUT) *  D2_I_PRCDC   ) / 100   )   )

  

  /  (D2_QUANT-D2_D1_QUANT))

  <

  (

  //média de venda dos ultimos 20 dias

  AGGR(NODISTINCT

  (SUM({<[T. ANÁLISE]={'FATURADO'},DATA_EMISSAO={">=$(=date(Max(TODAY()-vQtdeDiasVlrNet)))"}, D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'}, PEDIDO_TIPO={'1'}>}

  (  (D2_TOTAL -D2_D1_TOTAL)  -   (   (   (D2_VALBRUT-D2_D1_VALBRUT) *  D2_I_PRCDC   ) / 100   )   )   )

  /

SUM({<[T. ANÁLISE]={'FATURADO'},DATA_EMISSAO={">=$(=date(Max(TODAY()-vQtdeDiasVlrNet)))"}, D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'}, PEDIDO_TIPO={'1'}>} ( D2_QUANT -D2_D1_QUANT))  )

  , PRODUTO)

  ) - (

    AGGR(NODISTINCT   (SUM({<[T. ANÁLISE]={'FATURADO'}, DATA_EMISSAO={">=$(=date(Max(TODAY()-vQtdeDiasVlrNet)))"}, D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'}, PEDIDO_TIPO={'1'}>}   (

  (D2_TOTAL -D2_D1_TOTAL)   -   (   (   (D2_VALBRUT-D2_D1_VALBRUT) *  D2_I_PRCDC   ) / 100   )   )   )

  / SUM({<[T. ANÁLISE]={'FATURADO'},DATA_EMISSAO={">=$(=date(Max(TODAY()-vQtdeDiasVlrNet)))"}, D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'}, PEDIDO_TIPO={'1'}>} ( D2_QUANT -D2_D1_QUANT))

  )

  , PRODUTO)

  ) * $(vPercentualValorNet)

,

  // se o preço da venda for < que 10% da média

  Sum({<DATA_EMISSAO={">=$(=DATE(MAX(TODAY())-1))<$(=DATE(MAX(TODAY())))"},   D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'},PEDIDO_TIPO={'1'}>} D2_TOTAL)

  -

  Sum({<DATA_EMISSAO={">=$(=DATE(MAX(TODAY())-1))<$(=DATE(MAX(TODAY())))"},   D2_B1_TIPO={'PA'}, A1_TIPO={'L','R'},PEDIDO_TIPO={'1'}>} D1_TOTAL)

  ,null()

  ),PRODUTO)

EduardoAlexandredeFrancisco
Author

Consegui da seguinte forma

If(Column(1) = 0 OR ISNULL(Column(1)) ,

  null(),

  If([R$/QT] = 'R$', Sum({<PEDIDO_TIPO={'1'}>} D2_VALBRUT), Sum({<PEDIDO_TIPO={'1'}>} D2_TOTAL) )

  -

  If([R$/QT] = 'R$', Sum({<PEDIDO_TIPO={'1'}>} D1_VALBRUT),Sum({<PEDIDO_TIPO={'1'}>} D1_TOTAL))

)