Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia comunidade.
Estou com a seguinte questão que já quebrei a cabeça aqui e agora estou com dois problemas, um é a dor de cabeça e a outra não ter conseguido resolver e por isso estou aqui.
O campo Total da Nota Fiscal, do gráfico do tipo tabela simples intitulado Emitente, é composto pela seguinte expressão (Valor no retângulo verde):
(Sum(VPROD_PROD) + Sum(VFRETE_PROD) + Sum(VIPI_TOT) + Sum(VICMSST_ICMS_DET)+ Sum(VSEG_TOT) + Sum(VOUTRO_TOT)) - VDESC_TOT
Os demais campos disponíveis neste objeto fazem parte da dimensão, conforme imagem abaixo.
O objeto gráfico do tipo pizza tem como dimensão a UF do Emitente e a expressão é quase a mesma, somente com uma diferença, que está em negrito:
((Sum(VPROD_PROD) + Sum(VFRETE_PROD) + Sum(VIPI_TOT) + Sum(VICMSST_ICMS_DET)+ Sum(VSEG_TOT) + Sum(VOUTRO_TOT)) - SUM(VDESC_TOT))
Na tabela simples, o valor do retângulo verde já foi homologado pelo cliente, entretanto se eu retirar o SUM() do valor do desconto (VDESC_TOT), o gráfico não é apresentado em sua totalidade, mas apenas quando uma chave de acesso da NFe é selecionada.
A pergunta é como resolver para que o cálculo do gráfico fique o mesmo da tabela?
Sávio,
Isto está me parecendo um problema na modelagem, pois, caso os dois campos
(UF e Valor do Desconto) estivessem na mesma tabela, não haveria este
problema.
Me surpreende o valor do desconto estar sendo calculado na tabela sem o sum
ou um outro agregador. Está mais para que o gráfico de pizza esteja certo
do que o de tabela...
Eu geralmente costumo fazer uma seleção pequena onde há diferenças para
poder achar os erros. Veja se consegue selecionar uma UF que tenha
diferenças e exporte a posição analítica, talvez um objeto tabela com os
dados da NF seja suficiente. Exporte tanto da tabela quanto do gráfico e
então no excel mesmo faça os cruzamentos, tenho certeza de que poderás
chegar nas diferenças.
Abraços.
Em 1 de março de 2016 11:00, Sávio Bueno <qcwebmaster@qlikview.com>
escreveu:
você quer que some tudo mesmo sem estar selecionado?
SUM({1} VDESC_TOT)
Sávio,
Isto está me parecendo um problema na modelagem, pois, caso os dois campos
(UF e Valor do Desconto) estivessem na mesma tabela, não haveria este
problema.
Me surpreende o valor do desconto estar sendo calculado na tabela sem o sum
ou um outro agregador. Está mais para que o gráfico de pizza esteja certo
do que o de tabela...
Eu geralmente costumo fazer uma seleção pequena onde há diferenças para
poder achar os erros. Veja se consegue selecionar uma UF que tenha
diferenças e exporte a posição analítica, talvez um objeto tabela com os
dados da NF seja suficiente. Exporte tanto da tabela quanto do gráfico e
então no excel mesmo faça os cruzamentos, tenho certeza de que poderás
chegar nas diferenças.
Abraços.
Em 1 de março de 2016 11:00, Sávio Bueno <qcwebmaster@qlikview.com>
escreveu:
Grande Rogério tudo bem contigo?
Bom meu velho, eu fiz vários testes e estes que você sinalizou também fiz antes de pedir penico. Só não exportei para o excel.
O campo UF_EMIT é a dimensão do gráfico de pizza e nesta mesma tabela tenho estes valores num grande ETL feito.
A expressão na tabela foi feita junto aos gestores, 2 no caso, onde sinalizaram que o valor do desconto não deveria ser somado. Também achei estranho, mas fazendo a seleção parcial das informações, ou seja, com poucos dados, os valores batem, incluindo no gráfico de pizza.
O gráfico de pizza anteriormente estava com a dimensão UF_EMIT e a expressão SUM(VNF_TOT), entretanto, caso uma nota fiscal tenha vários itens, o SUM(VNF_TOT) é calculado também, um exemplo:
Nota fiscal 0142
Valor total da nota fiscal: R$ 5.000,00
Detalhe da Nota Fiscal:
O valor no gráfico e na tabela ao invés de ser somente R$ 5.000, era apresentado R$ 15.000,00. A cada item ele somava o valor da nota.
Uma informação que talvez possa estar errado que foi sinalizado na sua mensagem, é que na extração das informações da NFE, várias tabelas foram carregadas juntas, dentre elas a tabela de detalhamento dos itens da NFE (NFE_PROD) e dos valores totais do icms (NFE_ICMSTOT).
Seria o caso de não trazer na carga, a mesma tabela com estas informações ou tem como resolver isso com Analise de Conjunto, em se tratando de utilizar o campo correto NFE_ICMSTOT.VNF ?
Agradeço antecipadamente a atenção dispensada.
Sávio,
Acho que quase entendi o problema, mas seria possível dar uma olhada na
imagem da modelagem deste documento? Teria como vc me mandar a imagem das
tabelas relacionadas? Creio que ficaria mais fácil de analisar se a Análise
de conjunto resolveria...
Abraços.
Em 1 de março de 2016 20:45, Sávio Bueno <qcwebmaster@qlikview.com>
escreveu:
Ola Savio,
Por acaso existem valores nulos para o campo "UF_EMIT" ? Voce marcou a opcao no grafico de pizza para oculta-los?
Uma sugestao, tente escrever a expressao da seguinte forma:
Sum(VPROD_PROD + VFRETE_PROD + VIPI_TOT + VICMSST_ICMS_DET + VSEG_TOT + VOUTRO_TOT- VDESC_TOT)
Estou assumindo que todos os campos estao na mesma tabela ou possuem o mesmo nivel de granularidade. Se este e o caso, entao o recomendado e somar primeiro os campos e depois agregar pelas dimensoes.
Boa tarde Cesar.
O Campo UF_EMIT é de preenchimento obrigatório por parte do emissor da nota fiscal, logo, não pode vir nulo. Caso venha, a aplicação que recebe o XML (robô), recusa e informa ao emitente.
Utilizando sua sugestão de fórmula, o valor apresentado é muito menor que o esperado. De qualquer forma, obrigado pela ajuda.
Certo Rogério, segue a visão geral das tabelas. Fiz uma montagem para caber tudo numa mesma imagem.
Mais uma vez agradeço pela boa vontade e empenho.
Sávio,
Pelo que entendi, na tabela NFE você traz todos os dados inclusive o dos
produtos. No caso em questão, creio que o valor do desconto não consta
rateado pelos produtos, você deve estar repetindo o mesmo valor para todos
os produtos.
Neste caso quando você utilizar o SUM, ele vai somar o mesmo valor várias
vezes, de acordo com a quantidade de produtos na NF.
Pode ser que fique mais lento, mas já tentou dividir o valor total de
desconto pelo count dos id_produto? Acho que você não vai conseguir refazer
o script de carga, devido ao trabalhoso processo de reimportar, mas
dividindo pela quantidade você não somaria o valor mais de uma vez, mas
sim, valor já rateado.
Veja se consegue.
Abraços.
2016-03-02 14:17 GMT-03:00 Sávio Bueno <qcwebmaster@qlikview.com>: