Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Resultados estranhos, quando uso setanalysis

Eu tenho N documentos, de contas a pagar e receber, cada um com seus devidos valores, nesta tabela a única coisa que separa o que é de um com o que é de outro, é uma coluna de TIPO_DOCUMENTO, que registra C para contas a receber e D para contas a pagar...

Exemplo: Eu tenho um documento, de numero 123456, que seu valor é de: R$ 141.837,77 (conferido com o ERP, está correto)

Fiz uma expressão, para ter separado em colunas o que é Crédito do que é Débito, esta expressão (setanalysis) está assim:

sum ( {$<TIPO_DOCUMENTO = {"C"}>} VALOR ) para coluna Contas a Receber e

sum ( {$<TIPO_DOCUMENTO = {"D"}>} VALOR ) para coluna Contas a Pagar.

Também coloquei um objeto lista na tela, para mostrar o campo VALOR (que é o que a expressão acima também mostra), sendo que desta vez, o campo puro, sem expressão...

Quando seleciono o número do documento, num outro objeto de lista, no objeto de lista que apresenta o VALOR, o resultado exibido é:  R$ 141.837,77 (que está correto),

Já no objeto que mostra o resultado do setAnalysis, o resultado mostrado é de: R$16.453.181,32 (um valor completamente doido).

Mas observando o setanalysis, sum ( {$<TIPO_DOCUMENTO = {"C"}>} VALOR ), que dá este resultado gigantesco, não vejo problema algum...

A pergunta é, porque um mostra uma coisa, e outro outra coisa completamente diferente, se os dois estão mostrando o mesmo campo (VALOR)?

Alguém pode me tirar esta dúvida?

Obrigado.

Marcos.

Fiz a expressão, porque preciso separar o que é Crédito do que é Débito... Não vi outra forma.

Você pode me orientar quanto a isso, o que é que estou fazendo errado?

Obrigado.

Marcos.

15 Replies
Anonymous
Not applicable
Author

Leonardo, tudo bem?

Nnão cara, este campo na verdade é apenas para informar quando um dos milhares de títulos é proveniente de uma multa... Mas muitos não são...

Na verdade, o que classifica mesmo é o campo TIPO_DOCUMENTO, que separa de tudo que existe o que é crédito e o que é débito....

Fiz uma parada aqui, que acho que está completamente errado (boas práticas), mas funcionou...

Para a tabela principal, eu fiz dois loads, no primeiro, eu troquei o nome do campo valor para VALOR_TIPO_C, e coloquei um where, pegando apenas os documentos que tivesse no campo TIPO_DOCUMENTO = C...

No outro load, fiz o inverso, troquei o nome do campo valor, para VALOR_TIPO_D, é fiz um where, pegando apenas os docs que tivesse TIPO_DOCUMENTO = D...

Ou seja, com isso, consegui separar, mesmo que mal feito, o campo valor, assim com o DISTINCT que vc havia me passado, consegui pegar o resultado que eu queria.... (sem usar a expressão que separa TIPO_DOCUMENTO, é claro).

Concatenei os dois, e numa única tabela, passei a ter VALOR_TIPO_C e VALOR_TIPO_D (é claro que deve ter formas mais inteligentes de fazer isso)

Os valores vieram legal...

Agora meu desafio é outro....

Bem, mas vou a luta por aqui.

Meu amigo, nem sei como agradece-lo pelo seu apoio.

Obrigado mesmo e...

Consagre ao Senhor tudo o que você faz, e os seus planos serão

bem-sucedidos.

Provérbios 16:3

Fica na paz.

Marcos.

junior_ehlke
Creator III
Creator III

Conseguiu resolver Marcos? Olhei em um dos exemplos aqui e com a seleção no documento o resultado traz a linha duplicada para esta seleção porém uma linha tem classificação MULTA e a outra é nulo. Esse valor do SUM(VALOR) é o resultado de mais de uma linha com o mesmo valor, por isto com o sum(DISTINCT VALOR) funciona. Aconselho verificar os dados, pois mesmo com o DISTINCT você pode ter problemas no futuro, pode ser um problema de dimensão como repetindo o numero da nota para vários produtos, por exemplo.

Anonymous
Not applicable
Author

Olá Hamilton, obrigado por sua atenção amigo.

Cara, na verdade a MULTA não classifica os dados...

Eu tenho 04 tipos de dados que recupero no select principal...

Transferências entre contas (Crédito)

Transferências entre contas (Débito)

Contas a Pagar (Débito)

Contas a Receber (Crédito)

O select em questão, faz um union all, dos campos semelhantes (os que estão em minha fato), como eu preciso separar por conta (bancária ou conta caixa (interna)), faço a seleção do que é crédito e do que é débito, através do campo TIPO_DOCUMENTO, este campo, é o mais correto, em minha visão, porque o que na verdade quero com isso tudo, é saber diariamente, quanto entrou e quanto saiu de cada conta, e qual o saldo de cada uma delas...

Se eu selecionar uma conta, e tiver todas as entradas (contas a receber ou transferências crédito), somar isso com o saldo do dia anterior, e desta soma eu subtrair saídas (contas a pagar e transferências débito), terei o saldo atual.

Por este motivo, entendo que a simples classificação pelo tipo do documento, já me atenderia..

Não sei se leu o que fiz, descrito acima, aparentemente não seria o mais correto, mas a princípio resolver, mas agora com esta informação que vc me passa, preciso fazer uma análise mais aprofundada.

junior_ehlke
Creator III
Creator III

Entendo, falo isso pois me deparei com o mesmo problema, quando eu fazia um Sum(valor) no meu projeto o valor que me retornava era absurdo, percebi que cometi um erro ao juntar duas de minhas tabelas, o VALOR estava repetindo para cada linha dela. Espero ter ajudado em alguma coisa.

Anonymous
Not applicable
Author

Claro que sim meu amigo, claro que sim, ajuda é sempre muito bem-vindo.

Espero poder ajudar-lhe um dia.

Abraços e fica na paz.

Marcos.

Clever_Anjos
Employee
Employee

Já conseguiu a resposta? Se sim, escolha uma e marque como "Correta" para fechar o tópico e nos ajudar a manter a comunidade organizada

Have fun, be Qlik