Skip to main content

MAPEAMENTO DO PROBLEMA DE NÃO EXPORTAÇÃO DO MOTIVO DO CANCELAMENTO PARA VERBAS EVENTUAIS

MAPEAMENTO DO PROBLEMA DE NÃO EXPORTAÇÃO DO MOTIVO DO CANCELAMENTO PARA VERBAS EVENTUAIS


SETICRO - GOVERNA


O arquivo de exportação não está enviando conteúdo para o campo que indica o motivo do cancelamento.




Este documento apresenta o laudo de situação para tomada de decisão necessária a retificação do problema.



Método exportarArquivoRetorno da Classe AnaliseCriticaDetalheBO.java

O método exportarArquivoRetorno é responsável pela geração do Arquivo de Exportação.




Pontos importantes:

             A Lógica de todos os método é baseada no ID da Averbação;

             Em nenhum dos métodos acima é chamado o método que colhe da base de dados o motivo do cancelamento (buscarAnaliseCriticaDetalhe).


Método buscarAnaliseCriticaDetalhe


Esse método busca à partir do Mes de Referencia e do Id da Averbação detalhes da Análise Crítica, entre elas o Motivo de Cancelamento, e retorna um Objeto AnaliseCriticaVisao.

Existem 2 problemas relacionados a esse método:

             O Método não é chamado por nenhum outro método (ou seja ele não é executado);

             A Query que pega dados da base filtra dados pelo Id da Averbação e filtra registros com Id de Verba Eventual nula!


    @Query("SELECT DISTINCT new br.com.governa.rh.comum.entidade.visao.AnaliseCriticaVisao("
            + "  analise.id"
            + " ,analise.motivoCancelamento.id"
            + " ,analise.motivoCancelamento.descricao"
            + " ,analise.motivoCancelamento.codigo"
            + " ,analise.valor"
            + " ,analise.status)"
            + " FROM AnaliseCriticaDetalhe analise WHERE analise.averbacao.id = :averbacaoId "
            + " AND analise.mesReferencia = :mesReferencia "
            + " AND analise.verbaEventual.id is null")
    List<AnaliseCriticaVisao> findByAverbacaoIdAndMesReferenciaVisao(@Param("averbacaoId") Long averbacaoId,
            @Param("mesReferencia") Integer mesReferencia);


Essa Query retorna sempre motivo nulo. Da forma como estão os dados na base de dados (Tabela: Governa.rh.ANALISE_CRITICA_DETALHE), sempre que temos um registro de uma Verba Eventual (aquelas que podem ser canceladas e cujo motivo deve ser mostrado) o campo Averbação ID tem conteúdo NULO.




EXTRATÉGIA


             Identificar em qual sub-método exportarArquivoRetorno exporta as Verbas Eventuais (pelas analises realizadas até agora essa verbas não são exportadas);


             Já que na tabela Governa.rh.ANALISE_CRITICA_DETALHE o campo id_averbação está sempre zerado (nulo) quando existe id_verba_eventual. É necessário que seja definido como selecionar as Verbas Eventuais já que toda a lógica de exportação é feita em torno da Averbação.