Extração de Dados do SICONFI com R


Pequeno tutorial ilustrando como realizar a extração de dados da API do SICONFI utilizando o pacote {siconfir}
Author

Marcos F Silva

Published

February 22, 2025

Introdução

Este pequeno tutorial tem por objetivo ilustrar como utilizar o R e, em especial, o pacote {siconfir} para realizar a extração de dados contábeis e fiscais da API do SICONFI.

Por intermédio dessa API é possível obter dados relativos à Matriz de Saldos Contábeis - MSC, ao Relatório de Gestão Fiscal - RGF e ao Relatório Resumido de Execução Orçamentária - RREO.

Alguns dos dados disponibilizados nesses demonstrativos são bastante úteis para a avaliação da capacidade financeira, orçamentária e fiscal dos entes federativos, conforme demonstrado por intermédio do “Demonstrativo de Viabilidade do Plano de Custeio” de que trata o Art. 49 da Portaria 1.467/2022.

Em especial, os dados relativos a Receita Corrente Líquida - RCL, Despesa Líquida com Pessoal - DLP e Dívida Consolidada Líquida - DCL são diretamente utilizadas na confecção do mencionado demonstrativo, de forma que é útil saber extrair esses dados da API do SICONFI.

Além disso, o Anexo IV do RREO é de especial importância para a Previdência, visto que trata especificamente das despesas relacionadas à essa função de governo.

Esse tutorial mostra como começar a unir os “mundos” previdenciário e fiscal para os entes que estão vinculados ao RPPS.

O pacote {siconfir}

Para realizar a extração dos dados da API do SICONFI vamos utilizar o pacote {siconfir} cuja página na internet é https://github.com/aspeddro/siconfir e onde o leitor irá encontrar informações úteis sobre as funções disponibilizadas pelo pacote e de como utilizá-las.

A instalação do pacote a partir do GitHub pode ser feita da seguinte forma:

install.packages("remotes")
remotes::install_github("aspeddro/siconfir")

Uma vez instalado o pacote devemos “carregá-lo”, o que fazemos a seguir, juntamente com outros pacotes que nos serão úteis mais adiante.

suppressPackageStartupMessages({
  library(siconfir)
  library(tidyverse)
  library(readxl)
  library(knitr)
})

As funções do pacote {siconfir} fazem uso intensivo dos códigos IBGE dos entes federativos para identificação dos mesmos. Por outro lado, os dados previdenciários utilizam o CNPJ do ente para fazer sua identificação.

Outras duas funções utilitárias disponibilizadas pelo pacote com funcionades semelhantes são find_cod() e br_cods().

A função get_info() nos retorna a relação os entes federativos municipais com a indicação de seus códigos IBGE e também do seu CNPJ.

info_rj <- get_info() %>% 
  filter(uf == "RJ") 

No código acima realizamos um filtro para ficarmos apenas com as informações dos 92 municípios fluminenses.

head(info_rj) %>% kable()
cod_ibge ente capital regiao uf esfera exercicio populacao cnpj
3300100 Angra dos Reis 0 SE RJ M 2025 181228 29172467000109
3300159 Aperibé 0 SE RJ M 2025 10893 36288900000123
3300209 Araruama 0 SE RJ M 2025 126726 28531762000133
3300225 Areal 0 SE RJ M 2025 11765 39554605000160
3300233 Armação dos Búzios 0 SE RJ M 2025 39033 01616171000102
3300258 Arraial do Cabo 0 SE RJ M 2025 31030 27792373000107

Como podemos ver na tabela acima, a base de dados retornada pela função get_info() traz exatamente essa informação - código IBGE - juntamente com o CNPJ do ente, mas não nos dá uma indicação de o ente estar vinculado ao regime geral de previdência social (RGPS) ou ao regime próprio de previdência social (RPPS).

Elaboramos uma base de dados chamada cadastro que contém para cada ente da federação seu código IBGE, seu CNPJ e a indicação quanto ao ente a estar vinculado ao RGPS ou ao RPPS ou ainda se o RPPS está em extinção.

O código abaixo carrega essa base de dados e filtra para obtermos apenas informações relativas aos municípios fluminenses que estão vinculados ao RPPS e para os quais vamos obter os dados fiscais, já que nosso interesse são os RPPS.

Note

Optamos por não realizar a consulta para o Estado do Rio de Janeiro em razão de diferenças que eventualmente possam existir nos demonstrativos fiscais em comparação com os demonstrativos dos entes municipais.

load("cadastro.RData")

cadastro_rj <- cadastro %>% 
  mutate(cod_ibge = as.integer(cod_ibge)) %>%  
  filter(regime == "RPPS",  uf == "RJ", cod_ibge != 3300000)

head(cadastro_rj) %>% kable()
cnpj uf ente regime cod_ibge
29172467000109 RJ Angra dos Reis RPPS 3300100
36288900000123 RJ Aperibé RPPS 3300159
28531762000133 RJ Araruama RPPS 3300209
39554605000160 RJ Areal RPPS 3300225
01616171000102 RJ Armação dos Búzios RPPS 3300233
27792373000107 RJ Arraial do Cabo RPPS 3300258

Além de facilitar a utilização das funções do pacote {siconfir}, como veremos mais adiante, essa base de dados pode ser útil para combinar dados previdenciários, para os quais a identificação do ente é feita pelo CNPJ, com outras bases de dados nas quais os entes sejam identificados pelo código IBGE.

Encaminhamento de demonstrativos

Uma primeira “análise” que pode ser feita em relação aos demonstrativos fiscais é a simples verificação quanto ao seu regular encaminhamento à STN.

A função report_status() nos permite identificar o status de cada ente em relação ao encaminhamento dos relatórios contábeis e fiscais à STN.

Esta função recebe basicamente dois argumentos: o ano para o qual se deseja consultar o status e os códigos IBGE dos entes federativos para os quais se deseja realizar a consulta.

Nesse tutorial trabalharemos apenas com os municípios vinculados ao RPPS.

Vamos consultar o relatório de status para o ano de 2024 dos municípios fluminenses vinculados ao RPPS .

rel_status_2024_rj <- report_status(year = 2024,
                                    cod = cadastro_rj$cod_ibge)

comment(rel_status_2024_rj) <- date()
head(rel_status_2024_rj) %>% kable()
exercicio cod_ibge populacao instituicao entregavel periodo periodicidade status_relatorio data_status forma_envio tipo_relatorio
2024 3300100 181228 Câmara de Vereadores de Angra dos Reis - RJ MSC Agregada 1 M NA 2024-03-01T09:19:37Z CSV NA
2024 3300100 181228 Câmara de Vereadores de Angra dos Reis - RJ MSC Agregada 2 M NA 2024-03-26T14:31:59Z CSV NA
2024 3300100 181228 Câmara de Vereadores de Angra dos Reis - RJ MSC Agregada 3 M NA 2024-04-19T16:07:19Z CSV NA
2024 3300100 181228 Câmara de Vereadores de Angra dos Reis - RJ MSC Agregada 4 M NA 2024-05-28T15:05:56Z CSV NA
2024 3300100 181228 Câmara de Vereadores de Angra dos Reis - RJ MSC Agregada 5 M NA 2024-06-27T16:57:44Z CSV NA
2024 3300100 181228 Câmara de Vereadores de Angra dos Reis - RJ MSC Agregada 6 M NA 2024-07-29T14:50:42Z CSV NA

Essencialmente a função nos retorna uma base de dados indicando quais relatórios foram entregues, quais competências foram entregues no ano selecionado, além de outras informações.

O relatório nos permite verificar o encaminhamento dos seguintes demonstrativos:

rel_status_2024_rj %>%
  distinct(entregavel) %>% 
  kable()
entregavel
MSC Agregada
Relatório de Gestão Fiscal
Relatório Resumido de Execução Orçamentária
MSC Encerramento
Relatório de Gestão Fiscal Simplificado
Relatório Resumido de Execução Orçamentária Simplificado
Balanço Anual (DCA)

Neste tutorial vamos trabalhar apenas a MSC Agregada, o Relatório de Gestão Fiscal e o Relatório Resumido de Execução Orçamentária.

A partir do conjunto de dados rel_status_2024_rj vamos elaborar tabelas específicas para realizar o monitoramento do encaminhamento dos três demonstrativos mencionados à STN.

Encaminhamento da MSC

O encaminhamento dos dados contábeis à Secretaria do Tesouro Nacional - STN constitui critério de regularidade do CRP. Então é razoável que verifiquemos se o ente está fazendo o seu regular encaminhamento como determina a Portaria 1.467/2022.

Note

A responsabilidade pelo encaminhamento dos dados contábeis do RPPS à STN é do ente federativo e não da Unidade Gestora do RPPS.

Para tanto podemos utilizar o seguinte script para realizar o monitoramento das entregas da MSC à STN:

entregas_msc_2024 <- rel_status_2024_rj %>% 
  filter(entregavel == "MSC Agregada",
         grepl("^Prefeitura", instituicao)) %>%                   
  select(exercicio, cod_ibge, instituicao, periodo, periodicidade, data_status) %>%   
  mutate(data_status = substr(data_status, 1, 10),                                               
         instituicao = gsub("Prefeitura Municipal d[eo] (.*) - RJ", "\\1", instituicao)) %>%    
  select(cod_ibge, instituicao, periodo, data_status) %>% 
  pivot_wider(names_from = periodo, values_from = data_status) %>% 
  arrange(cod_ibge, instituicao)

head(entregas_msc_2024) %>% kable()
cod_ibge instituicao 1 2 3 4 5 6 7 8 9 10 11 12
3300100 Angra dos Reis 2024-03-01 2024-03-26 2024-04-19 2024-05-28 2024-06-27 2024-07-29 2024-09-16 2024-09-20 2024-10-29 2024-11-22 2025-01-03 2025-01-28
3300159 Aperibé 2024-07-19 2024-07-19 2024-07-19 2024-07-19 2024-07-19 2024-08-09 2024-09-04 2024-10-01 2024-11-25 2024-11-29 2024-12-20 2025-02-07
3300209 Araruama 2024-05-08 2024-05-21 2024-05-21 2024-06-10 2024-07-04 2024-07-31 2024-08-29 2024-09-26 2024-10-31 2024-11-18 2024-12-27 NA
3300225 Areal 2024-06-17 2024-06-17 2024-06-17 2024-06-17 2024-07-23 2024-07-23 2024-09-02 2024-12-06 2024-12-06 2024-12-06 NA NA
3300233 Armação dos Búzios 2024-03-28 2024-03-28 2024-04-30 2024-05-20 2024-06-21 2024-07-18 2024-08-30 2024-09-25 2024-10-29 2024-11-29 2024-12-20 2025-01-31
3300258 Arraial do Cabo 2024-03-06 2024-03-28 2024-04-30 2024-06-05 2024-07-03 2024-07-29 2024-08-23 2024-09-24 2024-10-29 2024-11-22 2024-12-26 2025-01-31

O código acima essencialmente extrai da base de dados rel_status_2024_rj os registros relativos ao demonstrativo MSC Agregada e faz um conjunto de processamento com vistas apenas a deixar os dados mais “apresentáveis”.

O resultado é a relação dos entes que encaminharam ao menos um demonstrativo no ano pesquisado, os meses em que houve encaminhamento com a indicação da data de encaminhamento do demonstrativo.

É importante notar que a base de dados acima contém apenas as informações relativas aos entes que fizeram o encaminhamento dos demonstrativos à STN, mas não permite identificar quais municípios não fez o encaminhamento. É importante trazer essa informação para a base de dados, o que faremos a seguir:

msc_entregas <- entregas_msc_2024$cod_ibge

entregas_msc_2024 <- cadastro_rj %>% 
  left_join(entregas_msc_2024,  by=join_by(cod_ibge)) %>% 
  select(-instituicao)

head(entregas_msc_2024) %>% kable()
cnpj uf ente regime cod_ibge 1 2 3 4 5 6 7 8 9 10 11 12
29172467000109 RJ Angra dos Reis RPPS 3300100 2024-03-01 2024-03-26 2024-04-19 2024-05-28 2024-06-27 2024-07-29 2024-09-16 2024-09-20 2024-10-29 2024-11-22 2025-01-03 2025-01-28
36288900000123 RJ Aperibé RPPS 3300159 2024-07-19 2024-07-19 2024-07-19 2024-07-19 2024-07-19 2024-08-09 2024-09-04 2024-10-01 2024-11-25 2024-11-29 2024-12-20 2025-02-07
28531762000133 RJ Araruama RPPS 3300209 2024-05-08 2024-05-21 2024-05-21 2024-06-10 2024-07-04 2024-07-31 2024-08-29 2024-09-26 2024-10-31 2024-11-18 2024-12-27 NA
39554605000160 RJ Areal RPPS 3300225 2024-06-17 2024-06-17 2024-06-17 2024-06-17 2024-07-23 2024-07-23 2024-09-02 2024-12-06 2024-12-06 2024-12-06 NA NA
01616171000102 RJ Armação dos Búzios RPPS 3300233 2024-03-28 2024-03-28 2024-04-30 2024-05-20 2024-06-21 2024-07-18 2024-08-30 2024-09-25 2024-10-29 2024-11-29 2024-12-20 2025-01-31
27792373000107 RJ Arraial do Cabo RPPS 3300258 2024-03-06 2024-03-28 2024-04-30 2024-06-05 2024-07-03 2024-07-29 2024-08-23 2024-09-24 2024-10-29 2024-11-22 2024-12-26 2025-01-31

Para facilitar a identificação dos entes que eventualmente não fizeram a entrega de nenhuma MSC vamos “marcar” na base de dados os entes que encaminharam ao menos uma MSC e os que não fizeram nenhum encaminhamento.

Essa “marcação” da base de dados consiste apenas na inclusão de uma nova coluna, que vamos chamar de entregou_msc, que terá o valor 1 para indicar o ente que entregou e o valor 0 para quem não entregou.

entregas_msc_2024 <- entregas_msc_2024 %>% 
  mutate(entregou_msc = if_else(cod_ibge %in% msc_entregas, 1, 0))

Pronto. Agora temos uma relação dos municípios fluminenses vinculados ao RPPS e do status quanto ao encaminhamento da MSC. Basta irmos atualizando a base de dados à medida que o tempo for passando.

Important

Um ponto importante a se considerar é que a entrega da MSC não garante que os dados contábeis dos RPPS foram de fato encaminhados à STN. É importante verificar se o PO de identificação do RPPS está presente na MSC. Quando tratarmos da extração de dados da MSC, mais adiante, voltaremos a esse ponto.

Encaminhamento do RGF

Da mesma forma que fizemos para a MSC, é possível fazer um acompanhamento quanto ao encaminhamento dos Relatórios de Gestão Fiscal - RGF. Além disso, é possível fazer a extração de dados relativos aos anexos do referido relatório, como mostraremos mais adiante.

A construção de uma base de dados relativa ao encaminhamento do RGF pode ser feita da seguinte forma:

entregas_rgf_2024 <- rel_status_2024_rj %>% 
  filter(entregavel == "Relatório de Gestão Fiscal",
         grepl("^Prefeitura", instituicao)) %>%                   
  select(exercicio, cod_ibge, instituicao, periodo, periodicidade, data_status) %>%   
  mutate(data_status = substr(data_status, 1, 10),                                               
         instituicao = gsub("Prefeitura Municipal d[eo] (.*) - RJ", "\\1", instituicao)) %>%    
  select(cod_ibge, instituicao, periodo, data_status) %>% 
  pivot_wider(names_from = periodo, values_from = data_status) %>% 
  arrange(cod_ibge, instituicao)

head(entregas_rgf_2024) %>% kable()
cod_ibge instituicao 1 2 3
3300100 Angra dos Reis 2024-05-29 2024-09-26 2025-01-30
3300159 Aperibé 2024-07-22 2024-10-01 2025-02-07
3300209 Araruama 2024-06-18 2024-10-09 NA
3300225 Areal 2024-06-17 2024-12-09 NA
3300233 Armação dos Búzios 2024-06-20 2024-10-04 2025-02-06
3300258 Arraial do Cabo 2024-08-13 2024-10-08 2025-01-31

Da mesma forma que fizemos com a MSC, vamos colher o código IBGE dos entes que fizeram o encaminhamento do relatório de ao menos um quadrimestre. Essa informação nos será útil mais adiante.

rgf_entregas <- entregas_rgf_2024$cod_ibge

Para identificar os entes que não fizeram o encaminhamento do RGF, a ideia é a mesma utilizada para a MSC:

entregas_rgf_2024 <- cadastro_rj %>% 
  left_join(entregas_rgf_2024,  by=join_by(cod_ibge)) %>% 
  select(-instituicao)

Agora vamos identificar qual ente não encaminhou o RGF em nenhum dos três quadrimestres. Vamos incluir na base de dados uma coluna de sinalização chamada entregou_rgf, que terá o valor 1 caso o município tenha entregue e o valor 0 caso contrário.

entregas_rgf_2024 <- entregas_rgf_2024 %>% 
  mutate(entregou_rgf = if_else(cod_ibge %in% rgf_entregas, 1, 0))

Para identificar os municípios que não fizeram a entrega do demonstrativo basta aplicar um filtro:

entregas_rgf_2024 %>% 
  filter(entregou_rgf == 0) %>% 
  kable()
cnpj uf ente regime cod_ibge 1 2 3 entregou_rgf
28645794000160 RJ Cantagalo RPPS 3301108 NA NA NA 0
01609497000102 RJ Carapebus RPPS 3300936 NA NA NA 0
29128741000134 RJ Carmo RPPS 3301207 NA NA NA 0
30417158000122 RJ Italva RPPS 3302056 NA NA NA 0
28919637000103 RJ Laje do Muriaé RPPS 3302304 NA NA NA 0
28580694000100 RJ Mendes RPPS 3302809 NA NA NA 0
29114121000146 RJ Miracema RPPS 3303005 NA NA NA 0
28920304000196 RJ Natividade RPPS 3303104 NA NA NA 0
01612981000190 RJ Pinheiral RPPS 3303955 NA NA NA 0
29141322000132 RJ Piraí RPPS 3304003 NA NA NA 0
39560008000148 RJ Quatis RPPS 3304128 NA NA NA 0
31505027000160 RJ Quissamã RPPS 3304151 NA NA NA 0
32165706000108 RJ Sumidouro RPPS 3305703 NA NA NA 0
32412819000152 RJ Vassouras RPPS 3306206 NA NA NA 0

Encaminhamento do RREO

A identificação dos entes que fizeram o encaminhamento do RREO segue a mesma lógica já apresentada para o RGF.

Primeiro faz-se um filtro para selecionar os registros relativos ao RREO e mais algum tratamento de dados adicional. Depois obtém-se a relação dos códigos IBGE dos entes que fizeram a entrega do demonstrativo e inclui-se na base de dados os entes que não fizeram a entrega e, por fim, faz-se a marcação na base de dados de quem entregou e quem não entregou.

entregas_rreo_2024 <- rel_status_2024_rj %>%
  filter(entregavel == "Relatório Resumido de Execução Orçamentária",
         grepl("^Prefeitura", instituicao)) %>%                   
  select(exercicio, cod_ibge, instituicao, periodo, periodicidade, data_status) %>%   
  mutate(data_status = substr(data_status, 1, 10),                                               
         instituicao = gsub("Prefeitura Municipal d[eo] (.*) - RJ", "\\1", instituicao)) %>%    
  select(cod_ibge, instituicao, periodo, data_status) %>% 
  pivot_wider(names_from = periodo, values_from = data_status) %>% 
  arrange(cod_ibge, instituicao)

