Descobrir onde a exceção OO do ABAP Objects pipocou

O depurador do ABAP sempre me surpreende com uma nova funcionalidade toda vez que engasgo com o café e esbarro sem querer no mouse, fazendo-o clicar aleatóriamente em algum canto do depurador. Desta vez descobri o botão exceção, que permite descobrir onde o objeto de exceção foi criado através do comando RAISE EXCEPTION.

Este botão aparece apenas para objetos de exceção, na aba principal Objetos, e então em Exibição individual.

Região da tela de depuração em que o botão 'Exceção' aparece.

É possível usar o menu de depuração para colocar pontos de parada nestas instruções, mas se eu já sei onde do programa Z a exceção é capturada, pode a partir deste ponto ir voltando relativamente no tempo e ver em qual linha cada exceção foi lançada.

Se você, assim como a platéia do Sílvio Santos, só acredita vendo, copie este report e veja a mágica acontecer. Duas exceções são lançadas e encadeadas, e o debugger mostrará exatamente onde o crimecada exceção aconteceu.

Infelizmente esta forma não permite visualizar os valores das variáveis naquele trecho que o RAISE EXCEPTION foi executado após ter saído de lá, mas isto também ocorre com as exceções clássicas e exceções de módulos de função.

A exceção mais recente (primeira da cadeia, a última lançada) A exceção mais antiga (última da cadeia, a primeira lançada)
dummy dummy

Lembra daqueles TRY/CATCH sem nenhum tratamento e muito menos um INTO que você já ousou a colocar no código só por ser dia de maldade? Pois então, agora tem (mais) um motivo para abandonar esta má prática e fazer melhor.