Taller - Ale - Idocs Doc

Embed Size (px)

Citation preview

ALE IDOCS

ALE - IDOCS

Confidencial

Softtek 2009

Pgina 1 de 27

ALE IDOCSTabla de contenidosINTRODUCCIN DEFINICIONES.......................................................................................................................3 IDOCS............................................................................................................................................................................5 PROCESAMIENTO..............................................................................................................................................................5 SISTEMAS LGICOS..........................................................................................................................................................6 PUNTEROS DE MODIFICACIN:...........................................................................................................................................7 GENERACIN DE IDOCS DESDE PROGRAMA ABAP:..........................................................................................................9 MODELO DE DISTRIBUCIN. ...........................................................................................................................................11 CREACIN DE CONEXIONES RFC Y PUERTAS.....................................................................................................................12 ACUERDO DE INTERLOCUTORES. ......................................................................................................................................14 EXTENSIN DE IDOCS...........................................................................................................................................16 3.1.CONCEPTO..............................................................................................................................................................16 3.2.CONFIGURACIN PROCESO OUTBOUND. ......................................................................................................................18 3.3.CONFIGURACIN PROCESO INBOUND...........................................................................................................................19 CONFIGURACIN IDOCS Z .................................................................................................................................19 4.1.CONCEPTO..............................................................................................................................................................19 4.2.CREACIN DE SEGMENTOS........................................................................................................................................19 4.3.CREACIN DE IDOC...............................................................................................................................................20 4.4.CREACIN DEL MENSAJE Z........................................................................................................................................21 4.5.ACUERDO DE INTERLOCUTORES..................................................................................................................................23 4.6.EJECUCIN DEL IDOC............................................................................................................................................24 TRANSACCIONES....................................................................................................................................................26 5.1.IDOCS....................................................................................................................................................................26 5.2.PUNTEROS DE MODIFICACIN....................................................................................................................................26

Confidencial

Softtek 2009

Pgina 2 de 27

ALE IDOCS Introduccin DefinicionesALE: Es la tecnologa utilizada por SAP ERP para soportar Procesos de Negocios Distribuidos en aplicaciones y componentes separados dentro del Landscape de la Empresa. Utiliza los Escenarios de Negocio y los mdulos de Funciones que permiten intercambiar datos desde/hacia otro SAP ERP sin la necesidad de realizar desarrollos. Ejemplo de negocio Las empresas a nivel mundial, por lo general estructuran su negocio usando varios clientes en un sistema SAP, a menudo tambin utilizan varios sistemas SAP. Con frecuencia, estos son unidos por sistemas para aplicaciones especficas de otros proveedores.

Una oficina central, filiales y sucursales de ventas y distribucin son, a menudo, sistemas separados tcnicamente. Cada subsistema se comunica no slo con los dems miembros del grupo de sistemas, sino tambin con Partners de negocios, tales como clientes, proveedores, bancos y autoridades pblicas. En el ejemplo que se muestra arriba, los datos maestros para la totalidad de la red de la empresa se crean y se mantienen en la oficina central nicamente. Los nuevos datos maestros y los cambios a los datos existentes son enviados regularmente a los sistemas inferiores de las ramas de distribucin y ventas y produccin. El departamento central de compras requiere a los proveedores, las ramas de ventas y distribucin reciben pedidos de los clientes y enva estos a produccin para que se fabrique. La Comunicacin debe ser electrnica a travs de todos los procesos. ALE puede ser usado dentro de una empresa para la administracin central de datos maestros y transaccionales (entre otros usos): los datos son creados y modificados en slo uno de los sistemas de la red de la empresa. Los datos se distribuyen de este sistema de mantenimiento a los sistemas inferiores, los registros de datos se envan en forma electrnica a cada uno de los destinatarios. Un ejemplo tpico de esto es la administracin centralizada de datos maestros. Confidencial Pgina 3 de 27

Softtek 2009

ALE IDOCSEn el escenario anterior, todos los datos maestros de materiales se crean en la oficina central y son distribuidos desde all hacia los sistemas de ventas, distribucin y produccin. Sin embargo, ventas y distribucin slo debe recibir los registros maestros de productos terminados, mientras que produccin debera recibir, tanto los datos maestros de materiales de producto terminado como de materia prima. Al configurar el escenario ALE, por lo tanto, es importante prestar atencin a la jerarqua de distribucin y, tambin, tener en cuenta el hecho de que no cualquier destinatario recibe todos los datos. En un escenario diferente, los departamentos en el sistema destino, son responsables del mantenimiento de ciertas partes de un registro maestro. En este caso, el registro maestro no deber ser transferido en su totalidad, o tiene que haber una garanta de que los valores modificados localmente no pueden sobrescribirse si los registros de datos se transfieren de nuevo. EDI: Permite la comunicacin de procesos de negocios entre aplicaciones SAP R/3 y sistemas externos. Se quiere comunicar electrnicamente no slo al interior de la empresa, sino tambin con sus socios comerciales. De esta manera, los datos de una orden creada en su propio sistema, puede ser transferida electrnicamente a un proveedor, quien, a su vez, enva una confirmacin de pedido, una confirmacin de embarque y, finalmente, una factura.

Generalmente, el intercambio de datos con partes externas (es decir, socios de negocios, bancos, o agencias de gobierno etc.), se realiza mediante el Intercambio Electrnico de Datos (Electronic Data Interchange EDI), no con ALE. Un documento electrnico es enviado en un formato especfico de SAP, desde un sistema SAP a un subsistema EDI, llamado convertidor. El subsistema convierte este documento a un documento EDI, y lo enva al proveedor. IDOCS: Son documentos (finalmente archivos planos) con una estructura definida, es la estructura donde se van a guardar los datos a enviar a los sistema back-end en un escenario de integracin ALE. Permiten intercambiar informacin entre distintos sistemas. Un IDOC es por ej. Los datos de un proveedor o una oferta. IDOC -> ALE -> Sistema back-End(SAP) Confidencial Softtek 2009 Pgina 4 de 27

ALE IDOCS

Su estructura esta definida de la siguiente manera: Cabeceras (Segmento de Control) - EDIDC Numero de Idoc, Tipo de Mensaje, Nombre de Idoc asociado, datos de usuario, etc Segmentos (Segmento de Datos) - EDID4 Nombre del Segmento, informacin en campo SDATA (Char 1000 Caracteres) Status (Segmento de Estado) EDIDS Historial con los distintos estados por los que fue pasando el IDOC en el sistema Se generan Mediante: Datos Maestros: Punteros de Modificacin Envo Forzado a travs de Programas Standards o Z Datos de Customizing: A partir de Modificaciones en la SPRO Datos Transaccionales Control de Mensajes (MM y SD) Workflow (Eventos) Programas Especficos (FI Ej : Programa de Pagos) Desarrollo de programas (Z) Outbound - Funcin MASTER_IDOC_DISTRIBUTE Inbound - Funcin EDI_DATA_INCOMING Resumiendo los IDOCS son documentos, que se generan a partir de ciertos cambios en objetos de negocio definidos, y que luego mediante la capa ALE, esta informacin contenida en el IDOC , ser transferida a los sistemas definidos dentro del modelo ALE.

IDOCSProcesamientoEl procesamiento de un IDOC puede ser de 2 tipos: Outbound Inbound

Outbound: Son los IDOCS que son enviados desde el sistema destino hacia el sistema receptor, se crean a partir de punteros de modificacin, mensajes o mediante programas Z. Un proceso Outbound incluye: Creacin de Documento/Objeto en SAP Creacin IDOC relacionado con documento creado Identificacin de Interlocutor y Puerta Transferencia de IDOC a Sistema Externo va puerta

Inbound: Son los IDOCS que son recibidos el es sistema destino, es decir un mismo IDOC ser de OUTBOUND en el sistema de origen y ser de INBOUND en el sistema destino.

Confidencial

Softtek 2009

Pgina 5 de 27

ALE IDOCS

Un procesamiento de Inbound Incluye: Identificacin de Interlocutor y Puerta de Entrada Creacinde IDOC en Sistema Contabilizacin del documento/Objeto en SAP a partir del IDOC de entrada

Los IDOCS tanto de Inbound como Outboud van pasando por distintos estados desde el momento de su creacin hasta el envi a los sistema destino. El estado del IDOC forma parte de la estructura de informacin del mismo, en caso de error, el anlisis del segmento de estado nos dar una clara idea del tipo de error ocurrido en el procesamiento del IDOC.Estado 01 03 30 12 29 39 40 41 50 51 53 62 64 68 69 70 Significado IDOC creado Transferencia de datos a puerta OK IDoc listo para envo (servicio ALE) Expedicin OK Error en servicio ALE IDOC en sistema destino (servicio ALE) Documento de aplicacin no creado en sistema destino Documento de aplicacin creado en sistema destino IDOC aadido No se ha contabilizado documento de aplicacin Documento de aplicacin contabilizado Traspasar IDOC a aplicacin IDOC listo para traspaso a la aplicacin Error, sin tratamiento posterior El IDOC se ha tratado Original de un IDOC que se ha tratado

Sistemas LgicosSon los distintos sistemas que se van a comunicar en un escenario de integracin ALE-IDOC, los sistemas lgicos se dan de alta en la transaccin BD54, el nombre de los sistemas lgicos los podemos obtener mediante la transaccin SCC4, debemos dar de alta el sistema lgico del emisor y el del receptor.

Confidencial

Softtek 2009

Pgina 6 de 27

ALE IDOCSBD54:

SCC4:

Punteros de Modificacin:Cada vez que se crean o modifican datos maestros, tal como datos maestros de materiales, proveedores, etc., el sistema escribe "punteros de modificacin" (change pointers) como registro de cada una de estas modificaciones para cada documento. El reporte estndar RBDMIDOC es ejecutado a fin de procesar todas las entradas en la tabla de punteros de modificacin. Para generar los IDocs, este programa llama a un mdulo de funcin especifico para cada mensaje. Activar los punteros de modificacin en forma global. Activar los punteros de modificacin para nuestro tipo de mensaje. Definir los campos relevantes para la generacin de punteros de modificacin. Relacionar el tipo de mensaje con el mdulo de funcin. Crear un mdulo de funcin para leer los punteros de modificacin y crear los Idocs.

Activacin de punteros de modificacin en forma global Transaccin: BD61 Marcar el Flag: Puntero modificacin general activado y grabar.

Confidencial

Softtek 2009

Pgina 7 de 27

ALE IDOCS

Activacin de punteros de modificacin por Tipo de Mensaje Transaccin: BD50 Agregar una entrada para el mensaje deseado, y marcarla como activa.

Definicin de campos relevantes para la generacin de Punteros de Modificacin Transaccin: BD52 Ingresar entradas para los campos sobre los cuales se quieran crear Punteros de Modificacin, por Ej utilizar un campo Z como puntero de modificacin Primero completar el tipo de mensaje y presionar continuar. Luego se desplegar una pantalla para ingresar los campos: - Objeto de Modificacin -Tabla -Campo Relacin entre el Tipo de Mensaje y el Mdulo de Funcin Transaccin: BD60 En este paso se relaciona el tipo de mensaje con el mdulo de funcin desarrollado para analizar/procesar los punteros de modificacin. Ejecutar la transaccin BD60 e ingresar una entrada para el tipo de mensaje deseado, y el mdulo de funcin que se utilizar para procesar ese Puntero de Modificacin. En otras palabras, cuando se ejecute el programa estndar RBDMIDOC para procesar los Punteros de Modificacin y se detecte que uno de los campos que se insertaron en el paso anterior (campos relevantes para la generacin de Punteros de Modificacin) se modific, se invocar a la funcin que se est definiendo en este paso.

Confidencial

Softtek 2009

Pgina 8 de 27

ALE IDOCSCrear un mdulo de funcin para leer los punteros de modificacin y crear los Idocs Esta funcin contiene la lgica para la generacin de los IDocs a partir de punteros de modificacin. Es invocada desde el programa RBDMIDOC, a partir de la configuracin realizada en el punto anterior. La lgica del programa contiene los siguientes pasos: 1- Leer los punteros de modificacin generados usando la funcin CHANGE_POINTERS_READ. 2- Analizar los punteros de modificacin para determinar cules documentos son vlidos. 3- Determinar la clave del documento de aplicacin del paso 2. 4- Seleccionar datos de aplicacin de la base de datos, usando la clave de objeto identificada en el paso 3. 5- Completar la informacin del registro de control del IDoc. 6- Completar una tabla interna de estructura EDIDD con registros de datos para todos los segmentos. 7- Llamar al servicio de la capa ALE (MASTER_IDOC_DISTRIBUTE) para crear los datos en la base de datos. 8- Actualizar el estado de los punteros de modificacin 9- Ejecutar un COMMIT WORK. Generalmente se utiliza una funcin estndar, salvo que se est extendiendo un Idoc. Igualmente, en caso de estar extendiendo, lo que se hace generalmente es copiar una funcin estndar y agregarle la lgica necesaria para que se considere el segmento extendido al momento de crear el Idoc, o implementar un USER-EXIT o BADI en la funcin estndar para cargar los segmentos de la ampliacin. Creacin de Idocs desde un Mensaje de Logstica El proceso lgico de generacin de Idocs de salida desde Mensajes de Logstica es el siguiente: Un programa ABAP (desarrollo Z) o transaccin estndar crea un mensaje en la tabla NAST. El mensaje es procesado por el programa ABAP estndar RSNAST00, el cual lee el mensaje desde la tabla NAST, y llama al mdulo de funcin adecuado para crear el Idoc, invocando a la funcin MASTERIDOC_DISTRIBUTE. El Idoc es enviado a su destinatario al ejecutar el programa RSEOUT00. Se puede usar el concepto de Mensajes R/3 para disparar la creacin de Idocs de la misma manera que se dispara la impresin de SapScripts. La tabla utilizada para esto es la NAST. Esta tabla guarda recordatorios escritos por aplicaciones. Estos recordatorios son llamados Mensajes (messages). Cada vez que una aplicacin ve la necesidad de pasar informacin a un sistema externo, un mensaje es escrito en la tabla NAST. Un controlador de mensajes (message handler) eventualmente chequear las entradas en esta tabla y ejecutar la accin apropiada. Un mensaje NAST de salida es guardado en un solo registro en la tabla NAST. El registro guarda toda la informacin que es necesaria para crear el Idoc. Esto incluye, entre otras cosas, una clave de objeto para identificar al objeto procesado, el emisor y receptor del mensaje.

Generacin de IDOCS desde programa ABAP:Los pasos a seguir para la creacin de un IDoc de salida desde un programa ABAP son los siguientes: 1- Seleccionar la informacin de la base de datos de acuerdo a los parmetros de seleccin ingresados.

Confidencial

Softtek 2009

Pgina 9 de 27

ALE IDOCS2- Completar la informacin correspondiente al registro de control. 3- Completar una tabla interna de tipo EDIDD con los registros de datos de los segmentos correspondientes. 4- Llamar al servicio de la capa ALE (MASTER_IDOC_DISTRIBUTE) para crear los IDOCs en la base de datos. 5- Ejecutar COMMIT WORK. 6- Enviar el Idoc invocando al programa RSEOUT00. A continuacin se detalla un ejemplo con los pasos 2, 3,4 y 5 * DECLARACION DE DATOS DATA: c_message_type LIKE edidc-mestyp VALUE 'ZINVRV',"Tipo Mensa c_base_idoc_type LIKE edidc-idoctp VALUE 'ZINVRV01',"Tipo de Id c_invrev_segname(7) TYPE C VALUE 'Z1INVRV',"Nombre Seg c_rcvprn LIKE edidc-rcvprn VALUE 'SAPBCD',"Interloc. IDOC_CONTROL LIKE EDIDC, T_COMM_CONTROL LIKE EDIDC OCCURS 0 WITH HEADER LINE, IDOC_DATA LIKE EDIDD OCCURS 0 WITH HEADER LINE. * CAMPOS DE CONTROL DEL IDOC idoc_control-doctyp = c_message_type."Tipo Mensaje idoc_control-mestyp = c_message_type."Tipo Mensaje idoc_control-idoctp = c_base_idoc_type."Tipo de Idoc idoc_control-serial = space. idoc_control-direct = '1'. idoc_control-serial = sy-datum. idoc_control-serial = sy-uzeit. idoc_control-rcvprn = c_rcvprn"Nro Interlocutor Desti idoc_control-rcvprt = 'LS'"Tipo interlocutor dest APPEND idoc_control. * CAMPOS DE DATOS DEL IDOC * Esta seccin la repite una vez por cada registro de datos a insertar * en el IDoc. * Indica cul es el tipo de segmento IDOC_DATA-SEGNAM = C_INVREV_SEGNAME."Nombre Segmento * Completa los datos de la estructura del segmento CLEAR Z1INVRV. Z1INVRV-CAMPO_01 = VALOR_01 ... ... ... Z1INVRV-CAMPO_NN = VALOR_NN * Mueve la estructura con los datos del segmento al nico campo de datos IDOC_DATA-SDATA = Z1INVRV."Datos del Segmento * Inserta el registro actual a la tabla interna de datos del Idoc APPEND IDOC_DATA. Confidencial Softtek 2009 Pgina 10 de 27