# Entes que entregaram o RREO
rreo_entregas <- entregas_rreo_2024$cod_ibge

# Incluir os entes que eventualmente não
# fizeram a entrega

entregas_rreo_2024 <- cadastro_rj %>% 
  left_join(entregas_rreo_2024,  by=join_by(cod_ibge)) %>% 
  select(-instituicao)

# Criar uma coluna para indicar quem entregou
# e quem não entregou o RREO

entregas_rreo_2024 <- entregas_rreo_2024 %>% 
  mutate(entregou_rreo = if_else(cod_ibge %in% rreo_entregas, 1, 0))

head(entregas_rreo_2024) %>% kable()
cnpj uf ente regime cod_ibge 1 2 3 4 5 6 entregou_rreo
29172467000109 RJ Angra dos Reis RPPS 3300100 2024-03-28 2024-05-29 2024-07-30 2024-09-26 2024-11-25 2025-01-30 1
36288900000123 RJ Aperibé RPPS 3300159 2024-07-22 2024-06-06 2024-08-21 2024-10-01 2024-12-04 2025-02-07 1
28531762000133 RJ Araruama RPPS 3300209 2024-06-03 2024-06-18 2024-08-13 2024-10-09 2024-11-26 NA 1
39554605000160 RJ Areal RPPS 3300225 2024-06-17 2024-06-17 2024-08-16 2024-12-09 2024-12-09 NA 1
01616171000102 RJ Armação dos Búzios RPPS 3300233 2024-06-20 2024-06-24 2024-07-31 2024-10-04 2024-12-04 2025-02-06 1
27792373000107 RJ Arraial do Cabo RPPS 3300258 2024-08-13 2024-08-19 2024-08-20 2024-10-10 2024-12-05 2025-02-07 1

É importante indicar a data em que foi feita a extração dos dados constante da base obtida com a função report_status(). No nosso exemplo, essa data é:

comment(rel_status_2024_rj)
[1] "Sat Feb 22 20:43:41 2025"

Extração de dados

No capítulo anterior vimos como elaborar um quadro com vistas a fazer o monitoramento do encaminhamento dos demonstrativos à STN. Nosso objetivo agora é exemplificar como fazer a extração de dados da MSC e de alguns anexos do RGF e do RREO, na esperança de que sirvam de guia para que os leitores consigam fazer a extração de quaisquer dados desejados.

MSC - Matriz de Saldos Contábeis

Para a extração de dados relacionados à matriz de saldos contábeis, o pacote {siconfir} disponibiliza três funções: msc_budget(), msc_control() e msc_equity() para a extração, respectivamente, de contas orçamentárias, contas de controle e contas patrimoniais (ativo, passivo, receitas e despesas).

Vamos ilustrar apenas a extração das contas patrimoniais e vamos aplicar um filtro na base de dados para obter apenas as contas contábeis relativas aos RPPS. Isso é feito pegando apenas os registros em que a variável poder_orgao é igual a 10132 que é o identificador dos RPPS municipais.

Vamos extrair dados apenas dos três primeiros meses de 2024 para que o precesso de extração não demore muito.

bp_2024_trim1 <- msc_equity(year = 2024,
                            month = 1:3,                               
                            cod = msc_entregas,     
                            matrix_type = "MSCC",
                            class = 1:4,
                            value = "ending_balance",
                            verbose = FALSE) %>%
                 filter(poder_orgao == "10132")

comment(bp_2024_trim1) <- date()
head(bp_2024_trim1) %>% kable()
tipo_matriz cod_ibge classe_conta conta_contabil poder_orgao financeiro_permanente ano_fonte_recursos fonte_recursos exercicio mes_referencia divida_consolidada data_referencia entrada_msc valor natureza_conta tipo_valor complemento_fonte
MSCC 3300100 1 111110602 10132 1 1 1500 2024 1 NA 2024-01-31T00:00:00Z 132 2419314.38 D ending_balance NA
MSCC 3300100 1 111110602 10132 1 1 1500 2024 1 NA 2024-01-31T00:00:00Z 136 10679015.36 C ending_balance 1001
MSCC 3300100 1 111110602 10132 1 1 1800 2024 1 NA 2024-01-31T00:00:00Z 139 30983.39 C ending_balance NA
MSCC 3300100 1 111110602 10132 1 1 1800 2024 1 NA 2024-01-31T00:00:00Z 143 6989911.98 D ending_balance 1111
MSCC 3300100 1 111110602 10132 1 1 1801 2024 1 NA 2024-01-31T00:00:00Z 147 1099675.95 D ending_balance NA
MSCC 3300100 1 111110603 10132 1 1 1500 2024 1 NA 2024-01-31T00:00:00Z 151 10035.49 C ending_balance 1001

O resultado é uma base de dados contendo diversas informações, dentre as quais, os códigos IBGE dos municípios, os códigos das contas contábeis, saldo das contas ao fim do mês e natureza do saldo, dentre outras informações.

Um tratamento preliminar desses dados pode consistir em incluir os nomes dos municípios, os nomes das contas e excluir colunas não necessárias.

Os nomes dos entes é fácil incluir:

bp_2024_trim1 <- bp_2024_trim1 %>% 
  left_join(cadastro_rj %>% select(cod_ibge, ente),
            by = join_by(cod_ibge)) %>% 
  relocate(ente, .after = cod_ibge)

Para incluir os nomes das contas, será necessário importar o PCASP de 2024 que está disponível no site da STN.

pcasp2024 <- read_excel("PCASP 2024 - PORTARIA STN Nº 856, DE 24 DE MAIO DE 2024.xlsx") %>% 
  select(conta = Conta,
         nome = Título...9,
         natureza_saldo = `Natureza de Saldo`,
         status = Status,
         pcasp_rpps = `PCASP RPPS`) %>% 
  mutate(conta = str_remove_all(conta, "[[:punct:]]"))
New names:
• `Título` -> `Título...4`
• `Título` -> `Título...9`

No processo de importação do PCASP selecionamos apenas algumas colunas que julgamos importantes para o nosso objetivo.

head(pcasp2024) %>% kable()
conta nome natureza_saldo status pcasp_rpps
100000000 ATIVO Devedora Ativa Sim
110000000 ATIVO CIRCULANTE Devedora Ativa Sim
111000000 CAIXA E EQUIVALENTES DE CAIXA Devedora Ativa Sim
111100000 CAIXA E EQUIVALENTES DE CAIXA EM MOEDA NACIONAL Devedora Ativa Sim
111110000 CAIXA E EQUIVALENTES DE CAIXA EM MOEDA NACIONAL - CONSOLIDAÇÃO Devedora Ativa Sim
111110100 CAIXA Devedora Ativa Não

Agora podemos colocar os nomes das contas na nossa base de dados da MSC:

bp_2024_trim1 <- bp_2024_trim1 %>% 
  left_join(pcasp2024, by=join_by(conta_contabil == conta))

Agora vamos mover algumas colunas e remover outras com o objetivo de ficarmos com uma base de dados mais fácil de trabalhar.

bp_2024_trim1 <- bp_2024_trim1 %>% 
  relocate(nome:pcasp_rpps, .after = conta_contabil) %>% 
  select(-tipo_matriz, -classe_conta, -exercicio, -divida_consolidada,
         -data_referencia, -entrada_msc, -tipo_valor)
head(bp_2024_trim1) %>% kable()
cod_ibge ente conta_contabil nome natureza_saldo status pcasp_rpps poder_orgao financeiro_permanente ano_fonte_recursos fonte_recursos mes_referencia valor natureza_conta complemento_fonte
3300100 Angra dos Reis 111110602 BANCOS CONTA MOVIMENTO - FUNDO EM REPARTIÇÃO Devedora Ativa Sim 10132 1 1 1500 1 2419314.38 D NA
3300100 Angra dos Reis 111110602 BANCOS CONTA MOVIMENTO - FUNDO EM REPARTIÇÃO Devedora Ativa Sim 10132 1 1 1500 1 10679015.36 C 1001
3300100 Angra dos Reis 111110602 BANCOS CONTA MOVIMENTO - FUNDO EM REPARTIÇÃO Devedora Ativa Sim 10132 1 1 1800 1 30983.39 C NA
3300100 Angra dos Reis 111110602 BANCOS CONTA MOVIMENTO - FUNDO EM REPARTIÇÃO Devedora Ativa Sim 10132 1 1 1800 1 6989911.98 D 1111
3300100 Angra dos Reis 111110602 BANCOS CONTA MOVIMENTO - FUNDO EM REPARTIÇÃO Devedora Ativa Sim 10132 1 1 1801 1 1099675.95 D NA
3300100 Angra dos Reis 111110603 BANCOS CONTA MOVIMENTO - FUNDO EM CAPITALIZAÇÃO Devedora Ativa Sim 10132 1 1 1500 1 10035.49 C 1001

Dada a grande quantidade de análises que podem ser feitas a partir dessa base de dados, vamos elaborar um tutorial inteiramente dedicado à análise da MSC à luz dos dados previdenciários.

RREO - Relatório Resumido da Execução Orçamentária

Nesta seção vamos fazer a extração de alguns dados contidos em anexos do RREO que sejam de interesse para a área de previdência do servidor público.

Anexos conforme a 14a edição do MDF. Versão de 5/12/2024 - V4

Os anexos do RREO são os elencados a seguir:

  • Anexo 1 - Balanço Orçamentário
  • Anexo 2 - Demonstrativo da Execução das Despesas por Função/Subfunção
  • Anexo 3 - Demonstrativo da Receita Corrente Líquida
  • Anexo 4 - Demonstrativo das Receitas e Despesas Previdenciárias
  • Anexo 6 - Demonstrativo dos Resultados Primário e Nominal
  • Anexo 7 - Demonstrativo dos Restos a Pagar por Poder e Órgão
  • Aenxo 8 - Demonstrativo das Receitas e Despesas com Manutenção e Desenvolvimento do Ensino - MDE
  • Anexo 9 - Demonstrativo das Receitas de Operações de Crédito e Despesas de Capital
  • Anexo 10 - Demonstrativo da Projeção Atuarial do Regime de Previdência
  • Anexo 11 - Demonstrativo da Receita de Alienação de Ativos e Aplicação dos Recursos
  • Anexo 12 - Demonstrativo das Receitas e Despesas com Ações e Serviços Públicos de Saúde
  • Anexo 13 - Demonstrativo das Parcerias Público-Privadas
  • Anexo 14 - Demonstrativo Simplificado do Relatório Resumido da Execução Orçamentária

De interesse imediato para a análise dos RPPS é o Anexo 4. O Anexo 3 também tem informação útil para a área de previdência. A seguir ilustramos como extrair dados dos anexos 3 e 4.

Anexo 3 - Receita Corrente Líquida

A receita corrente líquida é uma variável fundamental para avaliar a condição fiscal dos entes federativos, visto que figura como quociente em diversos indicadores fiscais e, também, assume bastante relevância quando se trata de avaliar a capacidade do município em cumprir com o plano de custeio de seu RPPS, em especial dos planos de amortização de deficits atuariais.

Para a extração de dados do RREO utiliza-se a função get_budget() conforme ilustramos a seguir para fazer a extração de dados do anexo 3, para os bimestres 1 a 6 do ano de 2024 para os municípios vinculados ao RPPS e que encaminharam o demonstrativo à STN.

rreo_2024_anx_3 <- get_budget(year = 2024,
                              period = 1:6,
                              cod = rreo_entregas,  
                              annex = "03")

comment(rreo_2024_anx_3) <- date()

Além da RCL, esse demonstrativo traz também como elementos de intesse para a análise dos RPPS as receitas provenientes de Aplicações de Recursos Previdenciários e a Compensação Financeira entre Regimes de Previdência.

A figura a seguir ilustra as rubricas do demonstrativo nas quais estamos interessados.

A extração dos dados:

rcl_1 <- "RREO3ReceitaCorrenteLiquida"
rcl_2 <- "RREO3ReceitaCorrenteLiquidaAjustadaParaCalculoDosLimitesDeEndividamento"
rcl_3 <- "RREO3ReceitaCorrenteLiquidaAjustadaParaCalculoDosLimitesDaDespesaComPessoal"

rreo_rcl <- rreo_2024_anx_3 %>% 
  filter(coluna == "TOTAL (ÚLTIMOS 12 MESES)",
         cod_conta %in% c(rcl_1, rcl_2, rcl_3)) %>% 
  select(cod_ibge, instituicao, exercicio, periodo, periodicidade,
         coluna, conta, cod_conta, valor) %>% 
  mutate(competencia = str_c(periodicidade, periodo)) %>% 
  select(-coluna, -conta, -periodicidade, -periodo) %>%
  pivot_wider(id_cols = c(cod_ibge, instituicao, exercicio, cod_conta),
              names_from = competencia,
              values_from = valor) %>% 
  mutate(cod_conta = case_when(cod_conta == rcl_1 ~ "RCL",
                               cod_conta == rcl_2 ~ "RCL II",
                               cod_conta == rcl_3 ~ "RCL III",
                               .default = ""))
head(rreo_rcl) %>% kable() 
cod_ibge instituicao exercicio cod_conta B1 B2 B3 B4 B5 B6
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 RCL 2032666093 2218326830 2051539144 2081670660 2031469373 2079870416
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 RCL II 2032666093 2218326830 2051539144 2081670660 2031469373 2079870416
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 RCL III 2032666093 2218326830 2051539144 2081670660 2031469373 2079870416
3300159 Prefeitura Municipal de Aperibé - RJ 2024 RCL 72760336 89066287 90539681 96338386 94163175 94802416
3300159 Prefeitura Municipal de Aperibé - RJ 2024 RCL II 72760336 89066287 90539681 96338386 94163175 94802416
3300159 Prefeitura Municipal de Aperibé - RJ 2024 RCL III 72760336 89066287 90539681 96338386 94163175 94802416

Anexo 4 - Receitas e Despesas Previdenciárias

O Anexo 4 do RREO é inteiramente dedicado às receitas e despesas previdenciárias e é composto por quatro tabelas:

  • FUNDO EM CAPITALIZAÇÃO (PLANO PREVIDENCIÁRIO)
  • FUNDO EM REPARTIÇÃO (PLANO FINANCEIRO)
  • ADMINISTRAÇÃO DO REGIME PRÓPRIO DE PREVIDÊNCIA DOS SERVIDORES - RPPS
  • BENEFÍCIOS PREVIDENCIÁRIOS MANTIDOS PELO TESOURO

Como já mencionado, para fazer a extração dos dados dos anexos do RREO utiliza-se a função get_budget() conforme mostramos a seguir:

rreo_2024_anx_4 <- get_budget(year = 2024,
                              period = 1:6,
                              cod = rreo_entregas,  
                              annex = "04")

comment(rreo_2024_anx_4) <- date()

Os dados obtidos contemplam todas as 4 tabelas acima mencionadas. Extraídos os dados do anexo, podemos fazer a extração das rubricas desejadas em cada uma das tabelas que constituem o anexo 4. A seguir vamos ilustrar como extrair os dados relativos às transferências para amortização do deficit atuarial.

Transferências para amortização de deficit atuarial

Dentre as diversas informações de interesse contidas nos quadros do Anexo 4 do RREO, ilustraremos como realizar a extração dos valores transferidos ao RPPS para a amortização do deficit atuarial que, como se sabe, pode ocorrer na forma de alíquotas de contribuição suplementares ou por aportes financeiros periódicos.

Essa informação consta apenas da tabela relativa ao fundo em capitalização visto que não faz sentido nas demais tabelas.

A figura abaixo mostra as rubricas de interesse no demonstrativo.

A extração dos valores dessas rubricas da base de dados do anexo 4 do RREO (rreo_2024_anx_4) é feita a seguir:

aportes   <- "AportesParaAPrevidenciaPlanoPrevidenciarioAportePeriodicoDeValoresPredefinidos"
aliquotas <- "AportesParaAPrevidenciaPlanoPrevidenciarioContribuicaoPatronalSuplementar"

rreo_2024_anx_4_plano_amort<- rreo_2024_anx_4 %>% 
  filter(coluna == "APORTES REALIZADOS",
         cod_conta %in% c(aportes, aliquotas)) %>% 
  select(cod_ibge, instituicao, exercicio, periodo, periodicidade,
         coluna, conta, cod_conta, valor) %>% 
  mutate(competencia = str_c(periodicidade, periodo),
         tipo = if_else(cod_conta == aportes, "aportes_periodicos", "aliquota_suplementar")) %>% 
  select(-coluna, -conta, -periodicidade, -periodo) %>% 
  pivot_wider(id_cols = c(cod_ibge, instituicao, exercicio, tipo),
              names_from = competencia,
              values_from = valor) 

head(rreo_2024_anx_4_plano_amort) %>% kable()
cod_ibge instituicao exercicio tipo B1 B2 B4 B5 B6 B3
3300506 Prefeitura Municipal de Bom Jardim - RJ 2024 aportes_periodicos 1097606.60 3314273.78 7799429.25 10057711 NA NA
3300951 Prefeitura Municipal de Comendador Levy Gasparian - RJ 2024 aportes_periodicos NA NA NA NA 2800666.56 NA
3301157 Prefeitura Municipal de Cardoso Moreira - RJ 2024 aliquota_suplementar 687754.37 1134090.01 NA NA NA 1854578.69
3301306 Prefeitura Municipal de Casimiro de Abreu - RJ 2024 aliquota_suplementar 23477.28 23477.28 23477.28 NA 23477.28 3596.78
3301306 Prefeitura Municipal de Casimiro de Abreu - RJ 2024 aportes_periodicos 18973.43 1129390.50 2239807.57 11104171 6681475.88 3374395.51
3301405 Prefeitura Municipal de Conceição de Macabu - RJ 2024 aportes_periodicos 363213.42 1452853.68 4145380.89 4444551 NA NA

Agora vamos juntar à base de dados os entes que eventualmente não fizeram o encaminhamento do RREO ou que, os tendo encaminhado, não informaram os valores transferidos.

rreo_2024_anx_4_plano_amort <- cadastro_rj %>% 
  left_join(rreo_2024_anx_4_plano_amort, by=join_by(cod_ibge)) %>% 
  select(-instituicao)

Agora vamos identificar quem fez a entrega do RREO.

rreo_2024_anx_4_plano_amort <- rreo_2024_anx_4_plano_amort %>% 
  mutate(entregou_rreo = if_else(cod_ibge %in% rreo_entregas, 1, 0))

A análise dos dados indica que diversos entes que fizeram o encaminhamento do RREO não indicaram os valores pagos a título de amortização do deficit atuarial.

Em princípio se o ente possui RPPS com déficit atuarial e possui lei instituindo plano de amortização deveria repassar os valores e indicar o montante repassado no demonstrativo.

Conforme os dados colhidos, o município de Casimiro de Abreu informou ter feito aportes para amortização do déficit atuarial tanto por alíquota suplementar como por aportes periódicos, o que não é uma prática comum.

O ente deve optar por uma forma ou outra, conforme definido no relatório de avaliação atuarial e na lei de implantação do plano de amortização.

rreo_2024_anx_4_plano_amort %>% 
  filter(ente == "Casimiro de Abreu") %>% 
  select(ente, tipo, starts_with("B")) %>% 
  kable()
ente tipo B1 B2 B4 B5 B6 B3
Casimiro de Abreu aliquota_suplementar 23477.28 23477.28 23477.28 NA 23477.28 3596.78
Casimiro de Abreu aportes_periodicos 18973.43 1129390.50 2239807.57 11104171 6681475.88 3374395.51

RGF - Relatório de Gestão Fiscal

Assim como os anexos do RREO, também os anexos do RGF fornecem informações importantes para a análise da situação previdenciária do município.

Para a extração dos dados dos anexos do RGF existe a função get_fiscal().

O RGF possui os seguintes anexos:

  • Anexo 1 - Demonstrativo da Despesa com Pessoal
  • Anexo 2 - Demonstrativo da Dívida Consolidada Líquida - DCL
  • Anexo 3 - Demonstrativo das Garantias e Contragarantias de Valores
  • Anexo 4 - Demonstrativo das Operações de Crédito
  • Anexo 5 - Demonstrativo da Disponibilidade de Caixa e dos Restos a Pagar
  • Anexo 6 - Demonstrativo Simplificado do Relatório de Gestão Fiscal

Para efeito deste tutorial vamos ilustrar como extrair os dados do Anexo 2 que nos fornece informações sobre a Dívida Consolidada Líquida, sendo certo que é possível obter dados de quaisquer outros anexos do RGF.

Anexo 2 - Demonstrativo da Dívida Consolidada Líquida - DCL

Para selecionar os dados do Anexo 2 que nos dá informações sobre a dívida consolidada líquida do ente, vamos usar, como já mencionado, a função get_fiscal() conforme ilustrado a seguir para obter dados do 3o quadrimestre de 2024:

rgf_2024_anx_2 <- get_fiscal(year = 2024,
                             period = 3, 
                             cod = rgf_entregas,  
                             annex = 2) 

comment(rgf_2024_anx_2) <- date()
head(rgf_2024_anx_2) %>% kable()
exercicio periodo periodicidade instituicao cod_ibge uf co_poder populacao anexo esfera rotulo coluna cod_conta conta valor
2024 3 Q Prefeitura Municipal de Angra dos Reis - RJ 3300100 RJ E 181228 RGF-Anexo 02 M Padrão SALDO DO EXERCÍCIO ANTERIOR DividaConsolidada DÍVIDA CONSOLIDADA - DC (I) 136868755
2024 3 Q Prefeitura Municipal de Angra dos Reis - RJ 3300100 RJ E 181228 RGF-Anexo 02 M Padrão Até o 1º Quadrimestre DividaConsolidada DÍVIDA CONSOLIDADA - DC (I) 133676257
2024 3 Q Prefeitura Municipal de Angra dos Reis - RJ 3300100 RJ E 181228 RGF-Anexo 02 M Padrão Até o 2º Quadrimestre DividaConsolidada DÍVIDA CONSOLIDADA - DC (I) 130463718
2024 3 Q Prefeitura Municipal de Angra dos Reis - RJ 3300100 RJ E 181228 RGF-Anexo 02 M Padrão Até o 3º Quadrimestre DividaConsolidada DÍVIDA CONSOLIDADA - DC (I) 148009774
2024 3 Q Prefeitura Municipal de Angra dos Reis - RJ 3300100 RJ E 181228 RGF-Anexo 02 M Padrão SALDO DO EXERCÍCIO ANTERIOR DividaContratual Dívida Contratual 134068672
2024 3 Q Prefeitura Municipal de Angra dos Reis - RJ 3300100 RJ E 181228 RGF-Anexo 02 M Padrão Até o 1º Quadrimestre DividaContratual Dívida Contratual 130876173

Uma fez feita a extração dos dados do demonstrativo, podemos colher os dados das rubricas de interesse no anexo. Para isso é necessário um rápido estudo do demonstrativo para que tenhamos mais clareza de como selecionar os dados desejados dentre os diversos que constam no demonstrativo.

Dentre os dados constantes do Anexo 2 do RGF, podemos estar interessados, por exemplo, no valor do passivo atuarial e/ou no valor das dívidas previdenciárias.

Vamos ilustrar como extrair do Anexo 2 os valores dessas duas rubricas.

Dívidas Previdenciárias

A dívida previdenciária do ente tanto com o RGPS como com o RPPS devem ser evidenciadas no Anexo 2 do RGF.

Essa evidenciação é importante porque a parcela dessa dívida relacionada ao RPPS municipal somente poderá ser considerada como ativo garantidor no RPPS se devidamente reconhecida no ente e contabilmente evidenciada. Se não houver essa evidenciação, as dívidas previdenciárias do ente federativo para com o seu RPPS confessadas nos termos de parcelamento de débito não devem constar como ativos garantidores nas avaliações atuariais dos RPPS conforme disposto na Portaria 1467/2022.

A figura abaixo mostra parte do demonstrativo evidenciando a rubrica cujos valores desejamos extrair.

O tratamento dos dados será feito a seguir, iniciando com a filtragem dos valores de interesse:

parcel_debitos <- "RGF2ParcelamentoERenegociacaoDeDividasDeContribuicoesSociaisPrevidenciarias"

rgf_2024_divida_prev <- rgf_2024_anx_2 %>% 
  filter(cod_conta == parcel_debitos) %>% 
  select(cod_ibge, instituicao, exercicio, periodo, periodicidade, coluna, valor)


head(rgf_2024_divida_prev) %>% kable()
cod_ibge instituicao exercicio periodo periodicidade coluna valor
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 3 Q SALDO DO EXERCÍCIO ANTERIOR 127915650
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 3 Q Até o 1º Quadrimestre 125223580
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 3 Q Até o 2º Quadrimestre 122517442
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 3 Q Até o 3º Quadrimestre 140829197
3300159 Prefeitura Municipal de Aperibé - RJ 2024 3 Q SALDO DO EXERCÍCIO ANTERIOR 13549183
3300159 Prefeitura Municipal de Aperibé - RJ 2024 3 Q Até o 1º Quadrimestre 13088595

Feita a filtragem dos dados, podemos colocá-los em um formato mais adequado.

rgf_2024_divida_prev <- rgf_2024_divida_prev %>% 
  pivot_wider(id_cols=cod_ibge:periodicidade,
              names_from = coluna,
              values_from = valor)

