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: 
Not applicable

Campo com valor negativo

Boa Tarde, Comunidade.

Estou com um problema, tenho um campo que pode vir com sinal negativo ou não.

Com isso, quando eu faço:

(Sum({$<CalendarioAno = {$(=Only(CalendarioAno))}, TIPO_MOV = {'VENDAS'}>} PRECO_MOV)) -

(Sum({$<CalendarioAno = {$(=Only(CalendarioAno)-1)},TIPO_MOV = {'VENDAS'}>} PRECO_MOV))

E Conter sinal negativo, ao invés de subtrair esta somando:

tabela.jpg

Se eu uso a função Fabs:

Fabs(Sum({$<CalendarioAno = {$(=Only(CalendarioAno))}, TIPO_MOV = {'VENDAS'}>} PRECO_MOV)) -

Fabs(Sum({$<CalendarioAno = {$(=Only(CalendarioAno)-1)},TIPO_MOV = {'VENDAS'}>} PRECO_MOV))

tabela2.jpg

Fez o calculo correto mas me tirou o Sinal Negativo.

Como resolver isso? Preciso informar que é um valor negativo, e tem que fazer a subtração.

Podem me ajudar?

Labels (1)
7 Replies
lucianosv
Specialist
Specialist

Boa tarde.

Honestamente não entendi.

Vou dar o exemplo:

Parte 1: (Sum({$<CalendarioAno = {$(=Only(CalendarioAno))}, TIPO_MOV = {'VENDAS'}>} PRECO_MOV))

Parte 2: (Sum({$<CalendarioAno = {$(=Only(CalendarioAno)-1)},TIPO_MOV = {'VENDAS'}>} PRECO_MOV))

Se a parte 2 for negativa e seu valor absoluto for maior que a parte 1, o calculo tem que dar negativo ou positivo?

Se for negativo basta usar o fabs somente na parte 2.

Not applicable
Author

Boa tarde Luciano,

Não saberei qual das partes terá o sinal negativo.

Marcio_Campestrini
Specialist
Specialist

Gislene,

Se eu entendi direito, quando o valor de 2014 for maior que o valor de 2015, o resultado será positivo, senão será negativo.

Tenta multiplicar o resultado da sua fórmula correta (utilizando fabs) por -1.

Márcio

Márcio Rodrigo Campestrini
Not applicable
Author

Galera,

Acho que entendi o problema dela mas nao pensei numa solução ainda..Ela precisa da diferença entre dois valores, ou seja, ela aplica valor - valor2, o problema que devido alguns registros serem negativos tanto no valor ou na valor2 se torna positivo. Quando se aplica  - com - vira + ..

Acho que é isso...

Not applicable
Author

Não muito performático, mas eu penso em alguem parecido com isso:


IF(Sum([valor 2]) < 0 , Sum(Valor) + Sum([valor 2]), Sum(Valor) - Sum([valor 2]))


Obs. Valor 2 equivale a sua segunda expressao de CalendarioAno -1

Not applicable
Author

Coloca um IF no segundo valor,

exemplo:

VALOR1 - IF(VALOR2 < 0, VALOR2 * -1, VALOR2)

Clever_Anjos
Employee
Employee

Olá, já conseguiu resolver? Se sim, por favor marque uma das respostas como "Correta" para fechar o tópico e ajudar a manter a comunidade organizada.

  https://community.qlik.com/groups/qlikview-brasil/blog/2016/05/10/como-obter-ajuda