Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia, estou criando o DRE, mas estou com duvidas em como fazer o calculo entre as tabelas. Eu preciso fazer calculos com colunas da nivel 3 com a nivel 1, Venda de Serviços - Custo dos Serviços = coluna nivel1 Receita Operacional Liquida. Eu utilizei a seguinte expressão
=money(sum({$<desc_nivel3={'1.1.1-VENDA DE SERVIÇOS'},desc_nivel3-={'2.1.1-IMPOSTOS S/VENDAS'}>}valor_pago)), ele me traz o total da tabela.
=IF(descricao_nivel_1='RECEITA OPERACIONAL LIQUIDA',RANGESUM(TOP(SUM({<descricao_nivel_1={'DEDUÇÕES DA RECEITA','DESPESAS OPERACIONAIS FIXAS'}>}valor_pago),1,ROWNO()-1)), SUM(valor_pago)) me traz o total da tabela.
Eu preciso que apareça o Receita Total Liquida na Coluna 1, com os valores desse calculo 1 - o outro. Espero que possam me ajudar.
Tambem testei com essa expressão =IF(desc_nivel1='3-RECEITA OPERACIONAL LIQUIDA',RANGESUM(TOP(SUM({$<desc_nivel3={'3-VENDA DE SERVIÇOS','2-CUSTO DAS VENDAS'}>}valor_pago),1,ROWNO()-1)), SUM(valor_pago)), ele me traz os totais das nivel3.
Gabriel,
qdo tive que fazer um DRE no qlik, achei mais viável construir ele no script e apenas mostrar na tabela.
Boa tarde Marcelo, obrigado pelo retorno, você teria alguma qvw que eu pudesse utilizar como base? A parte dos níveis eu cadastrei tudo no banco de dados, mas dai agora preciso fazer esses cálculos, e a unica maneira que eu encontrei foi utilizando a expressão. Fico no aguardo.
Gabriel,
o qvw ta bem complicado de limpar pra te enviar. O que fiz foi o seguinte, criei uma tabela temporária para calcular cada item do DRE e depois concatenei todas as tabelas. O visual ficou assim. E a expressão do objeto tabela ficou um simples: Sum(DRE.Valor)
A tabela DRE_tabela2 do scipt eu usei para calcular esses indicadores na parte de baixo.
Script:
NoConcatenate
DRE_venda_bruta_1:
Load Sum(OrcVen.ValorTotal) as DRE.Valor,
OrcVen.DataMesAno as DRE.DataMesAno,
OrcVen.Fornecedor as DRE.SubGrupo
Resident Orçamento_vendas_analitico
Group by OrcVen.DataMesAno,OrcVen.Fornecedor;
NoConcatenate
DRE_venda_bruta:
Load *,
'VENDA BRUTA' as DRE.Grupo
Resident DRE_venda_bruta_1;
NoConcatenate
DRE_deduções_vendas:
Load 0 as DRE.Valor,
DRE.DataMesAno,
'Deduções s/ vendas' as DRE.SubGrupo,
' Deduções s/ vendas' as DRE.Grupo
Resident DRE_venda_bruta;
NoConcatenate
DRE_receita_liquida:
Load DRE.Valor,
DRE.DataMesAno,
'Receita Líquida' as DRE.SubGrupo,
'RECEITA LÍQUIDA' as DRE.Grupo
Resident DRE_venda_bruta;
NoConcatenate
DRE_cmv_1:
Load Sum(OrcVen.CMV) as DRE2.Valor,
OrcVen.DataMesAno as DRE.DataMesAno
Resident Orçamento_vendas_analitico
Group by OrcVen.DataMesAno;
NoConcatenate
DRE_cmv:
Load -DRE2.Valor as DRE.Valor,
DRE.DataMesAno,
//DRE.SubGrupo,
'CMV Custo Mercadorias Vendidas' as DRE.Grupo
Resident DRE_cmv_1;
NoConcatenate
DRE_lucro_bruto_1:
Load
DRE.DataMesAno,
DRE2.Valor
Resident DRE_cmv_1;
left join
Load
sum(DRE.Valor) as DRE.Valor,
DRE.DataMesAno
Resident DRE_venda_bruta_1
Group by DRE.DataMesAno;
NoConcatenate
DRE_lucro_bruto:
Load (DRE.Valor-DRE2.Valor) as DRE.Valor,
DRE.DataMesAno,
'Lucro Bruto' as DRE.SubGrupo,
'LUCRO BRUTO' as DRE.Grupo
Resident DRE_lucro_bruto_1;
drop table DRE_lucro_bruto_1;
drop Table DRE_venda_bruta_1;
drop Table DRE_cmv_1;
//
DRE_lucro_bruto_venda_bruta_1:
Load sum(DRE.Valor) as DRE.ValorLucBru,
DRE.DataMesAno
Resident DRE_lucro_bruto
group by DRE.DataMesAno;
left join
Load sum(DRE.Valor) as DRE.ValorVenBru,
DRE.DataMesAno
Resident DRE_venda_bruta
group by DRE.DataMesAno;
NoConcatenate
DRE_lucro_bruto_venda_bruta:
Load (DRE.ValorLucBru/DRE.ValorVenBru) as DRE.Valor,
DRE.DataMesAno,
'Lucro Bruto / Venda Bruta' as DRE.SubGrupo,
'Lucro Bruto / Venda Bruta' as DRE.Grupo
Resident DRE_lucro_bruto_venda_bruta_1;
drop table DRE_lucro_bruto_venda_bruta_1;
NoConcatenate
DRE_resultado_financeiro:
Load OrcFin.Valor as DRE.Valor,
OrcFin.DataMesAno as DRE.DataMesAno,
'Receitas Financeiras' as DRE.SubGrupo,
' Resultado Financeiro' as DRE.Grupo
Resident Orçamento_financeiro
Where OrcFin.Categoria='Receitas Financeiras';
Concatenate
Load OrcFin.Valor as DRE.Valor,
OrcFin.DataMesAno as DRE.DataMesAno,
'Receitas Financeiras' as DRE.SubGrupo,
' Resultado Financeiro' as DRE.Grupo
Resident Orçamento_financeiro
Where OrcFin.Grupo='Outros Recebimentos';
Concatenate
Load (-1)*OrcFin.Valor as DRE.Valor,
OrcFin.DataMesAno as DRE.DataMesAno,
'Despesas Financeiras' as DRE.SubGrupo,
' Resultado Financeiro' as DRE.Grupo
Resident Orçamento_financeiro
Where OrcFin.Grupo='Outros Pagamentos';
Load (-1)*OrcFin.Valor as DRE.Valor,
OrcFin.DataMesAno as DRE.DataMesAno,
OrcFin.Categoria as DRE.SubGrupo,
' Resultado Financeiro' as DRE.Grupo
Resident Orçamento_financeiro
Where OrcFin.Categoria='Despesas Financeiras';
NoConcatenate
DRE_despesas_operacionais_1:
Load -Sum(OrcDes.ValorOrçado) as DRE.Valor,
OrcDes.DataMesAno as DRE.DataMesAno
Resident Orçamento_Estrutura_analitico
Group by OrcDes.DataMesAno;
NoConcatenate
DRE_despesas_operacionais:
Load *,
'Despesas Operacionais' as DRE.SubGrupo,
' Despesas Operacionais' as DRE.Grupo
Resident DRE_despesas_operacionais_1;
drop table DRE_despesas_operacionais_1;
NoConcatenate
DRE_lucro_operacional:
Load DRE.Valor,
DRE.DataMesAno,
'Lucro Operacional' as DRE.SubGrupo,
'LUCRO OPERACIONAL' as DRE.Grupo
Resident DRE_despesas_operacionais;
Concatenate
Load DRE.Valor,
DRE.DataMesAno,
'Lucro Operacional' as DRE.SubGrupo,
'LUCRO OPERACIONAL' as DRE.Grupo
Resident DRE_resultado_financeiro;
Concatenate
Load DRE.Valor,
DRE.DataMesAno,
'Lucro Operacional' as DRE.SubGrupo,
'LUCRO OPERACIONAL' as DRE.Grupo
Resident DRE_lucro_bruto;
NoConcatenate
DRE_despesas_operacionais_vendas_1:
Load Sum(DRE.Valor) as DRE.ValorDes,
DRE.DataMesAno
Resident DRE_despesas_operacionais
Group by DRE.DataMesAno;
left join
Load Sum(DRE.Valor) as DRE.ValorVen,
DRE.DataMesAno
Resident DRE_venda_bruta
Group by DRE.DataMesAno;
NoConcatenate
DRE_despesas_operacionais_vendas:
Load (-1)*(DRE.ValorDes/DRE.ValorVen) as DRE.Valor,
DRE.DataMesAno,
'Despesas Ope / Vendas' as DRE.SubGrupo,
'Despesa Operacional / Venda Bruta' as DRE.Grupo
Resident DRE_despesas_operacionais_vendas_1;
DROP Table DRE_despesas_operacionais_vendas_1;
NoConcatenate
DRE_resultado_nao_operacional:
Load 0 as DRE.Valor,
DRE.DataMesAno,
'Resultado não operacional' as DRE.SubGrupo,
' Resultado não operacional' as DRE.Grupo
Resident DRE_venda_bruta;
NoConcatenate
DRE_lair:
Load DRE.Valor,
DRE.DataMesAno,
'Lucro antes impostos' as DRE.SubGrupo,
'LUCRO ANTES IMPOSTOS' as DRE.Grupo
Resident DRE_lucro_operacional;
NoConcatenate
DRE_Impostos:
Load -OrcImp.Valor as DRE.Valor,
OrcImp.DataMesAno as DRE.DataMesAno,
'CSLL e IRPJ' as DRE.SubGrupo,
' CSLL e IRPJ' as DRE.Grupo
Resident Orçamento_Impostos
Where OrcImp.Grupo='3. CONTABILIZAR NO DRE MÊS';
//drop table Orçamento_Impostos_3;
NoConcatenate
DRE_lucro_liquido_1:
Load DRE.Valor,
DRE.DataMesAno
Resident DRE_lair;
Concatenate
Load DRE.Valor,
DRE.DataMesAno
Resident DRE_Impostos;
NoConcatenate
DRE_lucro_liquido:
Load Sum(DRE.Valor) as DRE.Valor,
DRE.DataMesAno,
'Lucro Líquido' as DRE.SubGrupo,
'LUCRO LÍQUIDO' as DRE.Grupo
Resident DRE_lucro_liquido_1
Group by DRE.DataMesAno;
drop table DRE_lucro_liquido_1;
NoConcatenate
DRE_lucro_liquido_receita_liquida_1:
Load sum(DRE.Valor) as DRE.ValorLucLiq,
DRE.DataMesAno
Resident DRE_lucro_liquido
Group by DRE.DataMesAno;
left join
Load sum(DRE.Valor) as DRE.ValorRecLiq ,
DRE.DataMesAno
Resident DRE_receita_liquida
Group by DRE.DataMesAno;
NoConcatenate
DRE_lucro_liquido_receita_liquida:
Load (DRE.ValorLucLiq/DRE.ValorRecLiq) as DRE.Valor,
DRE.DataMesAno as DRE.DataMesAno,
'Lucro Líquido / Venda líquida' as DRE.SubGrupo,
'Lucro Líquido / Venda Líquida' as DRE.Grupo
Resident DRE_lucro_liquido_receita_liquida_1;
drop table DRE_lucro_liquido_receita_liquida_1;
NoConcatenate
DRE:
Load *,
'1' as DRE.Ordem Resident DRE_venda_bruta;
Concatenate
Load *,
'2' as DRE.Ordem Resident DRE_deduções_vendas;
Concatenate
Load *,
'3' as DRE.Ordem Resident DRE_receita_liquida;
Concatenate
Load *,
'4' as DRE.Ordem Resident DRE_cmv;
Concatenate
Load *,
'5' as DRE.Ordem Resident DRE_lucro_bruto;
Concatenate
Load *,
'6' as DRE.Ordem Resident DRE_despesas_operacionais;
Concatenate
Load *,
'7' as DRE.Ordem Resident DRE_resultado_financeiro;
Concatenate
Load *,
'8' as DRE.Ordem Resident DRE_lucro_operacional;
Concatenate
Load *,
'9' as DRE.Ordem Resident DRE_resultado_nao_operacional;
Concatenate
Load *,
'10' as DRE.Ordem Resident DRE_lair;
Concatenate
Load *,
'11' as DRE.Ordem Resident DRE_Impostos;
Concatenate
Load *,
'12' as DRE.Ordem Resident DRE_lucro_liquido;
Concatenate
Load 'nulo' as DRE.Valor,
DRE.DataMesAno,
'nulo' as DRE.SubGrupo,
'nulo' as DRE.Grupo,
'13' as DRE.Ordem Resident DRE_resultado_nao_operacional;
drop table DRE_cmv;
NoConcatenate
DRE_Tabela2:
Load sum(DRE.Valor) as DRE2.VendaBruta,
DRE.DataMesAno as DRE2.DataMesAno
Resident DRE_venda_bruta
Group by DRE.DataMesAno;
Concatenate
Load sum(DRE.Valor) as DRE2.VendaLiquida,
DRE.DataMesAno as DRE2.DataMesAno
Resident DRE_receita_liquida
Group by DRE.DataMesAno;
Concatenate
Load -1*(sum(DRE.Valor)) as DRE2.Despesa,
DRE.DataMesAno as DRE2.DataMesAno
Resident DRE_despesas_operacionais
Group by DRE.DataMesAno;
Concatenate
Load sum(DRE.Valor) as DRE2.LucroBruto,
DRE.DataMesAno as DRE2.DataMesAno
Resident DRE_lucro_bruto
Group by DRE.DataMesAno;
Concatenate
Load sum(DRE.Valor) as DRE2.LucroLiquido,
DRE.DataMesAno as DRE2.DataMesAno
Resident DRE_lucro_liquido
Group by DRE.DataMesAno;
NoConcatenate
DRE_Tabela3:
load * Resident DRE_Tabela2
where DRE2.DataMesAno<>Null();
drop table DRE_Tabela2;
drop Tables DRE_venda_bruta,DRE_deduções_vendas,DRE_receita_liquida,DRE_lucro_bruto,DRE_lucro_operacional,DRE_resultado_nao_operacional,DRE_lair,DRE_Impostos,DRE_lucro_liquido;
drop tables DRE_resultado_financeiro,DRE_despesas_operacionais;
drop table DRE_lucro_liquido_receita_liquida;
drop tables DRE_lucro_bruto_venda_bruta,DRE_despesas_operacionais_vendas;