head(rgf_2024_divida_prev) %>% kable()
cod_ibge instituicao exercicio periodo periodicidade SALDO DO EXERCÍCIO ANTERIOR Até o 1º Quadrimestre Até o 2º Quadrimestre Até o 3º Quadrimestre
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 3 Q 127915650 125223580 122517442 140829197
3300159 Prefeitura Municipal de Aperibé - RJ 2024 3 Q 13549183 13088595 12477338 11869759
3300233 Prefeitura Municipal de Armação dos Búzios - RJ 2024 3 Q 45552571 41802194 37969813 36332491
3300258 Prefeitura Municipal de Arraial do Cabo - RJ 2024 3 Q 121961643 139434255 140329511 138681600
3300803 Prefeitura Municipal de Cachoeiras de Macacu - RJ 2024 3 Q 22948821 22948821 13823367 22948821
3300951 Prefeitura Municipal de Comendador Levy Gasparian - RJ 2024 3 Q 15663919 1228720 15471784 15436489

Agora vamos juntar à base de dados os demais entes federativos que possuem RPPS:

rgf_2024_divida_prev <- cadastro_rj %>% 
  left_join(rgf_2024_divida_prev, by=join_by(cod_ibge)) %>% 
  select(-instituicao) 

Como feito nos exemplos precedentes, vamos marcar na base de dados quem encaminhou o RGF e quem não encaminhou.

rgf_2024_divida_prev <- rgf_2024_divida_prev %>% 
  mutate(entregou_rgf = if_else(cod_ibge %in% rgf_entregas, 1, 0))

Examinando atentamente os dados obtidos, podemos observar que alguns entes, embora tenham feito a entrega do RGF, não apresentaram informações em relação à existência de dívidas previdenciárias.

rgf_2024_divida_prev %>% 
  filter(entregou_rgf == 1, is.na(exercicio)) %>% 
  head() %>%
  kable()
cnpj uf ente regime cod_ibge exercicio periodo periodicidade SALDO DO EXERCÍCIO ANTERIOR Até o 1º Quadrimestre Até o 2º Quadrimestre Até o 3º Quadrimestre entregou_rgf
28531762000133 RJ Araruama RPPS 3300209 NA NA NA NA NA NA NA 1
39554605000160 RJ Areal RPPS 3300225 NA NA NA NA NA NA NA 1
28576080000147 RJ Barra do Piraí RPPS 3300308 NA NA NA NA NA NA NA 1
28695658000184 RJ Barra Mansa RPPS 3300407 NA NA NA NA NA NA NA 1
39485438000142 RJ Belford Roxo RPPS 3300456 NA NA NA NA NA NA NA 1
28561041000176 RJ Bom Jardim RPPS 3300506 NA NA NA NA NA NA NA 1

A verificação quanto a existência de dívida previdenciária do município com o seu RPPS pode ser feita consultando o módulo “PARCELAMENTOS” no painel disponibilizado nesse link: https://marcosfs2006.shinyapps.io/painel_draa/.

Lembrando que se o ente não faz a evidenciação contábil de sua dívida com o RPPS, os valores dos termos de parcelamento de débito não devem ser considerados como ativo garantidor do RPPS conforme determina o Art. 51, II, ‘a’ da Portaria 1467/2022.

Passivo Atuarial

O passivo atuarial é a expressão monetária da dívida estimada do ente federativo relacionada ao pagamento de benefícios previdenciários. É uma das rubricas mais expressivas do balanço patrimonial do ente.

A figura a seguir ilustra a rubrica relativa ao valor do passivo atuarial do ente, evidenciado no Anexo 2 do RGF.

A extração de dados relativos ao passivo atuarial vai seguir a mesma lógica já apresentada:

rgf_2024_passivo_atuarial <- rgf_2024_anx_2 %>% 
  filter(cod_conta == "RGF2DividaConsolidadaPrevidenciariaPassivoAtuarial") %>% 
  select(cod_ibge, instituicao, exercicio, periodo, periodicidade, coluna, valor) %>% 
  pivot_wider(id_cols=cod_ibge:periodicidade,
              names_from = coluna,
              values_from = valor)

head(rgf_2024_passivo_atuarial) %>% kable()
cod_ibge instituicao exercicio periodo periodicidade SALDO DO EXERCÍCIO ANTERIOR Até o 1º Quadrimestre Até o 2º Quadrimestre Até o 3º Quadrimestre
3300100 Prefeitura Municipal de Angra dos Reis - RJ 2024 3 Q 3214719559 3214719559 3214719559 3214719559
3300159 Prefeitura Municipal de Aperibé - RJ 2024 3 Q 278604762 278604762 278604762 288111805
3300233 Prefeitura Municipal de Armação dos Búzios - RJ 2024 3 Q 185575839 185575839 NA 944953478
3300258 Prefeitura Municipal de Arraial do Cabo - RJ 2024 3 Q 860703883 860703883 860703883 NA
3300803 Prefeitura Municipal de Cachoeiras de Macacu - RJ 2024 3 Q 1197481744 1197481744 1197481744 990803041
3300951 Prefeitura Municipal de Comendador Levy Gasparian - RJ 2024 3 Q 120675082 120675082 120675082 162926504

Inclusão dos demais entes.

rgf_2024_passivo_atuarial <- cadastro_rj %>% 
  left_join(rgf_2024_passivo_atuarial, by=join_by(cod_ibge)) %>% 
  select(-instituicao) 

Identificação de quem encaminhou o RGF do terceiro quadrimestre de 2024:

rgf_2024_passivo_atuarial <- rgf_2024_passivo_atuarial %>% 
  mutate(entregou_rgf = if_else(cod_ibge %in% rgf_entregas, 1, 0))

Também aqui, vários entes que entregaram o RGF aparentemente não informaram o valor do passivo atuarial.

rgf_2024_passivo_atuarial %>% 
  filter(entregou_rgf == 1, is.na(exercicio)) %>% 
  head() %>% 
  kable()
cnpj uf ente regime cod_ibge exercicio periodo periodicidade SALDO DO EXERCÍCIO ANTERIOR Até o 1º Quadrimestre Até o 2º Quadrimestre Até o 3º Quadrimestre entregou_rgf
28531762000133 RJ Araruama RPPS 3300209 NA NA NA NA NA NA NA 1
39554605000160 RJ Areal RPPS 3300225 NA NA NA NA NA NA NA 1
28576080000147 RJ Barra do Piraí RPPS 3300308 NA NA NA NA NA NA NA 1
28695658000184 RJ Barra Mansa RPPS 3300407 NA NA NA NA NA NA NA 1
39485438000142 RJ Belford Roxo RPPS 3300456 NA NA NA NA NA NA NA 1
28561041000176 RJ Bom Jardim RPPS 3300506 NA NA NA NA NA NA NA 1

Esperamos com esse pequeno tutorial ter fornecido alguns insights para que o usuário possa fazer suas próprias extrações de dados de qualquer demonstrativo que tenha interesse.

Até a próxima!