Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
cauecandeloro
Contributor III
Contributor III

Usando Or, And e Isnull no set analysis

Pessoal,

Estou começando a utilizar algumas funções de set analysis, e surgiram algumas dificuldades.
Estou lendo sobre o assunto mas ainda não consegui encontrar a maneira correta de montar expressões que possuem or, and e isnull.

Seguem exemplos:

1) sum(if(custocompra = 0 or isnull(custocompra), customedio, custocompra))

2) sum(if(novousado = 'N' and filial = 1, frete, fretefora))

Criei duas variáveis de data (Data_Inicial e Data_Final), para que o usuário possa selecionar o intervalo desejado. Neste caso, para expressões mais simples eu até consegui montar a linha completa :
- SUM( {<dtvenda = {">=$(vData_Inicial)<=$(vData_Final)"} >} valorvenda)

Vocês podem me ajudar a montar os dois primeiros exemplos que enviei ? Com isso acho que vou conseguir entender onde estou errando.


Muito Obrigado.
Caue.

1 Solution

Accepted Solutions
thiago_mlg
Creator II
Creator II

Caue, bom dia!

Para explanar um pouco mais a sua dúvida, segue:

o comando OR no set analysis nada mais é do que no mesmo campo vc colocar varias alternativas, desta forma

Sum ({$<custocompra={'0','1','2','3'}  e assim por diante.. o Null vc pode representar por '' no set.. ou seja

Sum ({$<custocompra={'0',''}>}


o AND é só vc separar as expressões por virgula no SET ..


Sum ({$<novousado={N'},filial={1}>}frete) ou seja.. novousado = n and filial = 1


Abraços

View solution in original post

7 Replies
robert_mika
Master III
Master III

Isso ajuda?

OR

Sum ({$<custocompra={'0',''}>}customedio)


AND

Sum ({$<novousado={N'},filial={1}>}frete)

thiago_mlg
Creator II
Creator II

Caue, bom dia!

Para explanar um pouco mais a sua dúvida, segue:

o comando OR no set analysis nada mais é do que no mesmo campo vc colocar varias alternativas, desta forma

Sum ({$<custocompra={'0','1','2','3'}  e assim por diante.. o Null vc pode representar por '' no set.. ou seja

Sum ({$<custocompra={'0',''}>}


o AND é só vc separar as expressões por virgula no SET ..


Sum ({$<novousado={N'},filial={1}>}frete) ou seja.. novousado = n and filial = 1


Abraços

nicolett_yuri

Complementando as respostas anteriores: Com o set analysis não é possível referenciar nenhum valor Nulo, desta forma o melhor a se fazer é tratar esses valores nulos para retornar um string qualquer.

cauecandeloro
Contributor III
Contributor III
Author

Pessoal,


Muito obrigado pela ajuda, já estou conseguindo entender melhor o funcionamento das funções.
Nestes casos, como faço para colocar a condição "senão" ?

Ex: Sum ({$<novousado={N'},filial={1}>}frete) , porém caso não seja novousado = N ou filial = 1 eu gostaria de somar outro campo [if(novousado = 'N' and filial = 1, frete, frete2)]....é possível ?

Abs
Caue.

junior_ehlke
Creator III
Creator III

tenta assim

if(novousado='N' and filial='1',

Sum (frete),

Sum (frete2)

)

Desta forma o usuário tera que obrigatoriamente selecionar N para novousado e 1 para filial, caso contrário, somará o frete2

cauecandeloro
Contributor III
Contributor III
Author

Hamilton,

Mas neste caso seria um if normal, sem utilizar o set analysis. Meu problema é adequar este tipo de expressão usando o set analysis.

junior_ehlke
Creator III
Creator III

Funciona no Gráfico, o IF é para seleções,

agora se você quer que apareça os dois, basta criar duas colunas com as formulas para cada uma.