$numRegistrosLocalizadores++; $numTotalLocalizadores++; } if ($numRegistrosLocalizadores > 0) { agora("Salvados {$numRegistrosLocalizadores} localizadores para a ação {$identificadorUnicoAcao}."); } else { agora("Sem localizadores para a ação {$identificadorUnicoAcao}."); } } } while (!$localizadores['sucesso']); } agora("Salvados no total {$numTotalLocalizadores} localizadores."); } if ($baixar['planos']) { agora("Carregando ações obtidos na base SIOP."); $acoesSiop = obterDadosSiop('acoes', "exercicio = {$exercicio}", array('"identificadorUnico"', '"codigoAcao"')); agora("Obtendo planos orçamentários."); limparDadosSiop('planos_orcamentarios', "exercicio = '{$exercicio}'", "Limpando base de dados dos planos orçamentários para o ano de {$exercicio}."); $numTotalRegistrosPlanos = 0; foreach ($acoesSiop as $acaoSiop) { $identificadorUnicoAcao = $acaoSiop['IDENTIFICADORUNICO']; do { $planosOrcamentarios = obterPlanosOrcamentariosPorAcao($exercicio, $identificadorUnicoAcao); if (!$planosOrcamentarios['sucesso']) { agora("\tNão foi possível obter os dados dos planos orçamentários para a ação {$identificadorUnicoAcao}:"); echo "\n"; echo str_replace("<br>", "\n", $planosOrcamentarios['mensagensErro']); echo "\n"; } else { $numRegistrosPlanos = 0; foreach ($planosOrcamentarios['registros'] as $planoOrcamentario) {
<?php include_once dirname(__FILE__) . '/include.soap.php'; agora("=================================================================="); agora("Quantitativo"); agora("=================================================================="); /** * =================================================================================== * Obtendo a base de dados de programas para o ano de exercício repassado * */ agora("Carregando programas obtidos na base SIOP."); $relacaoProgramas = obterDadosSiop('programas', "exercicio = {$exercicio}", array('"codigoPrograma"', '"codigoOrgao"')); /* * Filtrando resultados para testes no ambiente de desenvolvimento */ if (CF_APP_ENVIRONMENT == 'dsv') { // Utilizado para quando é necessário fazer a atualização de apenas alguns programas específicos para teste, // não necessitando fazer uma carga completa // Caso o array esteja vazio é utilizada a carga completa $programasFiltrados = array(); $relacaoProgramas = count($programasFiltrados) == 0 ? $relacaoProgramas : filtrarProgramasPorCodigo($relacaoProgramas, $programasFiltrados); } $dados = array('exercicio' => $exercicio, 'programas' => $relacaoProgramas); obterExecucoesOrcamentarias('obterExecucaoOrcamentariaAgrupadoPorAcao', 'ação', 'exec_orcam_acao', $dados); obterExecucoesOrcamentarias('obterExecucaoOrcamentariaAgrupadoPorLocalizador', 'localizador', 'exec_orcam_localizador', $dados); obterExecucoesOrcamentarias('obterExecucaoOrcamentariaAgrupadoPorPlanoOrcamentario', 'plano orçamentário', 'exec_orcam_plano_orcam', $dados); /** * ====================================================================================================== * Obtendo a base de dados de execuções orçamentária *