Manual para La Creacion de IDOCs

August 19, 2022 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download Manual para La Creacion de IDOCs...

Description

 

Manual para la creacion de IDOCs De SAP ABAP en castellano Saltar a  a navegación, navegación, buscar 

Contenido [ocultar ] • • •

1  Qué es un Idoc? 2  Definición de la estructura de Idocs, segmentos de control, datos y estado. 3  Creación de un nuevo tipo de IDoc en SAP. o 3.1  – Creación de los elementos de datos o 3.2  – Creación de Segmentos o 3.3  – Creación del Tipo Base de IDoc 3.4 Tipo de Segmento y Tipo 3.5   – – Liberación Transporte del de Segmentos y Tipo Base de Básico IDocs de IDoc 4  Extensión de un IDoc. o 4.1  Configuración el procesamiento Outbound o 4.2  Configuración el procesamiento Inbound 5  Creación de destinos RFC, puertos y sistemas lógicos. o 5.1  Definición de Destinos RFC o 5.2  Definición de puerta. o 5.3  Definición de sistemas lógicos 5.3.1  Asignar sistema lógico a mandante 6  Creación de los acuerdos de interlocutores. 7  Creación de un nuevo tipo de Mensaje en SAP. 8  Relación entre un tipo de Mensaje y un Tipo de IDoc 9  Creación de un modelo de distribución. 10  (G) Creación de un Idoc de salida o 10.1  Creación de Idocs desde un programa ABAP o 10.2  Creación de Idocs utilizando Punteros de Modificación (Change Pointers)   Pointers) 10.2.1  Activación de punteros de modificación en forma global 10.2.2  Activación de punteros de modificación por Tipo de Mensaje   Mensaje 10.2.3  Definición de campos relevantes para la generación de Punteros de Modificación  Modificación  10.2.4  Relación entre el Tipo de Mensaje y el Módulo de Función 10.2.5  Crear un módulo de función para leer los punteros de modificación y crear los Idocs.  Idocs.  o 10.3  Creación de Idocs desde un Mensaje de Logística o o







• • • • •













11  Creación de un Idoc de entrada o 11.1  Configuración de Workflow

 

11.1.1  Crear un nuevo Objeto de Aplicación Idoc 11.1.2  Crear una nueva tarea basada en el Objeto de Aplicación Idoc   Idoc 11.2  - Configuración de la Interfaz de entrada 11.2.1  Transacción: WE81 Lógico: Desde el área Tipos de¬ Desarrollo ¬de   11.2.2  Camino Lógico: menú de EDI (transacción WEDI), seleccionar Menú SAP mensajes   mensajes 11.2.3  Camino Lógico: Desde el área de menú de EDI (transacción WEDI), seleccionar Menú SAP -> Desarrollo -> Tipo  Tipo   IDoc / Mensaje  Mensaje  11.2.4  Definición de Código de Operación  

o











11.2.5  Definición de Módulo de Función

Title page

Manual para la creación de Idocs  El objetivo de este documento es servir de guía para la creación de interfaces entre dos sistemas R/3 o entre un R/3 y un legacy, utilizando Idocs.

Qué es un Idoc? Los IDoc permiten intercambiar información entre distintos sistemas. Se lo puede ver  como un archivo de texto plano, con registros. Un Idoc es por ejemplo los datos de un proveedor , o una oferta. Contiene una cabecera y posiciones, pero todos los datos pertenecen a la misma entidad. O sea, para transmitir datos de más de un proveedor, haría falta más de un IDoc. Los IDocs se crean y luego se envían. Este envío se realiza en un segundo paso; o sea que podría haber IDOCs que todavía no se hayan enviado. Un Idoc, como se mencionó más arriba, está formato por dos bloques: • •

Un registro de Control. Una tabla con los datos del IDOC .

El registro de control contiene toda la información administrativa del IDOC, como el origen y el destinatario, y qué tipo de IDOC es. Sería algo así como el sobre que acompaña a cualquier carta.

 

Este registro es muy importante ya que es necesario para saber, entre otras cosas, cuál será el destinatario del IDOC. La tabla SAP donde se guardan es la EDIDC. Los registros de datos se guardan en la tabla EDID4 en un campo de 1000 caracteres. Para saber interpretar esa cadena, el registro cuenta con un campo que informa cuál es la estructura con la que se deben interpretar los datos. El nombre de dicha estructura existe en SAP y se la puede ver desde la transacción SE11. SE11. Desde la transacción  transacción WE30 se puede ver el formato de los Idocs. Por ejemplo, para el Idoc MATMAS01, el formato es el siguiente: MATMAS01 E1MARAM E1MAKTM E1MARCM E1MARDM E1MARMM E1MEANM E1MBEWM

Maestro material Maestro material datos generales (MARA) Maestro material - textos breves (MAKT) Maestro material segmento C (MARC) Maestro material almacén/segmento lotes (MARD) Maestro material unidades de medida (MARM) Maestro mat. números art. europeos (MEAN) Maestro material valoración stocks (MBEW)

E1MLGNM E1MVKEM E1MLANM E1MTXHM E1MTXLM

Maestro mat. datos por núm.almacén (MLGN) Maestro material datos de ventas (MVKE) Maestro material clasif. impuestos (MLAN) Maestro material texto explicativo cabecera Maestro material texto explicativo línea

Cada uno de los nombres que acá se muestran son estructuras que se pueden ver desde la SE11. O sea que por ejemplo, para un registro de datos que tiene estructura E1MARAM, para saber cuál es el formato con el que hay que interpretarlos, se puede ir a la transacción SE11 y ver qué campos componen a esa estructura. Dado que la cadena de 1000 caracteres está formada por los datos de un campo atrás del otro, es solo cuestión de saber en qué posición de la cadena se encuentra cada campo. Generalmente, varios registros de estado se adjuntan a un IDOC. El sistema automáticamente asigna registros de estado durante todo el proceso, a medida que el IDOC va alcanzando diversos puntos de control. Contienen información de estado, tal como código de estado, fecha y hora en que el punto de control es alcanzado. Estos registros de estado existen solamente en SAP y no son almacenados en el archivo de salida. La estructura de los registros de estado está definida por la estructura del DDIC EDI_DS40. La tabla es EDIDS.

 

Definición de la estructura de Idocs, segmentos de control, datos y estado. La estructura de un IDoc consiste de varios segmentos, y los segmentos consisten de una secuencia de campos. La estructura de un tipo de IDoc define la sintaxis de los datos al especificar la organización de los segmentos, atributos de los segmentos y formatos de cada uno de sus campos. En ejecución, un IDoc consiste de la siguiente secuencia de tres tipos de registros: a – Un único registro de Control   Contiene toda la información de control del IDoc, incluyendo el número de IDoc, emisor y receptor, otra información de control tal como el tipo de mensaje que representa y el tipo de de IDoc. La estructura del registro de control es idéntica para todos los IDocs y está definida por SAP. Son automáticamente creados e insertados por el sistema en tiempo de ejecución. 

La estructura del registro de contol está definida por la estructura del DDIC EDI_DC40: Cantidad de campos: 36 Total longitudes de campo: 524 Componente

Tipo

Long.

Tipo

Texto breve

______________________________________________________________________  ___  TABNAM MANDT DOCNUM DOCREL STATUS DIRECT OUTMOD EXPRSS TEST IDOCTYP CIMTYP

CHAR  EDI4TABNAM Nombre de la estructura de tabla 10 CLNT EDI4MANDT Mandante 3 CHAR  EDI4DOCNUC Número del IDOC 16 CHAR  EDI4DOCREL Release SAP del IDOC 4 CHAR  EDI4STATUS Status del IDOC 2 CHAR 1 EDI4DIRECT CHAR  EDI4OUTMOD Modo de salida 1 CHAR  EDI4EXPRSS Sustitución en Entrada 1 CHAR 1 EDI4TEST CHAR  EDI4IDOCTP Nombre del tipo base 30 CHAR EDI4CIMTYP Ampliación (definida por los clientes) 30

I

 

CHAR  EDI4MESTYP 30 CHAR  EDI4MESCOD MESCOD 3 CHAR  EDI4MESFCT MESFCT 3 CHAR  EDI4STD STD 1 CHAR  EDI4STDVRS STDVRS 6 MESTYP

STDMES

SNDPRT SNDPFC

Tipo de mensaje Variante de mensajes Función de mensaje Estándar EDI, indicador  Estándar EDI, versión y release

CHAR  EDI4STDMES Tipo de mensajes EDI 6 CHAR  EDI4SNDPRT Tipo de interlocutor EDI del remitente 2 CHAR  EDI4SNDPFC Función interlocutor EDI del remitente 2 Número del interlocutor EDI del remitente SNDSAD SNDLAD RCVPOR RCVPRT

CHAR 21 CHAR 70 CHAR 10 CHAR 2

EDI4SNDSAD EDI4SNDLAD EDI4RCVPOR EDI4RCVPRT

Dirección del Dirección lógi Puerta del dest Tipo de interlo

destinatario RCVPFC

CHAR 2

EDI4RCVPFC

Función de inte

destinatario RCVPRN CHAR  EDI4SNDPRN RCVSAD SNDPRN 10 RCVLAD CREDAT CRETIM REFINT

CHAR 10 CHAR 21

EDI4RCVPRN EDI4RCVSAD

Nº interlocutor EDI d Dirección del destina

CHAR 70 DATS 8 TIMS 6

EDI4RCVLAD EDI4CREDAT EDI4CRETIM CHAR 14

Dirección lógica del Fecha de creación Hora de creación EDI4REFINT Fic

Interchange) REFGRP

CHAR 14

EDI4REFGRP

Grupo de mensaj

Group) REFMES ARCKEY

CHAR 14 CHAR 70

EDI4REFMES EDI4ARCKEY

