Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
dubucha2012
Contributor

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|

Tags (1)
1 Solution

Accepted Solutions
MVP
MVP

Re: Problema com expressão

Eduardo,

da para fazer na dimensao com aggr

2016-02-16 18_41_58.jpg

3 Replies
MVP
MVP

Re: Problema com expressão

Eduardo,

da para fazer na dimensao com aggr

2016-02-16 18_41_58.jpg

dubucha2012
Contributor

Re: Problema com expressão

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)

dubucha2012
Contributor

Re: Problema com expressão

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))

)