Uma MACRO é uma sequência de instruções contida em um comando que você pode criar. É útil para a reutilização dele no código. Sempre que precisar basta chamar o comando passando um parâmetro. Mas lembre-se: uma MACRO não pode ser debugada sem um AUTHORITY-CHECK. Segue um exemplo básico de sua utilização.
REPORT zmacro. * Variáveis DATA: v_calc TYPE I, v_num TYPE I VALUE 300. * Criação da MACRO DEFINE calcular. * &1 à &9 é o parâmetro que deve ser utilizado para validar a MACRO. v_calc = ( v_num * &1 ) / 100. WRITE: / 'Resultado = ', v_calc. CLEAR v_calc. END-OF-DEFINITION. START-OF-SELECTION. * Os parâmetros 10 e 50 serão atribuídos à &1 conforme chamamos a MACRO CALCULAR. calcular 10. calcular 50.