Mensaje (M Clave del ar 

 

externo SERIAL

HAR 20

EDI4SERIAL

________________________________________________________  Los datos del registro de control se almacenan en la tabla SAP EDID mandante (MANDT) y número de Idoc (DOCNUM). b – Uno o más registros de Datos 

Un IDoc puede contener múltiples registros de datos, según haya sido IDoc. En ejecución, los segmentos son convertidos por el sistema a re datos contiene información de la aplicación (maestro de proveedores, pedidos, etc.). La estructura de los registros de datos está definida por la estructura d Estructura de campo Cantidad de campos: 7 Total longitudes de campo: 1063 Componente

Tipo

Long.

Tipo

________________________________________________________  SEGNAM MANDT DOCNUM SEGNUM PSGNUM HLEVEL SDATA

CHAR 30 CLNT 3 CHAR 16 CHAR 6 NUMC 6 CHAR 2 LCHR 1000

EDI4SEGNAM EDI4MANDT EDI4DOCNUC EDI4SEGNUC EDI4PSGNUC EDI4HLEVEC EDI4SDATA

Segmento (no Mandante Número del ID Número de seg Número del seg Nivel de jerarq Datos de la apli

________________________________________________________ 

La sección de datos es una cadena de 1000 bytes, y es el lugar donde l sección de datos es mapeada en ejecución a un tipo de segmento, seg del tipo de IDoc, a fin de interpretar la estructura de los datos en esta Los datos de los registros de datos se almacenan en la tabla SAP EDI mandante (MANDT), el número de IDoc (DOCNUM), y el número d c – Uno o más registros de Estado  Generalmente, varios registros de estado se adjuntan a un IDoc.

 

asigna registros de estado durante todo el proceso, a medida que puntos de control. Contienen información de estado, tal como cód que el punto de control es alcanzado. Estos registros de estado exist almacenados en el archivo de salida . 

La estructura de los registros de estado está definida por la estructura Estructura de campo Cantidad de campos: 24 Total longitudes de campo: 562 Componente

Tipo

Long. Tipo

________________________________________________________  TABNAM MANDT DOCNUM LOGDAT LOGTIM STATUS STAMQU

CHAR 10

DATS 8 TIMS 6 CHAR 2 CHAR 3

EDI4TABNAM CLNT 3 CHAR 16 EDI4LOGDAT EDI4LOGTIM EDI4STATUS EDI4STAMQU

Nombre de la estru EDI4MANDT Ma EDI4DOCNUC N Fecha de la inform Hora de la informa Status del IDOC Cualificador para

status STAMID

CHAR 20

EDI4STAMID

Nro. de mensaje par 

Clase mensaje STAMNO

NUMC 3

EDI4STAMNO

Número de mensaje en

STATYP

CHAR 1

EDI4STATYP

Tipo de mensaje (A, W

CHAR 50

EDI4STAPA1

Primer parámetro de un

de status STAPA1 de status STAPA2

CHAR 50

EDI4STAPA2

Segundo parámetro

registro de status STAPA3 de status

CHAR 50

EDI4STAPA3

Tercer parámetro de un

 

STAPA4

CHAR 50

EDI4STAPA4

Cuarto parámetro de un

de status STATXT UNAME REPID ROUTID

CHAR 12 CHAR 30

CHAR 70 EDI4UNAME EDI4REPID

EDI4STATXT Nombre del usu Programa

CHAR 30

EDI4ROUTID

Subrutina (rutin

funciones) SEGNUM SEGFLD REFINT REFGRP REFMES ARCKEY

CHAR 6 CHAR 30 CHAR 14 CHAR 14 CHAR 14 CHAR 70

EDI4SEGNUC EDI4SEGFLD EDI4REFINT EDI4REFGRP EDI4REFMES EDI4ARCKEY

Número de segment Campo de segmento Fichero de transmisi Grupo de mensajes ( Mensaje (Mensaje E Clave del archivo de

________________________________________________________  Los datos de los registros de estado se almacenan en la tabla SAP ED mandante (MANDT), número de Idoc (DOCNUM), fecha (LOGDAT de registro (COUNTR).

Creación de un nuevo tipo de IDoc en SAP.

Para la creación de un nuevo tipo de IDoc en SAP debe seguirse una s

– Creación de los elementos de datos Deben crearse los elementos de datos necesarios para la definición de crear elementos de datos debería ser mínima dado que los datos ya ex representados por sus propios elementos de datos. Sin embargo, los segmentos no admiten cualquier tipo dato y por lo t elementos en caso que los existentes no sean de alguno de los siguien ________________________________________________________  Tipo de Datos

Descripción

________________________________________________________  CHAR CLNT CUKY DATS

String de caracteres Cliente Campo moneda, referenciado por campos CURR  Campo fecha (YYYYMMDD), almacenado como ch

 

LANG NUMC TIMS

Clave de idioma Campo carácter con dígitos solamente Campo fecha (HHMMSS), almacenado como char(6)

– Creación de Segmentos Los segmentos son creados por medio del Editor de Segmentos: Transacción: WE31. Camino lógico: Desde el área de menú de EDI (transacción WEDI),  ¬seleccionar Menú SAP

Pasos: 

2.1 - Ejecutar la transacción WE31. Ingresar el nombre del tipo de se seleccionar la opción Crear (F5).

2.2 – Entrardel una descripción breve yautomáticamente los valores para los distintos cam definición segmento. El sistema asigna un nomb basado en el nombre del tipo de segmento. Ej.: si el tipo de segmento segmento será Z2WKDET. 2.3 – Guardar las entradas. Volver a la pantalla anterior y repetir el mi segmentos que se necesiten crear para el tipo de IDoc.

– Creación del Tipo Base de IDoc

Una vez creados todos los segmentos, el siguiente paso es crear el Tip IDocs se crean con el Editor de IDocs: Transacción: WE30 Camino Lógico: Desde el área de menú de EDI (transacción WEDI),  ¬seleccionar Menú SAP

Pasos: 

3.1 – Ejecutar la transacción WE30. Ingresar el nombre del tipo base Seleccionar la opción Tipo base y Crear (F5).

3.2 – En la siguiente pantalla, seleccionar la opción Crear nuevo e ing

 

base de IDoc. Presionar Continuar. 3.3 – Posicionar el cursor sobre el nombre del IDoc y seleccionar  Cre continuación el tipo de segmento y sus atributos. Al presionar Enter, tipo de segmento al editor de IDoc. 3.4 – Para ingresar más segmentos, repetir el procedimiento del punto primer segmento, debe indicarse para los restantes el nivel (mismo ni quiere insertar el nuevo segmento. 3.5 – Guardar el tipo base de IDoc.

– Liberación del Tipo de Segmento y Tipo Básico de IDoc Una vez terminada la definición de la estructura del IDoc y sus segme liberados a fin de que se encuentren disponibles para su transporte a l producción. Primero deben liberarse los segmentos y después el tipo Para liberar un segmento, ejecutar la transacción WE31. Ingresar el ti Tratar, Liberar. El sistema automáticamente completa el check box e segmento. Para liberar un tipo base de IDoc, ejecutar la transacción WE30. Ingr  seleccionar Tratar, Liberar.  Una vez que el segmento / tipo base de IDoc es liberado, ya no puede necesario introducir modificaciones debe cancelarse la liberación. Lo son los mismos a los indicados para la liberación.

– Transporte de Segmentos y Tipo Base de IDocs

Las modificaciones a los tipos base de IDocs y segmentos son automá

orden de transporte. Luego de transportados tr ansportados los objetos, los mismos p manualmente desde el editor de segmentos / Transportar. Al transpor  seleccionando: Segmento transportan automáticamente tod todas as sus defi embargo, al transportarse un tipo base de IDoc no se transportan auto

Extensión de un IDoc. Las ampliaciones de IDocs son componentes que se utilizan para exte existentes de una forma predefinida. Estas extensiones sólo pueden se los tipos de ampliación no son proporcionados por SAP. Para crear un tipo de ampliación: 

Transacción: WE30

 

Camino Lógico: Desde el área de menú de EDI (transacción WEDI),  ¬seleccionar Menú SAP

En el editor de IDOC, elegir el componente Tipo de ampliación e intr  Objeto. Seleccionar  Crear ◊ Objeto desarrollo . En éste momento, la ventana ampliación se mostrará por pantalla. Elegir una de las siguientes tres opciones: • • •

Crear nuevo. Crear como copia. Crear como sucesor.

Introducir los nombres de la personas responsables así como una brev ampliación a crear. Seleccionar Continuar . 1. Para añadir segmento ampliado a un segmento de referencia, coloc referencia siguienteque a donde se pretenda añadirdespués el nuevodesegmento ys mensaje indicando los segmentos creados un segment creados como segmentos hijos. La secuencia en la cual aparecen los segmentos de referencia en el tip realmente importante es que dichos segmentos existan en el tipo de I ampliado.

Las ampliaciones de cliente realizadas utilizando tipos de ampliación sistema se actualice a una nueva versión R/3. Los sucesores a tipos de anteriores se combinan automáticamente con los tipos de ampliación se requiere un mantenimiento manual. Los tipos de IDoc base implem ampliaciones permanecen sin cambios en la actualización.

Configuración el procesamiento Outbound Por cada segmento extendido, tiene que haber una extensión en el cód outbound, que inserte los datos indicados en la extensión del segment El programa o función que genere el Idoc puede o no ser un estandar  insertar el código necesario para manejar las extensiones en una User  transacción CMOD. Si es un programa Z, solo habrá que actualizarlo Por otro lado, habrá que actualizar los Acuerdos de Interlocutores q especificando el nombre de la extensión creada.

Configuración el procesamiento Inbound Por cada segmento extendido, tiene que haber una extensión en el cód

 

inbound, que considere el tipo de segmento extendido recibido entre l El programa o función que genere el Idoc puede o no ser un estandar  insertar el código necesario para manejar las extensiones en una User  transacción CMOD. Si es un programa Z, solo habrá que actualizarlo Por otro lado, habrá que actualizar los Acuerdos de Interlocutores q especificando el nombre de la extensión creada.

Creación de destinos RFC, puertos y sistem Definición de Destinos RFC Transacción: SM59 Camino Lógico: Desde el área de menú de EDI (transacción WEDI),  ¬seleccionar Menú SAP Dependiendo del sistema destino, la conexión RFC será de distinto ti Idocs, se crean conexiones del tipo TCP/IP, especificando el nombre del servid destino.

Definición de puerta. (A lo largo de este documento se usará la palabra Puerto o Puerta, ind Transacción: WE21 Camino Lógico: Desde el área de menú de EDI (transacción WEDI),  ¬seleccionar Menú SAP Para una descripción detallada, buscar en SAP Library: Port Definitio Los Idocs pueden ser enviados y recibidos a través de diferentes medi la definición de las características del medio con la aplicación que lo accedido vía puertos. En otras palabras, un puerto es un nombre lógic entrada/salida. Los programas se comunican con un puerto a través d En vez de definir el medio de comunicación directamente en el Ac Profile), se asigna un número de puerto, y es este puerto el que de permite definir las características de los puertos individualmente Acuerdos de Interlocutores. Interlocutores. Los cambios en un puerto se reflejar acuerdos que lo estén utilizando. 

 

Al menos un puerto debe existir para cada sistema externo. La siguie son enviados a dos sistemas vía tres puertos.

Los tipos de puertos más comunes son los siguientes: Ficheros (File Interface) 

Permite intercambiar Idocs a través de archivos del sistema operativo.

El sistema que envía el IDoc crea un archivo en el file system. Luego RFC sincrónico que el archivo ha sido transferido, que está localizado que tiene un determinado nombre. SAP recomienda no usar nombres de archivos estáticos, dado que el a que el Idoc se envía. Se recomienda usar el módulo de funciones EDI_PATH_CREATE_CLIENT_DOCNUM, EDI_PATH_CREATE_ CLIENT_DOCNUM, el cual genera el nomb mandante y nro. de Idoc. RFC Transaccional Transaccional 

Se usa para escenarios de distrubución ALE. El nombre del puerto se SAP lo elija. Además del puerto, hay que definir el destino RFC. Archivo XML 

Envía documentos en formato XML. Para utilizar este tipo de puerto, puerto, el formato del XML, y el nombre del archivo a generar. Al ig Fichero, se puede invocar a la función EDI_PATH_CREATE_CLIE los nombres del archivo en forma dinámica. XML-HTTP 

En vez de definir el nombre del archivo XML, se especifica un destin

Definición de sistemas lógicos Transacción: BD54  Camino Lógico: Desde la transacción SALE, seleccionar Preparar sis Preparar sistemas lógicos ¬receptores y de envío

Asignar sistema lógico a mandante

Cuando el sistema lógico es un R/3, se lo debe asignar a un mandante.

 

Transacción: SCC4 Camino Lógico: Desde la transacción SALE, seleccionar Preparar sis  un¬ Preparar sistemas lógicos ¬ receptores y de envío mandante.

Hacer doble click sobre el mandante que al que se desea asignar, y po nombre del sistema lógico.

Creación de los acuerdos de interlocutores. Transacción: WE20 ¬ Gestión ¬Camino

Lógico: Desde la transacción WEDI, seleccionar 

Interlocutores EDI Un interlocutor ALE es un sistema SAP remoto o un sistema lega

datos. El acuerdo de interlocutor especifica varias de las caracterí intercambian incluyendo el modo de operación y la organización manejo de los errores. Cuando los datos son intercambiados entr que el emisor y el receptor estén de acuerdo en la sintaxis y semá intercambiados. Este acuerdo es lo que se llama Acuerdo de Inter receptor de la estructura de los datos enviados y cómo los conteni

La datos definidos en un acuerdo de interlocutor son: •

• •

Tipo de Idoc y Tipo de mensaje, los cuales son el identificado interlocutor. Nombre del Emisor y Receptor que intercambiarán los Idocs p Puerto por el cual el emisor y el receptor se comunicarán.

En el interlocutor se definen datos específicos de cada mensaje a trans o entrada según corresponda. Mediante la transacción WE20 se crea el acuerdo de interlocutor con

Creación de un nuevo tipo de Mensaje en S Transacción: WE81  Camino Lógico: Desde el área de menú EDI (transacción WEDI), sel Desarrollo ¬Menú SAP En este paso se asigna un tipo de mensaje a los contenidos de datos a mensajes de usuario deben ser nombrados comenzando con Z.

 

Relación entre un tipo de Mensaje y un Tip Transacción: WE82 Camino Lógico: Desde el área de menú de EDI (transacción WEDI),  ¬seleccionar Menú SAP

En este paso se asigna el tipo de mensaje creado en el paso anteri asociación no sólo sirve a fin de documentar el mensaje en que est sino que además verifica esta asociación asociación el momento en que el ID

Creación de un modelo de distribución. La relación entre sistemas lógicos, tipos de mensajes, BAPIs y filtros Distribución. Las controlar aplicaciones y la capa ALE usan el modelo de distri receptores y para la distribución de datos.

Los escenarios de distribución definen los tipos de IDocs y los par participan en una distribución ALE. El escenario de distribución es datos serán replicados y quienes serán los receptores. El modelo de distribución es compartido entre todos los interlocu solo puede ser mantenido en uno de los sistemas, el cual lo podem uno de los sistemas es el sistema líder, pero puede ser seteado par interlocutores en cualquier momento, aún si el escenario ya se en

Puede haber varios escenarios para diferentes propósitos. Por otro lad escenario. Lo más recomendable es crear un escenario por administra ALE, no tiene mucho sentido tener más de un escenario. Pero si hay diferentes requerimientos, será más útil crear un escenario por depart Pasos para crear un Modelo de Distribución: Transacción: BD64 Camino Lógico: Desde la transacción SALE, seleccionar Aplication implementar modelos empresariales ¬ Enabling (ALE) modelos de D -Ir a la transacción BD64 -Pasar al modo modificación -Presionar el botón Crear Modelo Vista (Ctrl+F4)

 

Aparecerá la siguiente ventana:

-Completar el texto breve y el nombre técnico para el modelo de distr 

-Seleccionar el registro recién creado y presionar el botón Insertar Tip Aparecerá la siguiente ventana:

-Completar el campo Emisor con el nombre del Sistema lógico que tr  -Completar el campo Destinatario con el nombre del Sistema lógico q

-Completar el campo Tipo de mensaje con el mensaje que se transmiti Importante 

No se puede mantener un tipo de mensaje entre el mismo emisor y rec distribución.

(G) Creación de un Idoc de salida Existen tres formas de creación de Idocs: • • •

Desde un programa ABAP (desarrollo Z). Desde un puntero de modificación (Change Pointer). Desde mensajes de logística.

Observación: 

Los pasos para: • • • • • • •

Crear de un nuevo tipo de IDoc en SAP. Extender un Idoc. Crear sistemas lógicos, puertos y destinos RFC. Crear acuerdos de interlocutores. Crear un nuevo tipo de Mensaje en SAP. Relacionar un tipo de Mensaje con un tipo base de Idoc. Crear de un modelo de distribución.

fueron explicados más arriba, por lo cual solamente se procederá a ex necesarios para crear un Idoc.

Creación de Idocs desde un programa ABAP

 

Los pasos a seguir para la creación de un IDoc de salida desde un pro

1- Seleccionar la información de la base de datos de acuerdo a los par  2- Completar la información correspondiente al registro de control. 3Completar una tabla interna de tipo EDIDD con los registros de da correspondientes. 4- Llamar al servicio de la capa ALE (MASTER_IDOC_DISTRI la base de datos.  5- Ejecutar COMMIT WORK. 6- Enviar el Idoc invocando al programa RSEOUT00. A continuación se detalla un ejemplo con los pasos 2, 3,4 y 5   * DECLARACION DE DATOS  DATA: c_message_type c_message_type c_base_idoc_type c_base_idoc _type c_invrev_segname(7) c_rcvprn   IDOC_CONTROL LIKE T_COMM_CONTROL LIKE IDOC_DATA LIKE  

LIKE LIKE TYPE LIKE

edidc-mesty edidc-mestyp p VALUE 'ZINVR edidc-idoct edidc-idoctp p VALUE 'ZINVR C VALUE 'Z1INVRV',"Nombr  edidc-rcvpr edidc-rcvprn n VALUE 'SAPBC

EDIDC, EDIDC OCCURS 0 WITH HEADER LIN EDIDD OCCURS 0 WITH HEADER LIN

* CAMPOS DE CONTROL DEL IDOC    idoc_control -doctyp idoc_control-doctyp idoc_control-mestyp idoc_control -mestyp idoc_control-idoctp idoc_control -idoctp idoc_control-serial idoc_control -serial idoc_control-direct idoc_control -direct idoc_control-serial idoc_control -serial idoc_control-serial+8 idoc_control-rcvprn idoc_control -rcvprn idoc_control-rcvprt idoc_control -rcvprt

= = = = = = = = =

c_message_typ c_message_type. e."Tipo Mensaje  c_message_typ c_message_type. e."Tipo Mensaje  c_base_idoc_t c_base_idoc_type. ype."Tipo de Idoc  space. '1'. sy-datum. sy-uzeit. c_rcvprn "Nro Interlocutor Desti  'LS'"Tipo interlocutor dest 

APPEND idoc_control.

  * CAMPOS DE DATOS DEL IDOC 

* Esta sección la repite una vez por cada registro de da * en el IDoc.  * Indica cuál es el tipo de segmento  IDOC_DATA-SEGNAM IDOC_DATA-S EGNAM = C_INVREV_SEG C_INVREV_SEGNAME. NAME."Nombre Segmento  * Completa los datos de la estructura del segmento  CLEAR Z1INVRV.

 

Z1INVRV-CAMPO_01 = VALOR_01 Z1INVRV-CAMPO_01 ... ... ... Z1INVRV-CAMPO_NN Z1INVRV-CAM PO_NN = VALOR_NN

* Mueve la estructura con los datos del segmento al únic IDOC_DATA-SDATA = Z1INVRV."Datos del Segmento 

* Inserta el registro actual a la tabla interna de datos APPEND IDOC_DATA.

*--- Call the distribute function with the required para MASTER_IDOC_DISTRIBUTE ' CALL FUNCTION ' 'MASTER_IDOC_DISTRIBUTE EXPORTING MASTER_IDOC_CONTROL TABLES COMMUNICATION_IDOC_CONTROL MASTER_IDOC_DATA EXCEPTIONS ERROR_IN_IDOC_CONTROL ERROR_WRITING_IDOC_STATUS ERROR_IN_IDOC_DATA SENDING_LOGICAL_SYSTEM_UN SENDING_LOGIC AL_SYSTEM_UNKNOWN KNOWN = OTHERS   if sy-subrc = 0. COMMIT WORK. endif.

Una vez completados estos pasos, queda creado el Idoc. El mismo se EDIDC y EDID4. Se lo puede ver desde la transacción WE05. Para enviar el Idoc a su destinatario, se invoca al programa RSEOUT

Creación de Idocs utilizando Punteros de Modificación (C Toda vez que se crean o modifican datos maestros, tal como datos proveedores, proveedore s, etc., el sistema escribe "punteros de modificación" ( de cada una de estas modificaciones para cada documento. El rep ejecutado a fin de procesar todas las entradas en la tabla de punt generar los IDocs, este programa llama a un módulo de función e

Los pasos a seguir para la creación de un Idoc de salida utilizando Pu siguientes: • • • • •

Activar los punteros de modificación en forma global. Activar los punteros de modificación para nuestro tipo de men Definir los campos relevantes para la generación de punteros Relacionar el tipo de mensaje con el módulo de función. Crear un módulo de función para leer los punteros de modific

 

Activación de punteros de modificación en forma global

Transacción: BD61

Camino Lógico: Desde la configuración de ALE en el IMG (transacci Configurar ¬seleccionar Modelar e Implementar procesos empresarial datos modificados ¬distribución de de datos maestros Activación gener 

Marcar el Flag: Puntero modificación general activado y grabar. Activación de punteros de modificación por Tipo de Mensaje

Transacción: BD50 Camino Lógico: Desde la configuración de ALE en el IMG (transacci Configurar ¬seleccionar Modelar e Implementar procesos empresarial datos modificados ¬distribución de de datos maestros Activar puntero Agregar una entrada para el mensaje deseado, y marcarla como activa

Definición de campos relevantes para la generación de Punteros

Transacción: BD52

Servicio de¬ IDoc ¬ Desarrollo ALE ¬ ALE ¬Camino Lógico: Herr  relevantes para modificación¬Modificaciones Ingresar entradas para los campos sobre los cuales se quieran crear Pu Primero completar el tipo de mensaje y presionar continuar.

Luego se desplegará una pantalla para ingresar los campos: - Objeto de Modificación -Tabla -Campo

Relación entre el Tipo de Mensaje y el Módulo de Función

 

Transacción: BD60  Filtrado de¬ IDoc ¬ Desarrollo ALE ¬ ALE ¬ Camino Lógico: Herr   mediante clases.¬datos En este paso se relaciona el tipo de mensaje con el módulo de fun analizar/procesar analizar/proce sar los punteros de modificación. Ejecutar la trans entrada para el tipo de mensaje deseado, y el módulo de función ese Puntero de Modificación. 

En otras palabras, cuando se ejecute el programa estandar RBDMIDO Modificación y se detecte que uno de los campos que se insertaron en relevantes para la generación de Punteros de Modificación) se modifi está definiendo en este paso.

Crear un módulo de función para leer los punteros de modificaci

Esta función contiene la lógica para la generación de los IDocs a parti invocada desde el programa RBDMIDOC, a partir de la configuració La lógica del programa contiene los siguientes pasos: 1- Leer los punteros de modificación generados usando la función C 2- Analizar los punteros de modificación para determinar cuáles docu 3- Determinar la clave del documento de aplicación del paso 2. 4- Seleccionar datos de aplicación de la base de datos, usando la clav 3. 5- Completar la información del registro de control del IDoc. 6- Completar una tabla interna de estructura EDIDD con registros de 7- Llamar al servicio de la capa ALE (MASTER_IDOC_DISTRIBU de datos. 8- Actualizar el estado de los punteros de modificación 9- Ejecutar un COMMIT WORK. Generalmente se utiliza una función estándar, salvo que se esté exten caso de estar extendiendo, lo que se hace generalmente es copiar una lógica necesaria para que se considere el segmento extendido al mom

 

Creación de Idocs desde un Mensaje de Logística Logí stica El proceso lógico de generación de Idocs de salida desde Mensajes de es el siguiente: • •



Un programa ABAP (desarrollo Z) o transacción estándar cre El mensaje es procesado por el programa ABAP estándar RS desde la tabla NAST, y llama al módulo de función adecuado función MASTERIDOC_DISTRIBUTE. MASTERIDOC_DISTRIBUTE. El Idoc es enviado a su destinatario al ejecutar el programa RS

Se puede usar el concepto de Mensajes R/3 para disparar la creación se dispara la impresión de SapScripts. La tabla utilizada para esto es la NAST. Esta tabla guarda recordatori recordatorios son llamados Mensajes (messages). Cada vez que una aplicación ve la necesidad de pasar información a u

escrito en la tabla NAST. Un controlador de mensajes (message handl entradas en esta tabla y ejecutará la acción apropiada. Un mensaje N solo registro en la tabla NAST. El registro guarda toda la información Idoc. Esto incluye, entre otras cosas, una clave de objeto para identifi y receptor del mensaje.

Creación de un Idoc de entrada La configuración de la interfaz de entrada incluye una sección de Con manejo de excepciones. Podemos dividir esta tarea en dos partes: 1- Configuración de Workflow. 2- Configuración de la Interfaz de entrada.

Configuración de Workflow La configuración de workflow es necesaria para el manejo de excepci pasos que deben llevarse a cabo son: 1 – Crear un nuevo Objeto de Aplicación IDoc en el Business Object y de finalización. 2 – Crear una nueva tarea basada en el objeto de aplicación Idoc. 3 – Crear el link de los eventos.

 

Crear un nuevo Objeto de Aplicación Idoc

Transacción: SWO1 ¬ Desarrollo ¬ SAP

Business Workflow ¬Camino Lógico: Herramie Builder ¬Herramientas def.

1 – Seleccionar el botón Buscar  (ctrl.+F) y expandir las opciones de s Selecciones (todas). Ingresar IDOCAPPL en el campo Tipo super y E  2 – Seleccionar cualquier objeto y seleccionar  Business Objects ¬ Co El objeto seleccionado debe tener los eventos INPUTERROROCCU 3 – Asignar un nombre al Tipo de Objeto y al programa

4 – Hacer doble clic sobre la nueva entrada creada. Seleccionar el íco Modificar el nombre y descripción del objeto de manera que coincida liberar el Tipo de objeto. Crear una nueva tarea basada en el Objeto de Aplicación Idoc

  Observación:  Si al ejecutar este paso, llega a aparecer el mensaje: Falta entrada para sistema NNN, mandante XXX el problema es el siguiente:

Las tareas y papeles, así como las definiciones workflow necesitan sistema y el mandante. De esta manera es posible realizar un tran sistema a otro, en todo momento y sin restricciones. Desde el punt uniformidad se realiza mediante un "número prefijo". Para cada puede definirse un número prefijo propio. Esto se realiza en la ta La transacción es la OOW4. 

Una tarea de workflow define los atributos de la tarea que debe ser ej aplicación. Una tarea apunta a un método a ser ejecutado y a un event tarea. La mejor opción para definir una nueva tarea es copiar una existente, (TS00008046). 1 – Ejecutar la transacción PFTC_COP.

 

Transacción: PFTC_COP ¬ Desarrollo ¬ SAP

Business Workflow ¬Camino Lógico: Herramie Tareas ¬Herramientas def.

Seleccionar Tarea estándar para el tipo de tarea e ingresar algún núm tarea. Seleccionar el ícono Copiar.  2 – Ingresar una abreviatura y nombre para la tarea. Presionar  Enter.  Tomar nota del número creado (ejemplo: 90000001). Ejemplo de Sigla y Denominación: Sigla: ZQOTE_ERROR  Denominación: ZQOTE Error de Entrada 3 – Ejecutar la transacción PFTC_CHG. Transacción: PFTC_COP ¬ Desarrollo ¬ SAP

Business Workflow ¬Camino Lógico: Herramie de Tareas ¬Herramientas def.

Seleccionar Tarea estándar como tipo de tarea, y el número de tarea Seleccionar Modificar.   4 – Reemplazar el campo Tipo de Objeto con el Objeto de aplicación ZIDOCZQOTE.

5 – El siguiente paso es modificar el evento de Triggering. Selecciona

Desencadenantes. Borrar el/los eventos existentes y crear otro basado Tipo de Objeto: ZIDOCZQOTE Evento: INPUTERROROCCURRED INPUTERROROCCURRED 6 – Debe ahora definirse el link de datos entre el evento de triggering correspondiente al evento de triggering y presionar el ícono Defin. Fl  propuestos para los campos Expresión y Excepción.   7 – Activar el link  8 – Definir ahora el evento de terminación. Seleccionar la solapa Eve Borrar el eventos existente y crear otro basado en el Tipo de Objeto:

 

Tipo de Objeto: ZIDOCZQOTE Evento: INPUTFINISHED Elemento: WI OBJECT_ID OBJECT_ID (la única opción disponible) 9 – Definir la tarea como Tarea General de modo tal que pueda ser ej Datos adicionales ¬ Asign. Responsable ¬ Actualizar. Seleccionar la

- Configuración de la Interfaz de entrada Luego de definir la configuración de workflow, deben llevarse a cabo configuración del proceso de entrada: 1 - Definir un nuevo tipo de mensaje. 2 - Relacionar el tipo de mensaje al tipo de IDoc. 3 - Asignar el módulo de función al tipo de mensaje lógico y Idoc. 4 - Definir los atributos para el módulo de función de entrada. 5 - Definir un nuevo Código de Operación. 6 - Asignar métodos de entrada. 7 - Definir o modificar un acuerdo de interlocutor . 8 - Definir Puerta. 9 - Definir Módulo de Función. Definición de mensaje  Transacción: WE81 Camino Lógico: Desde el área de menú de EDI (transacción (transacción Tipos de mensaje Menú SAP

En este paso se asigna un tipo de mensaje a los contenidos del IDoc y Definir un tipo de mensaje. Por ejemplo: ZQUOTE (Oferta). Ver detalles del procedimiento más arriba en este mismo documento: Mensaje  Relación entre el tipo de mensaje y el tipo de Idoc 

Transacción: WE82

 

Camino Lógico: Desde el área de menú de EDI (transacción WEDI), selecciona IDoc / Mensaje

En este paso se asigna el tipo de mensaje creado en el paso anterior al Para este ejemplo, relacionar el tipo de mensaje (ej: ZQUOTE) con e ZQUOTE01). Ver detalles del procedimiento más arriba en este mismo documento: Mensaje y un Tipo Base de IDoc.   Relación entre el módulo de función y el tipo de mensaje 

Transacción: WE57  WE57  Camino Lógico: Desde el área de menú de EDI (transacción WEDI), Obj.Apl.¬Desarrollo Esta configuración establece un link entre el módulo de funciones, va mensaje, variante lógica de mensaje y función lógica de mensaje).

Observación : En el caso de mensajes de salida, esta relación es establ interlocutor. Para mensajes de entrada, no existe entrada para el tipo d interlocutor, por lo que esta configuración es usada para establecer un object válidos para el módulo de función. 1 – Crear un módulo de función (o sea una función). No es recomend alguna existente, ya que los parámetros de la función son estándar. Por ejemplo, copiar el módulo de función IDOC_INPUT_ORDERS a asignarlo a algún grupo de funciones Z. 2 – Crear una nueva entrada en la transacción WE57. Los valores de Módulo, Tipo Base, Tipo Mensaje y Tipo Objeto most ejemplo, pero el Tipo y Sentido se deben respetar. Módulo: Tipo: Tipo Base:

Z_IDOC_INPUT_ZQUOTE F (módulo de función) ZQUOTE01

Tipo Mensaje: ZQUOTE Tipo Objeto: Sentido:

ZIDOCZQOTE 2 (Salida)

 

font size = "4">Definir atributos del Módulo de Función Transacción: BD51 Camino Lógico: Lógico: Herramientas => Desarrollo ALE =¬ALE > IDoc = de Funciones => Actualizar atributos Crear una nueva entrada, con el siguiente detalle: Módulo de función de entrada: Z_IDOC_INPUT_ZQUOTE Z_IDOC_INPUT_ZQUOTE

Tipo de Entrada: 2 (Entrada indiv. Con bloqueo de IDoc en transacció Diálogo posible: X El flag de diálogo posible indica si el IDoc puede ser procesado en m Si esta opción está seteada, el usuario puede reprocesar el juego de da Definición de Código de Operación

Transacción: WE42 Camino Lógico: Desde el área de menú de EDI (transacción WEDI), proceso de¬ Parametrizaciones Entrada ¬ Desarrollo ¬Menú SAP e En este paso se asigna el código de operación de proceso al módulo d de entrada. El código de operación de proceso es un medio indirecto función.

Definir el código de operación (Ej: ZQUOT), según el siguiente detal Descripción: Módulo de Función: Cantidad máxima de repeticiones:

Oferta  Z_IDOC_I  2 

Marcar el flag Proceso con servicio ALE   Marcar el flag Procesamiento c. Módulo de funciones   Asignar métodos de entrada 

Transacción: BD67 Este paso crea un link entre el código de proceso definido en el paso Además, se definen parámetros adicionales que la componente de wo errores, así como programación avanzada de workflow.

 

Definición de Acuerdo de Interlocutor 

Transacción: WE20 Camino Lógico: Desde el área de menú de EDI (transacción WEDI), Acuerdo entre interlocutores EDI.¬  Crear un Acuerdo de Interlocutor con la siguiente información: Nro. Interlocutor EDI: Tipo de Interlocutor EDI: Tipo de Autor: Autor:

Poner el nombre del sistema lógico qu LS (sistema lógico) US (Usuario) (el Id del usuario que lo está crean

Presionar Grabar. Adicionar parámetro de entrada con la siguiente información: Opciones de Salida: Tipo de interlocutor EDI: Función interlocutor EDI: Tipo de mensaje: Cód. Oper.: Verif. Sintax.: Lanzamiento inmediato:

LS LS ZQUOTE ZQUOT 3 

Definición de Puerta 

Transacción: WE21 Camino Lógico: Desde el área de menú de EDI (transacción WEDI), Puerta¬Gestión Se crea una puerta, (Ejempo EDI_ZQOT02) de tipo fichero, para defi vez generado y transmitido a la puerta de salida. Datos de la puerta de fichero: 1. Directorio físico: 2. Fichero de salida:

ZQUOTE02

X "

Definición de Módulo de Función

Un módulo de función de entrada de Idocs tiene la siguiente secuenci

 

1 – Leer la información del registro de control. Verificar la informaci el tipo de mensaje es incorrecto, generar una excepción. 2 - Leer los datos para un IDoc. 3 – Procesar cada registro de datos. 5 – Completar los parámetros de retorno. 6 – Si existen otros IDocs, volver al paso 2. Si no, ir al paso 7. 7 – Retornar del módulo de función. Los resultados de la ejecución so En general, los módulos de funciones que reciben Idocs tienen los sig Import parameters 

Reference field 

INPUT_METHOD

BDWFAP_PAR-INPUTMETHD

MASS_PROCESSING

BDWFAP_PAR-MASS_PROC

Export Parameters 

Reference field 

WORKFLOW_RESULT

BDWFAP_PAR-RESU

APPLICATION_VARIABLE

BDWFAP_PAR-APPL_

IN_UPDATE_TASK

BDWFAP_PAR-UPDA

CALL_TRANSACTION_DONE

BDWFAP_PAR-CALL

Table Parameters 

Reference field 

IDOC_CONTRL

EDIDC

IDOC_DATA

EDIDD

IDOC_STATUS

BDIDOCSTAT

RETURN_VARIABLES

BDWFRETVAR 

SERIALIZATION_INFO

BDI_SER 

Exceptions 

Op

 

WRONG_FUNCTION_CALLED A continuación se detalla genéricamente el código de procesamiento puede ver que realiza los pasos mencionados más arriba. * DECLARACION DE DATOS    DATA: C_SEGNAM(10) TYPE C VALUE 'Z1INVRV'.

*RECORRE EL/LOS IDOC/S DE CABECERA    LOOP AT IDOC_CONTRL.   * RECORRE LOS SEGMENTOS DE DATOS PARA CADA UNA DE LAS  * CABECERAS DE IDOCS (REGISTROS DE CONTROL)  LOOP AT IDOC_DATA WHERE DOCNUM = IDOC_CONTRL-DOCNUM.

* *

  SEGUN EL SEGMENTO, GUARDA LOS DATOS EN  UNA DETERMINADA ESTRUCTURA Y LO PROCESA. CASE IDOC_DATA-S IDOC_DATA-SEGNAM. EGNAM. WHEN C_SEGNAM. IT_Z1INVRV = IDOC_DATA-S IDOC_DATA-SD D PERFORM F_PROCESAR_XXXX

... ... ...

WHEN C_XXXXXX. IT_XXXXXXX = IDOC_DATA-S IDOC_DATA-SD D PERFORM F_PROCESAR_NNNN   ENDCASE. ENDLOOP."LOOP AT IDOC_DATA   

*

GUARDA EL RESULTADO DE LA EJECUCION PARA EL IDO  PERFORM UPDATE_IDOC UPDATE_IDOC_STATUS. _STATUS.

ENDLOOP."LOOP AT IDOC_CONTRL. 

********************************************************   * FORMS  ********************************************************   FORM F_PROCESAR_XXXX  F_PROCESAR_XXXX 

* Acá insertar la lógica necesaria para el procesamiento ENDFORM.  ENDFORM.  

*------------------------------------------------------* FORM UPDATE_IDOC_STATUS  UPDATE_IDOC_STATUS  *------------------------------------------------------* ........ *-------------------------------------------------------

 

FORM UPDATE_IDOC_STATUS.  UPDATE_IDOC_STATUS. 

*--- Now we check the CALL TRANSACTION return code and s CLEAR IDOC_STATUS IDOC_STATUS. . IF RETURN_CODE = 0. WORKFLOW_RESULT WORKFLOW_RES ULT = '0'. IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM. IDOC_STATUS-STATUS = '53'. IDOC_STATUS-UNAME IDOC_STATUSUNAME = SY-UNAME. IDOC_STATUS-REPID = SY-REPID. IDOC_STATUS-REPID IDOC_STATUS-MSGTY IDOC_STATUSMSGTY = SY-MSGTY. IDOC_STATUS-MSGID IDOC_STATUSMSGID = SY-MSGID. IDOC_STATUS-MSGNO IDOC_STATUSMSGNO = SY-MSGNO. IDOC_STATUS-MSGV1 IDOC_STATUSMSGV1 = SY-MSGV1. IDOC_STATUS-MSGV2 IDOC_STATUSMSGV2 = SY-MSGV2. IDOC_STATUS-MSGV3 IDOC_STATUSMSGV3 = SY-MSGV3. IDOC_STATUS-MSGV4 IDOC_STATUSMSGV4 = SY-MSGV4. RETURN_VARIABLES-WF_PARAM = 'Processed_I RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTR APPEND RETURN_VARIABLES. ELSE.

WORKFLOW_RESULT = '99999'. WORKFLOW_RESULT IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM. IDOC_STATUS-STATUS = '51'. IDOC_STATUS-UNAME IDOC_STATUSUNAME = SY-UNAME. IDOC_STATUS-REPID IDOC_STATUSREPID = SY-REPID. IDOC_STATUS-MSGTY IDOC_STATUSMSGTY = SY-MSGTY. IDOC_STATUS-MSGID IDOC_STATUSMSGID = SY-MSGID. IDOC_STATUS-MSGNO IDOC_STATUSMSGNO = SY-MSGNO. IDOC_STATUS-MSGV1 IDOC_STATUSMSGV1 = SY-MSGV1. IDOC_STATUS-MSGV2 IDOC_STATUSMSGV2 = SY-MSGV2. IDOC_STATUS-MSGV3 IDOC_STATUSMSGV3 = SY-MSGV3. IDOC_STATUS-MSGV4 IDOC_STATUSMSGV4 = SY-MSGV4. RETURN_VARIABLES-WF_PARAM = 'ERROR_IDOCS' RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTR APPEND RETURN_VARIABLES. ENDIF. APPEND IDOC_STATUS. ENDFORM." ENDFORM. " UPDATE_IDOC_STATUS 

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF