Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Calculo Tabela

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.

Capturar1.PNG

Capturar2.PNG

Labels (2)
4 Replies
Not applicable
Author

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.

Anonymous
Not applicable
Author

Gabriel,

qdo tive que fazer um DRE no qlik, achei mais viável construir ele no script e apenas mostrar na tabela.

Not applicable
Author

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.

Anonymous
Not applicable
Author

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;