Metodologia
Como os dados chegam até você
Do PDF publicado pela prefeitura até o número na tela: cada etapa é automatizada, verificada e auditável. Nenhum dado é editado manualmente.
Pipeline de dados
Download dos PDFs
Os relatórios quadrimestrais de saúde (LRF) e bimestrais do RREO são baixados automaticamente do portal de transparência da Prefeitura de Sorocaba.
fazenda.sorocaba.sp.gov.br/transparencia
Extração de texto
Um script Python com pdfplumber lê os PDFs e localiza as tabelas de despesas. Para PDFs em formato de imagem (sem texto selecionável), há fallback automático para PyMuPDF.
scripts/extrator_saude.py · extrator_rreo_sus.py · extrator_educacao.py
Conversão para CSV
Os dados extraídos são normalizados (acentos removidos, valores numéricos convertidos do formato BR) e salvos em arquivos CSV estruturados por área e ano.
frontend/data/saude/saida/*.csv · frontend/data/educacao/saida/*.csv
Verificação de integridade
Um script de testes confere se os totais batem, se todos os quadrimestres estão presentes e se nenhum valor essencial está zerado.
scripts/testes/verificar_dados.py
Exibição no site
O Next.js lê os CSVs diretamente no servidor e renderiza as páginas. Nenhum banco de dados intermediário — os arquivos CSV são a fonte de verdade.
frontend/lib/data.ts
Definições dos termos
Dotação atualizada
Orçamento autorizado para o período, já incluindo todas as suplementações e reduções aprovadas ao longo do ano. É o teto legal de gasto.
Empenhada
Valor comprometido por contrato ou nota de empenho. Significa que a prefeitura se obrigou juridicamente a pagar, mas o serviço ainda pode não ter sido entregue.
Liquidada
Serviço entregue e verificado pela prefeitura. É o estágio que melhor representa o gasto real: o fornecedor entregou, a administração conferiu.
Paga
Valor efetivamente transferido ao fornecedor. Pode ser menor que o liquidado no período por conta de prazos de pagamento.
ASPS
Ações e Serviços Públicos de Saúde — despesas custeadas pelo próprio município que contam para o mínimo constitucional de 15% (LC 141/2012). Incluem atenção básica, hospitalar, vigilância e suporte terapêutico.
Recursos SUS
Despesas financiadas por transferências federais e estaduais do SUS (PAB, MAC, FAEC e outros blocos). Executadas pela mesma secretaria, mas não contam para o mínimo de 15%.
RREO Anexo 12
Relatório Resumido da Execução Orçamentária, publicado bimestralmente. O Anexo 12 (LC 141/2012) mostra o gasto total em saúde separado em ASPS e SUS, e demonstra o cumprimento do mínimo constitucional.
Execução orçamentária
Relação entre o valor liquidado e a dotação atualizada. Indica quanto do orçamento previsto foi efetivamente executado no período.
Fontes oficiais
Relatórios de Aplicação da LRF
Publicados quadrimestralmente pela Prefeitura de Sorocaba. Contêm as despesas por função de saúde (ASPS) e a demonstração do cumprimento do mínimo constitucional.
fazenda.sorocaba.sp.gov.br/transparenciaRREO — Relatório Resumido da Execução Orçamentária
Publicado bimestralmente. O Anexo 12 discrimina os gastos em saúde entre ASPS e recursos SUS, com previsão e arrecadação das transferências.
siconfi.tesouro.gov.brSIOPS — Sistema de Informações sobre Orçamentos Públicos em Saúde
Sistema federal do Ministério da Saúde que consolida os dados declarados pelos municípios. Usado como referência de validação cruzada.
siops.datasus.gov.brLimitações declaradas
Cobertura atual: apenas Sorocaba/SP. A expansão para outros municípios está em planejamento.
Cobertura educação: 2020–2025. Anos 2020–2023 obtidos via URL legada do portal; 2023 T3 não possui dotação atualizada (limitação do formato do PDF original).
O pipeline extrai dados dos PDFs oficiais. Erros de digitação nos PDFs originais são refletidos nos CSVs.
Os valores são acumulados por quadrimestre (Jan–Abr, Jan–Ago, Jan–Dez), não incrementais. O 3º quad representa o total anual.
Outras subfunções de saúde (saúde do trabalhador, saúde mental) são agrupadas como 'Outras subfunções' no RREO, sem detalhamento.
Saúde indireta (benefícios e previdência de servidores da saúde) não é incluída nas despesas ASPS.