Ir para conteúdo
  • 0

DRE com dados externos.


Jorge
Ir para solução Solucionado por Jorge ,

Pergunta

  • Alunos

Boa tarde, pessoal.

Gostaria de saber se alguém pode ajudar.

Estou montando um DRE ,  a base de dados é composta de três planilhas de Excel(que estão em anexo), as planilhas são:

-D_MÁSCARA

-D_PLANO DE CONTAS

-F_CONTAS

 

Assisti a live do Léo para fazer e correu tudo bem.

 

A questão é que agora eu precisaria que uma determinada conta, a de código 118(vendas view), pegasse um valor externo as planilhas.Esse valor externo é a medida de VENDAS que tenho no meu arquivo, essa medida de vendas, pega valores de um banco de dados que tenho e que não tem nenhum tipo de relacionamento com essas planilhas de DRE.

Os dados/valores da planilha serão fixos, não irei alterar durante o ano, mas precisaria que o código de conta 118 puxasse as informações de vendas, para que eu possa usar filtros de data e assim contextualizar as vendas mensais(a medida de vendas pertence a tabelas que são relacionadas com a tabela de calendário).

 

Meu DRE usa duas medidas:

$ TOTAL VALORES DRE =
var vDebito=
CALCULATE(
SUM(F_CONTAS[Valor]),
F_CONTAS[Débito/crédito]="D"
)

var vCredito=
IF(SELECTEDVALUE(F_CONTAS[Descrição])="Vendas View",5000,  ---COLOQUEI O VALOR FIXO DE 5000 AQUI PARA TESTAR MAS O PROBLEMA AINDA PERSISTE., NO LUGAR DO VALOR 5000 EU PRECISO COLOCAR $VENDAS
CALCULATE(
SUM(F_CONTAS[Valor]),
F_CONTAS[Débito/crédito]="C"
))

return
vCredito-vDebito

 

$TOTALIZACAO COM SUBTOTAL DRE =
var vSubTotal = MAX('D_MÁSCARA DRE'[Subtotal])

var vValorSubtotal =
CALCULATE(
[$ TOTAL VALORES DRE],
FILTER(
ALL('D_MÁSCARA DRE'),
'D_MÁSCARA DRE'[Código Máscara]<=MAX('D_MÁSCARA DRE'[Código Máscara])
)
)

var vContexto = ISINSCOPE('D_PLANO DE CONTAS'[Descrição])

var vResultado =
SWITCH(
TRUE(),
vSubTotal=0,[$ TOTAL VALORES DRE],
vSubTotal=1 && vContexto=FALSE() ,vValorSubtotal,
BLANK()
)

return
vResultado

 

 

Os dados($VENDAS ou o 5000) aparece na posição que tem que aparecer dentro do visual de matriz, porém , ele não entra no subtotal.

 

image.png.8a152125a927aa1b59bf0d516c55fb6f.png

 

 

 

Alguém, saberia como posso resolver esse problema?

 

 

Desde já agradeço a todos.

 

 

MÁSCARA DRE.xlsx

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Boa tarde, Rafael! tudo bem? Primeiramente, me desculpe pela demora em retornar, estive que focar em um projeto urgente nesses dias.

 

Criei um campo de data na tabela F_CONTAS e fiz o relacionamento com a tabela de calendário, como me orientou. Dessa forma a medida realmente contextualiza, porém estou tendo um problema de inserir os valores das vendas mensais dentro da tabela virtual.

 

Fiz  dessa forma a tabela virtual. Esses valor de R$700 e poucos mil, são as vendas totais e não a venda de jan/21 ou fev/21, respectivamente.

image.png.790fb38eda0216add00a7381ffa22fac.png

 

O relacionamento das tabelas está assim:

 

image.png.d92376bd19ef9ae0a85f86a2591ad802.png

 

Será que é possível criar uma tabela virtual que contextualiza uma medida($VENDAS)?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

@Jorge boa noite!

Tudo bom?

Você precisa fazer o mesmo na linha de Receita Bruta, porque no contexto da medida, que faz a soma da Receita Bruta, os 5.000,00 não existem.
Eles existem apenas na linha Vendas View.

Pensa assim, você pediu para o Power BI mostrar o valor de 5.000,00 na linha de Vendas View.
OK, ele respeitou o que você pediu.

Na sequência, você pede para ele fazer a soma dos valores da F_CONTAS, Ok, ele fez isso e o que ele encontrou quando achou Vendas View?
Encontrou Zero, porque você não alterou o dado na fonte, mas somente o que o Power BI mostrará.

Uma alternativa, caso queira tentar é fazer uma UNION:
 

F_CONTAS_NEW = 
UNION(
    F_CONTAS,
    {(118 , 1, "Vendas View", 5000, "C")}
)

E com essa união, você pode alterar o apontamento da medida $ TOTAL VALORES DRE 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Boa tarde, Rafael! tudo bem?

Muito obrigado pelo retorno!

 

Eu já havia tentado essa abordagem do union, ela funcionou, porém o problema que encontrei é que , quando insiro nela a medida $VENDAS, ela traz as vendas totais e não contextualiza com a data que estou filtrando no segmentador.

 

O union fica mais ou menos assim:

 

F_CONTAS_NEW = 
UNION(
    F_CONTAS,
    {(118 , 1, "Vendas View", $VENDAS, "C")}
)

 

Um exemplo:

image.png.5ce21cce22328f0117b9cdbc89be54df.png

 

Agora se eu filtro a data, ele não contextualiza no DRE.

 

image.png.ee0619d954a13a706acb66f192f12627.png

 

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

@Jorge bom dia!

Estava analisando o teu modelo  e realmente não tem como respeitar o filtro da calendário porque na tua f_contas não existe data.
image.thumb.png.3f51c433b2e4901af11c2f63a4034a32.png

Só na f_vendas possui relacionamento com a dCalendário.
Para adicionar na coluna o valor que deseja, precisa criar uma tabela com datas e relacionar com a dCalendário.

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...