Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
rafits_ctba
Not applicable

Duvida Referente a Utilização e variaveis em Script e Set Analysis

Bom dia Pessoal,

Estou com um problema, na verdade quero otimizar tempo agora, e posteriormente para alguma manutenção.

Necessito criar um "Grid de Informações" onde elas devem ser apresentadas com as minhas marcas rankeadas do maior para o menor em uma coluna e na linha que corresponde a essa marca, apresente os produtos que a compõe rankeadas também do maior para o menor, exemplo:

RankMarcaProduto Rank1Produto Rank2

Produto Rank3

Produto Rank4Produto Rank5
1AA_A1A_BA_C
2BB_A1B_CB_DB_BB_E
3CC_AC_CC_B
4DD_DD_AD_CD_B
5ED_A

Seria mais ou menos como no exemplo acima, só que na análise que devo fazer ele sempre vai pegar as informações referente ao ultimo ano, ou seja, se eu selecionar dez / 2016 ele ira verificar informações entre jan / 2016 e dez / 2016, ou selecioar jun / 2016  a analise seria entre jul / 2015 e jun / 2016.

Como não encontrei nenhum objeto que satisfaça minha necessidade, a solução que encontrei seria criar um Objeto de texto para cada grid do meu quadro, que ainda não sei quantas linas e coluna deve ter (ainda a definir com o usuário) visto essa necessidade irei precisar criar várias expressões, e para facilitar minha manutenção posteriormente pensei em carregar as expressões de um arquivo excel, mas ao carregar via script parte da minha expressão se perde, devido ao uso de $ dentro do set analysis

Expressao da coluna marca :

Concat(if(Aggr( rank((Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material=P(Marca_Material)>}Qtde_Reclamacoes_Fator))/(Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material=P(Marca_Material)>}Qtde_Vendidas)/1000000)),Marca_Material)=1,Marca_Material & Chr(10)))

Expressao da linha que corresponde a marca:

Concat(if(Aggr(num(rank((Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material={$(vr_Rank1)},Material=P(Material)>}Qtde_Reclamacoes_Fator))/(Sum({1< dt_inicio={'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material={$(vr_Rank1)},Material=P(Material)>}Qtde_Vendidas)/1000000),4,2)),Material)=1,Material&Chr(10)))

alguém tem alguma idéia de como posso melhorar a minha lógica de apresentar essas informações?

Tags (1)
1 Solution

Accepted Solutions
Clever_Anjos
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Existe uma "marretadinha" para incluir um $ em uma variável

Set var = SUM({<dt_inicio= {'>=&(=Monthstart(dt_inicio,-11))'}>}Qtde_Reclamacoes_Fator);

Let var = Replace('$(var)','&','$');

7 Replies
Clever_Anjos
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Existe uma "marretadinha" para incluir um $ em uma variável

Set var = SUM({<dt_inicio= {'>=&(=Monthstart(dt_inicio,-11))'}>}Qtde_Reclamacoes_Fator);

Let var = Replace('$(var)','&','$');

rafits_ctba
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Deu certo Obrigado!

rafits_ctba
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

cleveranjos

Obriado pela ajuda ontem, funcionou perfeitamente, mas aora surgiu uma outra dúvida enquando as minhas expressões: segue ->

a minha primeira expressao retorna as marcas (podendo ter marcas com nomes simples ("azeitona") e nomes compostos ("maça verde") - nomes ficticios), quanto ela retorna os nomes simples funciona perfeitamente na segunda expressão, onde ele me retorna o rank dos produtos dessa marca, agora quando retorna nome composto ele apresenta problema,

" Error: Garbage after expression: "verde" " pelos meus testes identifiquei problema na minha referencia para a variavel que busca o nome da marca "vr_Rank1" só que já tentei coloca entre aspas simples, duplas, etc... e não consegui consegue me ajudar? Obrigado!

Clever_Anjos
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Como é a expressão utilizada?

rafits_ctba
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Bom dia Clever,


- Segue a expressão, o erro ocorre quando ele puxa o valor da variavel que está em negrito:

Concat(if(Aggr(num(rank((Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material={$(vr_Rank1)},Cod_Material=P(Cod_Material)>}Qtde_Reclamacoes_Fator))/(Sum({1< dt_inicio={'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material={$(vr_Rank1)},Cod_Material=P(Cod_Material)>}Qtde_Vendidas)/1000000),4,2)),Cod_Material)=1,Cod_Material&Chr(10)))


- o valor que a variavel recebe  é gerada por essa expressão:

Concat(if(Aggr( rank((Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material=P(Marca_Material)>}Qtde_Reclamacoes_Fator))/(Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material=P(Marca_Material)>}Qtde_Vendidas)/1000000)),Marca_Material)=1,Marca_Material & Chr(10)))


Atenciosamente,

Rafael Mendes

Clever_Anjos
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Cola em um objeto texto e coloca o resultado aqui por favor

Concat(if(Aggr( rank((Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material=P(Marca_Material)>}Qtde_Reclamacoes_Fator))/(Sum({1< dt_inicio= {'>=$(=Monthstart(dt_inicio,-11))'},Unidada_Negocio=P(Unidada_Negocio),Marca_Material=P(Marca_Material)>}Qtde_Vendidas)/1000000)),Marca_Material)=1,Marca_Material & Chr(10)))

rafits_ctba
Not applicable

Re: Duvida Referente a Utilização e variaveis em Script e Set Analysis

Opa, Obg pelo retorno, mas eu resolvi o problema comparando pelo código da Marca do Material que é unica, resolveu meu problema, Obrigado!