Todo sobre el Manejo de Excepciones:
http://help.sap.com/saphelp_erp2005/helpdata/en/f3/b2934258a5c76ae10000000a155106/frameset.htm
Avalados por :
Todo sobre el Manejo de Excepciones:
http://help.sap.com/saphelp_erp2005/helpdata/en/f3/b2934258a5c76ae10000000a155106/frameset.htm
Hola,
Verifica esto:
... EXCEPCIONES except1 = rc1 ... exceptn = rcn
Efecto
EXCEPTIONS lista las excepciones que deben ser manejadas por el programa que llama. Al final de la lista de excepciones, puedes usar OTHERS para referirte a todas las excepciones restantes.
Si ocurre una de las excepciones listadas, SY-SUBRC se establece en el valor apropiado rc (¡un literal numérico!) y el control pasa de regreso al programa que llama. Al especificar un código de retorno, puedes dividir las excepciones en clases. Con la segunda forma, sin "=rc", SY-SUBRC se establece en un valor distinto de 0 si ocurre una excepción.
Si el módulo de función desencadena una excepción (con las sentencias RAISE y MESSAGE ... RAISING) y la excepción no debe ser manejada por el programa que llama,
RAISE termina el programa con un error en tiempo de ejecución;
MESSAGE ... RAISING muestra el mensaje.
Nota
Las siguientes EXCEPCIONES están predefinidas por el sistema y tienen un significado especial:
OTHERS: Cubre todas las excepciones definidas por el usuario en el módulo de función llamado.
ERROR_MESSAGE: Esta excepción instruye al sistema a ignorar mensajes S, mensajes I y mensajes W hasta el retorno del módulo de función (aunque aún aparecen en el registro durante el procesamiento en segundo plano). Cuando ocurre un mensaje E o un mensaje A, el módulo de función llamado termina, como si se hubiera desencadenado la excepción ERROR_MESSAGE.
Ejemplo
DATA: WA_SFLIGHT TYPE SFLIGHT,
P_LOSS LIKE SFLIGHT-PAYMENTSUM,
P_REVENUE LIKE SFLIGHT-PRICE,
P_CARRID LIKE SFLIGHT-CARRID.
...
SELECT * FROM SFLIGHT INTO WA_SFLIGHT WHERE CARRID = P_CARRID ... .
CALL FUNCTION 'CALCULATE_REVENUE_LOSS'
EXPORTING
PAYMENTSUM = WA_SFLIGHT-PAYMENTSUM
SEATSOCC = WA_SFLIGHT-SEATSOCC
PRICE = WA_SFLIGHT-PRICE
IMPORTING
LOSS = P_LOSS
REVENUE = P_REVENUE
EXCEPTIONS
OTHERS = 1.
...
ENDSELECT.
...
Ejemplo
TABLES SFLIGHT.
DATA: ITAB TYPE STANDARD TABLE OF BCAXX WITH
NON-UNIQUE DEFAULT KEY INITIAL SIZE 10.
P_YEAR ... .
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
¿Estás hablando de manejo de excepciones?
Si es así, entonces
Las excepciones son situaciones que ocurren mientras se ejecuta un programa ABAP, en las cuales la continuación normal del programa no tiene sentido. Las excepciones pueden ser generadas implícitamente en el entorno de tiempo de ejecución ABAP o explícitamente en el programa ABAP. Por ejemplo, la división por cero conduce a una excepción en el entorno de tiempo de ejecución ABAP. Es posible determinar esta situación a través de una consulta en el programa ABAP y desencadenar una excepción allí.
Hay dos tipos principales de excepciones: aquellas que pueden ser manejadas y aquellas que no pueden ser manejadas.
· Las excepciones que pueden ser manejadas ocurren en situaciones de error en el entorno de tiempo de ejecución o en el programa ABAP, donde el programa puede continuar ejecutándose después de que el programa ABAP haya manejado la excepción, sin que el sistema termine en un estado crítico. Si una excepción de este tipo no se maneja, se produce un error en tiempo de ejecución.
· El segundo tipo de excepciones son aquellas que no pueden ser manejadas. Estas son situaciones de error críticas en el entorno de tiempo de ejecución. El manejo con medios ABAP no es posible y siempre causan un error en tiempo de ejecución.
Hola,
No es 'manejo de acceptiones', es Manejo de Excepciones.
Generalmente, cuando estás trabajando con Módulos Divertidos, tienes que definir EXCEPCIONES que se activarán según la ocurrencia del error.
De lo contrario, el programa se bloquea, lo cual no es correcto.
Saludos,
Anji
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute