✒️ABAP El testing y el reproceso de un idoc
ABAP El testing y el reproceso de un idoc
Lección 9: Testing y Reproceso de IDoc
1 Introducción al Testing de IDocs
Desde el menú WEDI se puede acceder a las transacciones de testeo de IDocs.
Hay diferentes tipos de testeos, para diferentes etapas del envió o recepción del mensaje ALE:
ü Generación de mensajes de salida
En la práctica: todos estos test se utilizan para probar, desde la generación del mensaje y generación del IDoc, hasta el envió al puerto y el estado final del envió.
2 La Transacción WE19
Se utiliza para testear IDocs de entrada o salida.
En los IDocs de entrada, se teste que la conexión sea correcta y que el código de proceso (módulo de función) se ejecutara correctamente.
La generación del IDoc se hace manualmente, por lo tanto, no se puede testear por esta transacción, las funciones de generación de segmentos.
En los IDocs de salida, se testea que el proceso post-envió se ejecuta correctamente. Esto es útil para puertos tipo ABAP donde se testea que el módulo de funciones correspondientes se ejecuta correctamente. No se testea la generación del IDoc, ya que se carga manualmente.
3 Test de IDocs de salida:
Para testear un IDoc de salida, la mejor forma es ejecutar la transacción que genera el IDoc correspondiente. De esta manera, se asegura que se ejecuta el circuito completo (Módulo de funciones que genera los segmentos, envió de Idoc y Modulo de función de la puerta, en caso de puerta ABAP).
Para testear individualmente la función de una puerta ABAP y debuguear el programa, se puede acceder directamente desde la transacción SE37 y ejecutar el módulo de función que tiene asignada la puerta ABAP, pasándole como parámetro, el número de IDoc.
Por medio de la transacción WE14, se puede enviar al puerto de salida, un IDoc con status diferente a 53 “Procesado Correctamente”.
Mediante la transacción WE15, se envía un IDoc que quedo acumulado en la pila de salida. (Tabla NAST).
Transacciones WE14 y WE15: se utilizan para procesar Idocs y enviar los Idocs acumulados a la pila de salida.
4 Test de IDocs de entrada.
Podemos testear un IDoc de entrada desde la transacción WE19 (como se vio anteriormente)
Utilizando esta transacción, se puede probar el proceso completo de entrada, desde la determinación del acuerdo de interlocutores, hasta la generación del documento de negocio.
Puede también informarse el módulo de funciones que generará el documento de negocios sin tener configurada la internase de entrada (acuerdo de interlocutores).
Otra manera, es que el sistema externo que debe interactuar con SAP, envié el IDoc a testear. Si se tiene un archivo con el IDoc a testear o procesar se puede ejecutar el módulo de funciones EDI_DATA_INCOMING.
5 Código de estado
Existen deferentes códigos de estado de los IDocs que informan al usuario responsable, que etapas pudieron ser procesadas correctamente y que etapas generaron errores en el proceso.
Los estados de un IDoc son acumulados y por medio de las transacciones de monitoreo puede verse la historia del IDoc.
Los estados varían dependiendo si se trata de un IDoc de entrada o de salida. Los status para los IDocs salientes se sitúan entre 01 y 49, mientras que los valores de status para IDocs entrantes se indican con 50
Recuerda: para obtener un listado con todos los status posibles de un IDoc, se puede acceder a la transacción WE61 y visualizar el registro de control genérico.
Audio Tips: podemos cambiar el status de un IDocs ejecutando un programa estándar RC1_IDOC_SET_STATUS, en la pantalla de selección deberemos introducir el número del Idoc, el tipo de mensaje, el status actual y el estatus nuevo también podemos tildar un check en caso de querer ejecutar el reporte en modo test.
6 Listado y Visualización de IDocs
Para obtener un listado de los IDocs recibidos y enviados, se usan las transacciones WE02 y WE05
La lista pueden ser filtrada por:
ü Fecha de proceso.
Audio Tips: no existe mucha diferencia entre las transacciones estándar WE02 y WE05, ambas están vinculadas al mismo programa estándar, RSEIDOC2, ambas se utilizan para verificar un IDoc Creado y la razón por la cual existen esas dos transacciones y no una sola de ellas que tiene que ver con los objetos de autorización existentes en el programa estándar y se puede utilizar cualquiera de las dos transacciones.
7 Reproceso de IDocs:
Los Idocs que quedaron con error pueden ser modificados y reprocesados. Para reprocesar un IDoc de entrada utilizaremos la transacción DB87.
Transacción BD87: Se utiliza para reprocesar IDocs.
Audio Tips: las diferencias y similitudes entre las transacciones WE19 y BD87 son las siguientes: en la WE19 solo podemos procesar un IDoc al mismo tiempo, mientras la BD87 podemos procesar cualquier cantidad de IDocs, si intentamos ejecutar un IDoc existente con la Transacción WE19 se generara un nuevo nuero de IDoc, mientras en la transacción BD87 podemos reprocesar un Idoc ya existente sin que se genere un Idoc nuevo, en la transacción estándar BD87 no es posible procesar un Idoc con status ok, mientras que con la WE19 si es posible procesar un Idoc con status ok, en conclusión no podemos utilizar la transacción WE19 para reprocesar, debemos utilizarla para realizar testing y debuguear.
Se pueden seleccionar IDocs individuales, grupos por estado o por tipo de mensaje, etc. Además, pueden especificar el número de IDoc a reprocesar.
Los Idocs reprocesados serán actualizados con una nueva entrada en la lista de status.
Para reprocesar y reenviar Idocs de salida, se utilizan además la transacción WE14
Reflexión: cualquier IDoc con estado de error al envío, o agrupado para la salida, será enviado al puerto de salida preseleccionado en el acuerdo de interlocutores.
 
 
 
Sobre el autor
Publicación académica de Jhon Deibys Cano Pineda, en su ámbito de estudios para la Carrera Consultor ABAP.
Jhon Deibys Cano Pineda
Profesión: Ingeniero de Sistemas - Colombia - Legajo: WZ11E
✒️Autor de: 118 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Jhon Cano Pineda