✒️ABAP El testing y el reproceso de un idoc
ABAP El testing y el reproceso de un idoc
1.- Introducción al testing de IDocs
WEDI: Area del menú estándar de SAP que se utiliza para la administración y configuración de todo lo relativo a IDoca, incluso se puede acceder a las transacciones de testeo de IDocs..
Hay diferentes tipos de testeo, y diferentes etapas del envío o recepción del mensaje ALE estas son:
- Generación de mensajes de salida.
- Generación de IDocs de entrada.
- Reenvío de IDocs de salida.
- Procesos de salida de IDocs desde la tabla NAST.
Todos estos test se utilizan para probar, desde la generación del mensaje y generación del IDoc, hasta el envío al puerto y el estado final del envío.
NAST: Tabla transparente NAST que se utiliza para almacenar los mensajes de estatus en el sistema. Contiene todos los mensajes creados por el sistema.
2.- Transacción WE19.
WE19: Se utiliza para testear IDocs de entrada y salida.
En los IDOCS DE ENTRADA se testea:
- La conexión sea correcta,
- Código de proceso (módulo de función) se ejecute correctamente.
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-envío se ejecute correcatamente.
- Es útil para puertos tippo ABAP donde se testea que el módulo de funciones correspondientes se ejecute correctamente.
- No se testea la generación del IDoc, ya que se carga manualmente.
3.- Test del IDoc de salida.
Para testear un IDoc de salida, la mejor forma es ejecutar la transacción que genere el IDoc correspondiente. De esta manera seguramos que se ejecute el circuito completo:
- Módulo de funciones que genere los segmentos.
- Envìo del IDoc.
- Módulo de funciones 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 funciones que tiene asignada la puerta ABAP, pasándole como parámetro, el número de IDoc.
WE14: Se utiliza para procesar IDocs, se puede envíar al puerto de salida, un IDoc con estatus diferente a 53 "Procesado corectamente"
WE15: Se utiliza para envíar un IDoc que quedó acumulado en la pila de salida (Tabla NAST).
4.- Test de IDocs de entrada.
- WE19: Se utiliza para testear IDocs (entrada y salida).
- Utilizando la transacción WE19, se puede probar el proceso completo de entrada, desde la determinación del Acuerdo de Interlocutores, hasta la generación del documento de negocios.
- El módulo de funciones puede informarse que generará el documento de negocios sin tener configurada la interfase de entrada (acuerdo de interlocutores).
- Otra manera de testing es que el sistema externo que debe interactuar con SAP, enví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ódigos de Estado.
Existen diferentes códigos de Estado de los IDocs que informan al usuario responsable, que etapas pudierón ser PROCESADAS CORRECTAMENTE y que etapas generarón errores en el proceso.
- Los estados de un IDoc son acumulativos 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 estados salientes se sitúan entre "01" y "49".
- Los estados entrantes se inician con "50"
WE61: Esta transacción se utiliza para obtener un listado con todos los estatus posibles de un IDoc y visualizar el registro de control genérico.
Podemos cambiar el estatus de un IDoc ejecutando el programa RC1_IDOC_SET_STATUS, en la pantalla de selección introducimos los parámetros: Número IDOC, Tipo de Mensaje, Status, Status Nuevo y podemos tildar Tes, en caso de que queramos ejecutarlo en ese modo.
6.- Listado y Visualización de IDocs
Para obtener un listado de los IDocs recibidos y enviados, se usan las transacciones WE02 Y WE05.
WE02 y WE05: En esta transacción se pueden visualizar el listado de IDocs creados en el sistema.
La lista puede ser filtrada por:
- Fecha de proceso.
- Tipo de mensaje o Tipo Base.
- Direción del IDoc (entrada o salida)
- Número de IDoc.
- Información del Acuerdo de Interlocutores,etc.
No existe gran diferencia entre las transacciones WE02 Y WE05 ambas transacciones estan vinculadas al programa RSEIDOC2, ambas transacciones son utilizadas para verificar un IDoc creado la razón por la cual existen 2 de estas transacciones y no solo una de ellas tiene que ver con un tema de objetos de autorización existente en el programa estándar, en conclusión podemos utilizar cualquiera de las 2 transacciones.
7.- Reproceso de IDocs.
- Los IDOCS que quedarón con errores pueden ser modificados y reprocesados.
- Para reprocesar un IDOC de entrada utilizaremos la transacción BD87
BD87: Se utiliza para el reprocesamiento de los IDocs de entrada.
Las diferencias y similitudes entre las transacciones: WE19 Y WE87.
- En la WE19 sólo podemos procesar un IDoc al mismo tiempo VS la WE87 en donde podemos procesar cualquier cantidad de IDOCS.
- En la WE19 si intentamos procesar un IDoc existente se generará un nuevo número de IDoc VS WE87 podemos procesar un IDoc existente sin que se genere un IDoc nuevo.
- En la WE19 ES POSIBLE procesar un IDoc con estatus OK VS la WE87 NO ES POSIBLE procesar un IDoc con estatus OK.
- En conclusión: NO debemos de usar la transacción WE19 para reprocesar, debemos utilizarla para hacer testing y debbug.
Se pueden selecionar IDocs individuales, grupos por estado o por tipo de mensaje, etc. Además puede especificarse el número de IDoc a reprocesar.
Los IDocs reprocesados serán actualizados con una nueva entrada en la lista de estatus.
Para reprocesar y reenviar IDocs de salida, se utiliza además la transacción WE14.
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 Gustavo Alberto Ramirez Franco, en su ámbito de estudios para la Carrera Consultor ABAP.
Gustavo Alberto Ramirez Franco
Profesión: Ingeniero en Sistemas Computacionales - Mexico - Legajo: TA38Q
✒️Autor de: 38 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Gustavo Ramirez