ALE IDOCS

*--- Call the distribute function with the required parameters CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE' EXPORTING MASTER_IDOC_CONTROL = IDOC_CONTROL TABLES COMMUNICATION_IDOC_CONTROL = T_COMM_CONTROL MASTER_IDOC_DATA = IDOC_DATA EXCEPTIONS ERROR_IN_IDOC_CONTROL =1 ERROR_WRITING_IDOC_STATUS =2 ERROR_IN_IDOC_DATA =3 SENDING_LOGICAL_SYSTEM_UNKNOWN = 4 OTHERS = 5. if sy-subrc = 0. COMMIT WORK. endif. Una vez completados estos pasos, queda creado el Idoc. El mismo se guarda fsicamente en las tablas EDIDC y EDID4. Se lo puede ver desde la transaccin WE05. Para enviar el Idoc a su destinatario, se invoca al programa RSEOUT00.

Modelo de distribucin.La relacin entre sistemas lgicos, tipos de mensajes, BAPIs y filtros estn definidas en el Modelo de Distribucin. Las aplicaciones y la capa ALE usan el modelo de distribucin para determinar los receptores y para controlar la distribucin de datos. Los escenarios de distribucin definen los tipos de IDocs y los pares de Interlocutores que participan en una distribucin ALE. El escenario de distribucin es la referencia para determinar qu datos sern replicados y quines sern los emisores y receptores. El modelo de distribucin es compartido entre todos los interlocutores participantes. Por lo tanto solo puede ser mantenido en uno de los sistemas, el cual lo podemos llamar el sistema lder. Solo uno de los sistemas es el sistema lder, pero puede ser seteado para cualquiera de los interlocutores en cualquier momento, an si el escenario ya se encuentra activo. El modelo de distribucin se define en la transaccin BD64.

Confidencial

Softtek 2009

Pgina 11 de 27

ALE IDOCS

Creacin de conexiones RFC y Puertas.Destinos RFC: Transaccin SM59 Se define como se va a realizar la conexin con el sistema destino para el envo de los IDOCS Dependiendo del sistema destino, la conexin RFC ser de distinto tipo..

Confidencial

Softtek 2009

Pgina 12 de 27

ALE IDOCS

En el detalle de la conexin RFC definimos los datos tcnicos de la conexin con el sistema destino.

Confidencial

Softtek 2009

Pgina 13 de 27

ALE IDOCSPuertas: Las puertas o puertos son bsicamente los canales por donde los IDOCS circulan en su camino hacia los sistemas destino. Los puertos se configuran en la transaccin WE21.

Los Idocs pueden ser enviados y recibidos a travs de diferentes medios. Con el objetivo de no acoplar la definicin de las caractersticas del medio con la aplicacin que lo est utilizando, el medio es accedido va puertos. En otras palabras, un puerto es un nombre lgico para un dispositivo de entrada/salida. Los programas se comunican con un puerto a travs de una interfaz estndar. Los tipos de puertos ms comunes son los siguientes: Ficheros (File Interface) : Permite intercambiar Idocs a travs de archivos del sistema operativo. El sistema que enva el IDoc crea un archivo en el file system. Luego notifica al sistema receptor va RFC sincrnico que el archivo ha sido transferido, que est localizado en un determinado directorio, y que tiene un determinado nombre. SAP recomienda no usar nombres de archivos estticos, dado que el archivo es sobreescrito cada vez que el Idoc se enva. Se recomienda usar el mdulo de funciones EDI_PATH_CREATE_CLIENT_DOCNUM, el cual genera el nombre del archivo a partir del mandante y nro. de Idoc. RFC Transaccional : Se usa para escenarios de distribucin ALE. El nombre del puerto se puede definir manualmente o dejar que SAP lo elija. Adems del puerto, hay que definir el destino RFC, que se asocia al puerto. Archivo XML: Enva documentos en formato XML. Para utilizar este tipo de puerto, es necesario definir el nombre del puerto, el formato del XML, y el nombre del archivo a generar. Al igual que con el tipo de puerto Fichero, se puede invocar a la funcin EDI_PATH_CREATE_CLIENT_DOCNUM para que genere los nombres del archivo en forma dinmica. XML-HTTP : En vez de definir el nombre del archivo XML, se especifica un destino RFC.

Acuerdo de interlocutores.Un interlocutor ALE es un sistema SAP remoto o un sistema legacy con el que se intercambian datos. El acuerdo de interlocutor especifica varias de las caractersticas de los datos que se intercambian incluyendo el modo de operacin y la organizacin o persona responsable por el manejo de los errores. Cuando los datos son intercambiados entre interlocutores, es importante que el emisor y el receptor estn de acuerdo en la sintaxis y semntica de los datos intercambiados. Este

Confidencial

Softtek 2009

Pgina 14 de 27

ALE IDOCSacuerdo es lo que se llama Acuerdo de Interlocutor, y es lo que le informa al receptor de la estructura de los datos enviados y cmo los contenidos deben ser interpretados. La datos definidos en un acuerdo de interlocutor son: Tipo de Idoc y Tipo de mensaje, los cuales son el identificador clave del acuerdo de interlocutor. Nombre del Emisor y Receptor que intercambiarn los Idocs para el tipo de Idoc y mensaje. Puerto por el cual el emisor y el receptor se comunicarn. En el interlocutor se definen datos especficos de cada mensaje a transmitir en los parmetros de salida o entrada segn corresponda. Mediante la transaccin WE20 se crea el acuerdo de interlocutor con el sistema lgico.

Confidencial

Softtek 2009

Pgina 15 de 27

ALE IDOCS

Extensin de IDOCS3.1. ConceptoLas ampliaciones de IDocs son componentes que se utilizan para extender tipos de IDoc base, ya existentes, de una forma predefinida. Estas extensiones slo pueden ser realizadas por el cliente ya que los tipos de ampliacin no son proporcionados por SAP. Para crear un tipo de ampliacin: Transaccin: WE30. En el editor de IDOC, elegir el componente Tipo de ampliacin e introducir el nombre en el campo Objeto.

Seleccionar Objeto desarrollo Crear. En ste momento, la ventana de dilogo Crear un tipo de ampliacin se mostrar por pantalla. Elegir una de las siguientes tres opciones: Crear nuevo. Crear como copia. Crear como sucesor.

Confidencial

Softtek 2009

Pgina 16 de 27

ALE IDOCS

Introducir los nombres de la personas responsables as como una breve descripcin del nuevo tipo de ampliacin a crear. Seleccionar Continuar. Para aadir segmento ampliado a un segmento de referencia, colocar el cursor sobre el segmento de referencia siguiente a donde se pretenda aadir el nuevo segmento y seleccionar Crear. Aparecer un mensaje indicando que los segmentos creados despus de un segmento de referencia slo pueden ser creados como segmentos hijos.

La secuencia en la cual aparecen los segmentos de referencia en el tipo de ampliacin es irrelevante. Lo realmente importante es que dichos segmentos existan en el tipo de IDoc base que est siendo ampliado.

Una vez creada la ampliacin la misma debe ser liberada

Confidencial

Softtek 2009

Pgina 17 de 27

ALE IDOCS

Las ampliaciones de cliente realizadas utilizando tipos de ampliacin pueden soportarse cuando el sistema se actualice a una nueva versin R/3. Los sucesores a tipos de IDoc base de versiones anteriores se combinan automticamente con los tipos de ampliacin que ya estn siendo utilizados. No se requiere un mantenimiento manual. Los tipos de IDoc base implementados por el cliente y sus ampliaciones permanecen sin cambios en la actualizacin.

3.2.

Configuracin proceso Outbound.

Por cada segmento extendido, tiene que haber una extensin en el cdigo del mdulo de funcin de outbound, que inserte los datos indicados en la extensin del segmento. El programa o funcin que genere el Idoc puede o no ser un estndar SAP. En caso de serlo, habr que insertar el cdigo necesario para manejar las extensiones en una User Exit. Para hacer esto usar la transaccin CMOD. Si es un programa Z, solo habr que actualizarlo para que considere la extensin. Por otro lado, habr que actualizar los Acuerdos de Interlocutores que utilicen el Idoc extendido, especificando el nombre de la extensin creada.

Confidencial

Softtek 2009

Pgina 18 de 27

ALE IDOCS3.3. Configuracin proceso Inbound.

Por cada segmento extendido, tiene que haber una extensin en el cdigo del mdulo de funcin de inbound, que considere el tipo de segmento extendido recibido entre los datos para poder procesarlo. El programa o funcin que genere el Idoc puede o no ser un estndar SAP. En caso de serlo, habr que insertar el cdigo necesario para manejar las extensiones en una User Exit. Para hacer esto usar la transaccin CMOD. Si es un programa Z, solo habr que actualizarlo para que considere la extensin. Por otro lado, habr que actualizar los Acuerdos de Interlocutores que utilicen el Idoc extendido, especificando el nombre de la extensin creada.

Configuracin IDOCS Z4.1. Concepto.Hay casos dependiendo de las necesidades o estructuras de informacin de los procesos de negocio, en los cuales los IDOCS estndar de SAP no nos van a servir. Esta problemtica se soluciona mediante la creacin de un IDOC Z.

4.2. Creacin de Segmentos.Como primer paso debemos crear los segmentos que estarn contenidos en el IDOC Z. Lo segmentos se crean mediante el editor de segmentos, transaccin WE31.

Aqu definimos el nombre del segmento a crear y la estructura de datos del mismo.

Confidencial

Softtek 2009

Pgina 19 de 27

ALE IDOCSCreado el segmento y su estructura de datos debemos liberarlo para que el mismo pueda ser utilizado en la definicin del IDOC Z.

4.3. Creacin de IDOC.Con el segmento correctamente creado y liberado procedemos a la creacin del IDOC, mediante la transaccin WE30.

El IDOC puede ser creado haciendo referencia a uno ya existente o utilizar los segmentos creados en el paso anterior.

Confidencial

Softtek 2009

Pgina 20 de 27

ALE IDOCS

Asignamos el segmento Z creado.

4.4. Creacin del mensaje Z.Como vimos en captulos anteriores todo IDOC estndar esta relacionado a un tipo de mensaje, por ejemplo el caso para la rplica de datos maestros de Proveedores se utiliza el mensaje CREMAS en cual esta relacionado al IDOC CREMAS01, el cual contiene la estructura de datos del proveedore. Confidencial Softtek 2009 Pgina 21 de 27

ALE IDOCSEn el caso de un IDOC Z tenemos que crear el correspondiente mensaje Z como se detalla a continuacin, mediante la transaccin WE81.

Agregamos el mensaje Z.

Ahora debemos enlazar el mensaje creado con IDOC creado en el paso anterior.

Establecemos la relacin entre el tipo del IDOC creado, y el mensaje. Con esto ya tenemos creado el IDOC Z ahora debemos configurar ALE para el IDOC creado.

Confidencial

Softtek 2009

Pgina 22 de 27

ALE IDOCS4.5. Acuerdo de Interlocutores.Cabe aclarar que previo a la creacin del cuerdo de interlocutores, deben crearse los Sistemas Lgicos, el modelo de distribucin y la creacin de conexin RFC y puertas. Estas configuraciones no difieren de las utilizadas en un IDOC estndar. Como vimos anteriormente el acuerdo de interlocutores se define mediante de la transaccin WE20

Ahora solo resta agregar el mensaje y IDOC Z, creados en los pasos anteriores.

Confidencial

Softtek 2009

Pgina 23 de 27

ALE IDOCS

4.6. Ejecucin del IDOCEl IDOC Z puede ser ejecutado desde cualquier aplicacin ABAP, a travs de la funcin MASTER_IDOC_DISTRIBUTE, a continuacin se ejemplifica como se invocara desde un programa ABAP. REPORT ZTEST_IDOC. data: lt_edidc like edidc occurs 0 with header line. data: lt_EDIDD like EDIDD occurs 0 with header line. data: wa_edidc type EDIDC. data: it_Header like ZINVHEADER01. "WE31 DATA: IT_DETAIL LIKE ZINVDETAIL01. "WE31 * Cargo los datos de control wa_edidc-mandt = sy-mandt. wa_edidc-doctyp = 'ZINVOICE' wa_edidc-direct = '1'.-> DIRECCIN OUTBOUND wa_edidc-rcvpor = 'FIINV'."->PUERTA DEL RECEPTOR

Confidencial

Softtek 2009

Pgina 24 de 27

ALE IDOCSwa_edidc-rcvprt = 'LS'. wa_edidc-rcvprn = 'FINVOICE'.-> SISTEMA LGICO RECEPTOR wa_edidc-mestyp = 'ZINVOICE'.-> MENSAJE wa_edidc-idoctp = 'ZINVOICE01'.->TIPO DE IDOC it_Header-BLDAT = '12.02.2003'. it_Header-PAVAL = '133'. lt_edidd-segnum = 1. lt_edidd-segnam = 'ZINVHEADER01'.->SEGMENTO lt_edidd-mandt = sy-mandt. lt_edidd-sdata = IT_HEADER. APPEND lt_edidd. CLEAR lt_edidd. IT_DETAIL-SUBTOTAL = 123. IT_DETAIL-TOTALFAC = 123. IT_DETAIL-ZUONR = '1234'. IT_DETAIL-WRBRT = 123. IT_DETAIL-ZEILE = '12345'. lt_edidd-segnum = 2. lt_edidd-segnam = 'ZINVDETAIL01'. lt_edidd-mandt = sy-mandt. lt_edidd-sdata = IT_DETAIL. APPEND lt_edidd. CLEAR lt_edidd. BREAK-POINT. CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE' EXPORTING MASTER_IDOC_CONTROL = wa_edidc * OBJ_TYPE = '' * CHNUM = '' TABLES COMMUNICATION_IDOC_CONTROL = lt_edidc MASTER_IDOC_DATA = LT_EDIDD * EXCEPTIONS * ERROR_IN_IDOC_CONTROL =1 * ERROR_WRITING_IDOC_STATUS =2 * ERROR_IN_IDOC_DATA =3 * SENDING_LOGICAL_SYSTEM_UNKNOWN =4 * OTHERS =5 . IF SY-SUBRC 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. Una vez ejecutado el programa deberamos acceder a la transaccin WE05 para ver el status del IDOC creado en el paso anterior.

Confidencial

Softtek 2009

Pgina 25 de 27

ALE IDOCS

Transacciones.5.1. IdocsA continuacin se listan las principales transacciones para la configuracin de IDOCS. Transaccin SALE SM59 BD64 WE82 WE21 WE20 WE30 WE60 WE19 WE05 WE09 BD87 BD73 WEDI Funcin Opciones de customizing de ALE Mantenimiento de conexiones RFC Mantenimiento del Modelo de Distribucin Generar perfiles de interlocutores Mantener acuerdo de Interlocutores Definicin de puertas de Salida Editor de segmentos Descripcin de campos de segmentos Herramienta para testeo de IDOCS Lista de IDOCS procesados Buscar IDOC en base de datos Monitor de status para mensajes ALE Disparar manejo de errores para IDOCS IDOC & EDI Basis

5.2. Punteros de ModificacinConfidencial Softtek 2009 Pgina 26 de 27

ALE IDOCSA continuacin se listan la principales transacciones para la administracin de punteros de modificacin. Transaccin BD50 BD61 BD52 BD21 Funcin Activar puntero para un tipo de mensaje Activar puntero general Agregar campo a mensaje Generar IDOC a partir de puntero de modif.

Confidencial

Softtek 2009

Pgina 27 de 27