Erro ao Gerar Relatório de Alunos por Turma (StudentsPerClass.php)


Para verem de forma mais detalhista abri uma Issues no git:

Ao Gerar um relatório de Aluno por Turma com o ano 2022, ele retorna o seguinte erro:
2022-02-07 15:38:17.218 UTC [24490] ieducar@ieducar ERROR: syntax error at or near “)” at character 195
2022-02-07 15:38:17.218 UTC [24490] ieducar@ieducar STATEMENT: INSERT INTO modules.nota_componente_curricular (id, nota_aluno_id, componente_curricular_id, nota, nota_arredondada, nota_recuperacao, nota_recuperacao_especifica, nota_original, etapa) VALUES () RETURNING id
Este log é capturado do log do postgres…
Para gerar o erro , Ir no menu Escola > Relatórios > Matrículas > Relatório de Alunos por Turma, Gerar algum relatório com o ano 2022. Quem puder me dar uma ajuda

@moliveirasoares poderia me dar uma força?

Olá @lucasmainst, tudo bem?

Erro erro apresentado no log do Postgres me parece não ter relação direta com a exibição do relatório em branco, me parece ser dois cenários.

Diria que no 1° cenário, ao tentar consultar o ano de 2022 você deve ter algum cadastro faltando, por exemplo, além de abrir o ano letivo, é necessário vincular os componentes curriculares para o determinado ano, como também séries e se não me engano alguma coisa relacionado a regra de avaliação.

Falo isso do primeiro cenário pois é possível consultar o ano de 2021!

Para o 2°cenário, o erro apresentado no log do postgres ocorre para dados de 2021 e 2022 e está relacionado a inserção de dados, coisa que o relatório não faz, logo, venho a pensar que por algum motivo “regra de negócio” existente para a função copia_notas_transf se faz necessário a validação do tipo da nota vinculada a regra de avaliação IF (v_tipo_nota >0) THEN se for atendida determinada condição, o i-Educar fará a inserção de dados em nota_aluno e nota_componente_curricular ocasionando o erro mencionado no log do postgres

Conclusão, para o seu problema, eu recomendaria revalidar todos as relações de cadastros para o ano de 2022!

2 curtidas

Iremos analisar, @moliveirasoares de verdade eu te agradeço pela atenciosidade gratidão por todo auxílio Marcos

2 curtidas

Por nada!
Avalia e me da um retorno, se for o caso de não ser isso, posso avaliar novamente porém com informações mais precisas no qual irei solicitar.

1 curtida

@moliveirasoares Muito obrigada marcos, a gente avaliou e viu que está funcionando a geração dos relatórios no sistema porém o comportamento que está estranho. Olha só. Gerando relatórios no sistema como um todo ( os outros ) ele gera em menos de 2 segundos e apresenta em tela, e vendo a tela de log de uso de CPU , a gente vê que o Postgres abre um processo para executar e quando termina o processo ele finaliza em 2 segundos.

Porém ao gerar especificamente o [ Relatório de alunos por turma ] , o nosso log apresenta que o processo de geração deste relatório demora MUITO TEMPO, e vemos que o processo fica usando 100% da CPU
Segue a imagem abaixo com 19 minutos e 20 segundos:

Acreditamos que seja a querie que se encontra em:

ieducar/ieducar/modules/Reports/Reports/StudentsPerClassReport.php