p style="color: #FFF" table style="width: 100%; font-size: 11pt; border: none; " - saldo_total = 0 - bloqueio_total = 0 - disponivel_total = 0 tbody style="border: none; font-size: 10pt;" - @orcamentos_da_despesa_por_unidade = @orcamentos_da_despesa.sort_by{|orc| orc.elemento_de_despesa_por_subacao.subacao.unidade_orcamentaria.codigo_completo_e_nome}.group_by{ |orc| orc.elemento_de_despesa_por_subacao.subacao.unidade_orcamentaria }.map{ |k| [k[0], k[1].uniq] } - @orcamentos_da_despesa_por_unidade.each do | unidade, orcamentos_da_despesa| - if unidade.present? && unidade != "" && unidade != "CONSOLIDADO" tr td style="border-bottom:1px solid black; border-top:none; border-left:none; border-right:none;" tr style="border: none; " td.text-right style="border: none; height: 25px;" colspan="4" b #{unidade.codigo_completo_e_nome} - unidade_atual = unidade.nome -saldo_unidade = 0 -bloqueio_unidade = 0 -disponivel_unidade = 0 - orcamentos_da_despesa.sort_by{|orc| orc.elemento_de_despesa_por_subacao.subacao.acao.codigo_e_descricao}.group_by{|orc| orc.elemento_de_despesa_por_subacao.subacao.acao}.each do |acao, orcamentos_da_despesa_da_acao| tr style="border: none;" td.text-right style="border: none; height: 25px;" colspan="4" b #{acao.subacao.classificacao_funcional_programatica_com_descricao} - orcamentos_da_despesa_da_acao.sort_by{|orc| orc.elemento_de_despesa_por_subacao.elemento_de_despesa.codigo}.group_by{|orc| orc.elemento_de_despesa_por_subacao.elemento_de_despesa}.each do |elemento_de_despesa, orcamentos_da_despesa_do_elemento| tr style="border: none;" td.text-right style="border: none; height: 25px;" colspan="4" ==< elemento_de_despesa.codigo_e_descricao - contador = 0 - orcamentos_da_despesa_do_elemento.each do |orcamento_da_despesa| - valor_bloqueado = orcamento_da_despesa.bloqueio_de_dotacoes.where('contabilidade_bloqueio_de_dotacoes.data_do_bloqueio <= ?', @dt).sum('coalesce(contabilidade_bloqueio_de_dotacoes.valor, 0)') - valor_empenhado = orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('contabilidade_lancamentos_do_orcamento_da_despesa.modulo_type = ? AND data_do_lancamento <= ?', Contabilidade::Empenho, @dt).sum('coalesce(contabilidade_lancamentos_do_orcamento_da_despesa.valor, 0)') - valor_de_dotacao_origem = orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('contabilidade_lancamentos_do_orcamento_da_despesa.modulo_type = ? AND data_do_lancamento <= ?', Contabilidade::DotacaoOrigem, @dt).sum('coalesce(contabilidade_lancamentos_do_orcamento_da_despesa.valor, 0)') - valor_anulado = orcamento_da_despesa.anulacoes_do_empenho.where('contabilidade_anulacoes_do_empenho.status = 3 AND contabilidade_anulacoes_do_empenho.data_da_anulacao <= ?', @dt).sum('coalesce(contabilidade_anulacoes_do_empenho.valor, 0)') - valor_de_dotacao_destino = orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('contabilidade_lancamentos_do_orcamento_da_despesa.modulo_type = ? AND data_do_lancamento <= ?', Contabilidade::DotacaoDestino, @dt).sum('coalesce(contabilidade_lancamentos_do_orcamento_da_despesa.valor, 0)') - saldo = (orcamento_da_despesa.valor - valor_empenhado - valor_de_dotacao_origem + valor_anulado + valor_de_dotacao_destino) tr style="border: none; " td align="left" style="border: none;" ==< orcamento_da_despesa.fonte_de_recursos.codigo_completo_e_descricao td align="center" style="border: none;" width="16%" ==< saldo.to_f.valor_contabil td align="center" style="border: none;" width="16%" ==< valor_bloqueado.to_f.valor_contabil td align="center" style="border: none;" width="16%" ==< (saldo - valor_bloqueado).to_f.valor_contabil -saldo_unidade = saldo_unidade + saldo -bloqueio_unidade = bloqueio_unidade + valor_bloqueado -disponivel_unidade = disponivel_unidade + (saldo - valor_bloqueado) tr style="border: none;" td align="left" style="border: none;" b Total da Unidade #{unidade.nome} td align="center" style="border: none;" width="16%" b #{saldo_unidade.to_f.valor_contabil} - saldo_total += saldo_unidade td align="center" style="border: none;" width="16%" b #{bloqueio_unidade.to_f.valor_contabil} -bloqueio_total += bloqueio_unidade td align="center" style="border: none;" width="16%" b #{disponivel_unidade.to_f.valor_contabil} -disponivel_total += disponivel_unidade table style="width: 100%; font-size: 11pt; border: none; margin-top:50px" tbody tr style="border: none;" td align="left" style="border-bottom:1px solid black; border-top:1px solid black; border-left:none; border-right:none;" b Total Geral td align="center" style="border-bottom:1px solid black; border-top:1px solid black; border-left:none; border-right:none;" width="16%" b #{saldo_total.to_f.valor_contabil} td align="center" style="border-bottom:1px solid black; border-top:1px solid black; border-left:none; border-right:none;" width="16%" b #{bloqueio_total.to_f.valor_contabil} td align="center" style="border-bottom:1px solid black; border-top:1px solid black; border-left:none; border-right:none;" width="16%" b #{disponivel_total.to_f.valor_contabil} tbody table