Ir al final de los metadatos
Ir al inicio de los metadatos

Estás viendo una versión antigua de esta página. Ve a la versión actual.

Comparar con el actual View Version History

Versión 1 Siguiente »

Clase: /EDGE/CL_FC_XML_TRANSFOR_STEP

Tipo: clase concreta, se puede utilizar directamente en la configuración.

Alcance: transformación de entrada, es decir, este paso permite transformar el archivo XML que representa la factura electrónica a una estructura ABAP más simple.

Precondiciones:

  • Importar la definición del XML, es decir, el XSD, como un WSDL al sistema SAP, de tal forma que se creen los proxies necesarios como si se estuviera publicando un servicio. Esta actividad solo se realiza una vez y debe ser transportada a cada ambiente. La idea es que el Framework ABAP genere una clase y una interfaz con un método, donde al método le entre como único parámetro la definición tal cual del XML. De esta forma se haría uso de herramientas estándar para deserializar el XML y colocarlo en una estructura más simple ABAP.

  • Se debió haber archivado el fichero XML mediante ArchiveLink haciendo referencia al Business Object del proceso.

  • Los siguientes campos en la tabla de facturas electrónicas (/EDGE/FC_TB901) deben estar llenos con los datos correspondientes al fichero XML: IN_XML_AR_OB, IN_XML_OBJID, IN_XML_SAPOB y IN_XML_ARDID.

  • Debe estar configurado el parámetro INTERFACE en los parámetros del intérprete. Ver "Configuración de parámetros o constantes para el intérprete". El valor que debe tener es el correspondiente a la interfaz que se importó mediante el WSDL donde se simuló el servicio con el XSD del XML que se pretende transformar.

  • Debe estar configurado el parámetro METHOD en los parámetros del intérprete. Ver "Configuración de parámetros o constantes para el intérprete". El valor que debe tener es el correspondiente aal método de la interfaz que se importó mediante el WSDL donde se simuló el servicio con el XSD del XML que se pretende transformar.

  • Que el intérprete tenga configurado la transformación. Ver "Configuración específica para cada proceso/intérprete".

  • La transformación configurada en "Configuración de las transformaciones XML de entrada" cumpla con las reglas enunciadas allí.

  • La transformación se basa en que siempre hay unos datos de cabecera y otros de detalle o ítems.

Post-condiciones:

  • Si la transformación se ejecuta de forma satisfactoria, se adicionará una estructura tipo properties en el contexto de la instancia del proceso; de forma tal que se pueda obtener en otro paso de la instancia del proceso.

  • La estructura de retorno se divide en dos: una estructura para la cabecera y otra para el detalle.

  • La estructura de cabecera se puede obtener de la siguiente forma:


  • La estructura de detalle o ítems se puede obtener de la siguiente forma:


  • El estado final se calcula de la siguiente forma:
    Si el resultado de la transformación NO genera excepción, entonces se valida si el proceso estaba en error y en la configuración no tiene asignado un estado final, entonces se asigna como estado final lo que está configurado en el parámetro STATUS_OK_AFTER_ERROR_TRANS, si este parámetro no está configurado, entonces se asigna el estado inicial del intérprete.
    En cualquier otro caso se retorna el estado que se determine según la lógica configurada a nivel funcional para los estados de este paso.
  • Sin etiquetas