Olá abapers, saudações a todos,
Neste post do blog, você pode aprender como usar a classe de exceção a nível de relatório, espero que este post seja útil para os novos abapers. Primeiro discutiremos o que são exatamente as exceções.
Exceções:
A exceção é um problema que surge durante a execução do programa. Quando ocorre uma exceção, o fluxo normal de execução é interrompido e a aplicação do programa é encerrada de forma anormal, o que não é recomendado. Ao evitar isso, você pode lidar com os erros. Quando você falha em capturar o erro, o sistema em tempo de execução abortará o programa (ou seja, ele irá travar).
Sempre que ocorrerem exceções em ABAP, o programa será interrompido, o que não é correto. Como desenvolvedor, você deve pensar nas exceções, de onde elas vêm e onde você precisa capturá-las. As exceções sempre desempenham um papel importante no desenvolvimento do aplicativo.
O que é o tratamento de exceções?
O tratamento de exceções é um processo para lidar com uma exceção de tal forma que evite a interrupção abrupta de um programa e alcance a sua terminação normal. Se a exceção gerada for tratada corretamente, a terminação normal do programa será alcançada e o desempenho do software não será afetado.
Como lidar com as exceções?
As exceções fornecem uma forma de transferir o controle de uma parte de um programa para outra. O tratamento de exceções em ABAP é baseado em 3 palavras-chave: RAISE, TRY, CATCH. Supondo que um bloco irá gerar uma exceção, um método captura uma exceção usando uma combinação das palavras-chave Try e Catch.
Um bloco Try é colocado em torno do código que poderia gerar uma exceção.
Try:
O bloco Try contém o código da aplicação cujas exceções serão tratadas; o bloco de instruções é processado sequencialmente. Pode conter estruturas de controle adicionais e chamadas a procedimentos ou outros programas ABAP.
Catch:
O bloco Catch é usado para capturar as exceções que poderiam ser geradas no bloco Try.
Hierarquia de Exceções
CX_ROOT:
É a classe principal de todas as exceções geradas pelo SAP.
CX_DYNAMIC_CHECK:
É verificado apenas no sistema em tempo de execução. Todas as exceções geradas pelo sistema entram nesta exceção.
CX_STATIC_CHECK:
É verificado tanto pelo compilador quanto pelo sistema em tempo de execução. Se ocorrer alguma exceção nesta categoria, ela não é tratada internamente, precisamos declarar a cláusula RAISING da interface do procedimento.
CX_NO_CHECK:
Estas exceções CX_NO_CHECK são sempre declaradas implicitamente.
Aqui vou te mostrar,
-
Como criar uma classe de exceção e quais são os passos a seguir.
-
Diferentes formas de criar uma classe de exceção.
Ao criar a classe de exceção no se24, a superclasse dessa classe de exceção é
CX_STATIC_CHECK.
Há 2 formas de criar a classe de exceção no se24.
-
Classe de exceção com mensagens.
-
Classe de exceção sem mensagens.
Primeiro deixe-me discutir a classe de exceção sem classe de mensagem
Passos para criar a classe de exceção sem selecionar a classe de mensagem.
1. Ir para SE24
2. Fornecer um nome de tipo de objeto que comece com 'ZCX'
Figura: 1
3. Clique no botão de criar e o diálogo abaixo será exibido
Pedro Pascal
Se unió el 07/03/2018