Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
mauroponte
Contributor II

curva ABC dinamica.

Caros,

Gostaria de saber se é possível carregar um arquivo QVD  na aplicação através de uma macro disparada por um disparador de um botão.

Desde já agradeço a quem puder me ajudar nessa questão.

1 Solution

Accepted Solutions
mauroponte
Contributor II

Re: curva ABC dinamica.

Gostaria de agradecer a atenção de todos.

Com sua ajuda consegui solucionar meu problema e melhorar minha aplicação.

10 Replies
pablolabbe
Valued Contributor II

Re: Carregar QVD com macro

Mauro,

  Você pode fazer isso somente com a execução do script. Pelo desktop é possível executar uma "ação " em um botão que executa script. Esta ação não funciona quando a app é visualizada via navegador web através do servidor.

Saudações,

Pablo Labbe

Re: Carregar QVD com macro

Mauro, o que você esta querendo fazer?

O uso de macro não é aconselhável

cleitoncabral2
New Contributor III

Re: Carregar QVD com macro

Mauro, você quer criar um botão para carregar um Qvd?

Se for isso, pode criar um botão e nas ações tem esta opção, sem precisar criar a macro!

Acho que isso te ajudaria!

Ou pode ser por um disparador, vai na CONFIGURAÇÃO -> PROPRIEDADES DO DOCUMENTO -> DISPARADORES..

Creio que uma dessas opções irá te ajudar, com o que você necessita sem precisar utilizar a Macro!

MVP
MVP

Re: Carregar QVD com macro

Boa tarde Mauro.

Segue um modelo exemplo por trigger e por macro.

MVP
MVP

Re: Carregar QVD com macro

Para fazer rodar por server para contornar o que o pablolabbe falou quem sabe uma saída seria o EDX,

mauroponte
Contributor II

Re: Carregar QVD com macro

Caros amigos,

Antes de tudo gostaria de agradecer a ajuda de todos e me desculpar pela demora na resposta.

Na verdade a ajuda que solicitei é para resolver um probleminha com o qual me deparei mediante a necessidade de um cliente.

Acho que fui direto pedindo a solução que pelo jeito não deve ser a melhor.

Sendo assim vou tentar explicar a situação toda para ver se consigo com a ajuda de voces uma solução melhor do que a que pedi inicialmente.

O caso é o seguinte, tenho em um cliente uma tabela dinâmica que mostra a curva ABC de produtos, Conforme figura abaixo. Nessa tabela a dimensão é o produto e tem duas expressões, onde a primeira é o valor faturado e a segunda a curva(, A, B ou C). As expressões são dinâmicas e reagem a qualquer seleção, isto é, se nao for selecionado nenhum fornecedor por exemplo, os produtos irão ser posicionados na curva ABC dentro de todo o universo de produtos, independente do fornecedor. Caso eu selecione um ou alguns fornecedores a curva será refeita para o universo de produtos da seleção atual. Se eu selecionar um fornecedor apenas a curva será refeita so para os produtos daquele fornecedor selecionado, de manira que um produto da curva C no universo total de produtos pode ser de curva A para o seu fornecedor especifico..

CURVA ABC DINAMICA.jpg

Abaixo seguem as formulas das expressões:

1-Valor Faturado : sum({<[FVENDA_CGO_ACM_COMPRA_VENDA]={'S'},FVENDA_DATA_VENDA={">=$(=DATE(vDataInicio_Criacao,'DD/MM/YYYY'))<=$(=DATE(vDataFim_Criacao,'DD/MM/YYYY'))"}>}FVENDA_VLR_LIQUIDO_ITEM )

2-Curva:

if((Rank([Valor Faturado],1)-1) / Count({<[FVENDA_CGO_ACM_COMPRA_VENDA]={'S'},FVENDA_DATA_VENDA={">=$(=DATE(vDataInicio_Criacao,'DD/MM/YYYY'))<=$(=DATE(vDataFim_Criacao,'DD/MM/YYYY'))"}>} distinct TOTAL KEY_PRODUTO)< vLimiteAB/100, 'A',

     If((Rank([Valor Faturado],1)-1) / Count({<[FVENDA_CGO_ACM_COMPRA_VENDA]={'S'},FVENDA_DATA_VENDA={">=$(=DATE(vDataInicio_Criacao,'DD/MM/YYYY'))<=$(=DATE(vDataFim_Criacao,'DD/MM/YYYY'))"}>} distinct TOTAL  KEY_PRODUTO)< vLimiteBC/100, 'B', 'C'))

Até aqui tudo funciona perfeitamente.

Porem tenho duas novas necessidades, primeiro gerar um grafico de pizza onde a dimensão seria a curva que está na tabela(A, B ou C), e a expressão a de valor faturado. A segunda é poder selecionar no grafico de pizza uma das curvas para que essa seleção selecione para mim os produtos desta curva, porem sem que essa seleção refaça a curva no grafico de pizza.

Tentei utilizar a formula da curva como dimensão porem nao funcionou, acho que por conta da função RANK().

Quando pensei em importar o qvd foi porque consegui exportar os dados da tabela para um qvd e queria carrega-los para o grafico de pizza. Porem parece nao ser a melhor solução.

Caso nao tenha sido totalmente claro estou a disposição para tentar esclarecer melhor.

Mais uma vez gostaria de agradecer a ajuda e atenção de todos.

Re: Carregar QVD com macro

mauroponte
Contributor II

Re: Carregar QVD com macro

Muito obrigado Yuri. Te retorno assim que conseguir analisar.

Re: Carregar QVD com macro

O primeiro post vai te ajudar bastante