4.2. - Configuración de un Idoc
4.2.1. - Estructura de un Idoc
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. Consiste en la secuencia de tres tipos de registros.
Registros
1. Registro de control
a. Contiene toda la información administrativa del Idoc, como el origen, el destinatario y qué tipo de Idoc es. Sería algo así como el sobre que acompaña a cualquier carta.
b. Este registro es muy importante, ya que es necesario para saber cuál será el destinatario del Idoc. La tabla SAP donde se guardan es la EDIDC.
c. 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.
d. La estructura del registro de control está definida por la estructura del diccionario EDI_DC40.
e.
2. Registro de datos
a. Los registros de datos se guardan en la tabla EDISD4 en un campo de 1000 caracteres. Para saber interpretar esa cadena, el registro cuenta con un campo que informa cual es la estructura con la que se deben interpretar los datos.
b. Un Idoc puede contener múltiples registros de datos según haya sido definida la estructura del tipo de Idoc.
c. La estructura de los registros de datos está definida por la estructura del diccionario “EDI_DD40”.
d.
3. Registro de status
a. Este segmento informa de los diferentes status por lo que va pasando el mensaje en cuestión, hasta que finalmente es procesado correctamente. Si el receptor reporta un error de comunicaciones, se dispara el manejo de excepciones mediante un workflow, donde será informado el responsable del Idoc. Este paso es opcional.
b. Los registros de status contienen información de estado, 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.
c. La estructura de los registros de estado, está definida por la estructura del diccionario “EDI_DS40”.
d. Se almacenan en la tabla EDIDS.
e.
4.2.2. - Segmentos de datos
Un registro de datos o segmento de datos define el formato de los datos que se enviarán o recibirán a través de un Idoc. Un Idoc puede tener definidos uno o más segmentos de datos. Un segmento de datos es en sí una estructura, por lo que se podrá visualizar en la transacción SE11.
La estructura es:
En ambos tipos, la información debe ser enviada siguiendo el orden de los segmentos ya que sino fallará el Idoc.
Idocs jerárquicos
Los segmentos hijos están ubicados debajo de sus padres. Deben respetar la secuencia en la que se introducen al mensaje. La información de la jerarquía está guardada en los campos de control del segmento.
Idocs no jerárquicos
Los segmentos deben ubicarse por tipos, no por jerarquía de padres e hijos. Se relacionan por medio de un valor del segmento de datos.
4.2.3. - Tipo base
También llamado tipo Idocs, define la estructura de los datos de aplicación del Idoc. Es la estructura de los datos que se transfieren entre sistemas. Una extensión de un tipo base es un concepto muy similar al de las estructuras Append con las tablas estándar de SAP. Se utilizan para añadir dentro de un segmento estándar campos Z. Distintos tipo base pueden utilizar los mismos segmentos.
Desde la transacción WE30 se puede ver el formato de los tipo base.
4.2.4. - Tipo de mensaje
Es una vista del tipo Idoc. Representa al objeto de negocio.
El tipo de mensaje puede estar compuesto por diferentes tipos base. Esto se debe a que el mismo objeto de negocios puede ser enviado a diferentes sistemas, con diferente estructura. Incluso diferentes versiones de SAP R/3 generaron diferentes tipos de Idocs.
Para crear un tipo de mensajes utiliza la transacción WE81.
Los tipos de mensajes que se crean, se almacenan en la tabla estándar EDMSG. Los tipos base que se crean se almacenan en la tabla estándar EDBAS.