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 Actual »

11.2.2.1 Descripción general de implementación (IS-U)

Todas las ampliaciones de mapeo siguen un protocolo común a la hora de su implementación.
En primer lugar se comprueba en el excel de mapeos (suministrado en la documentación técnica de la herramienta) cuál es la asignación que se hace por defecto para cada campo. Si esta coincide con la propuesta del cliente de la implantación, entonces no hay que efectuar ninguna modificación adicional. Si por el contrario la propuesta difiere, hay que determinar si existe una ampliación de tipo BAdI que nos permita cambiar el mapeo para que tome el valor solicitado.
Todas las BAdIs que se pueden utilizar para cambiar los mapeos por defecto están agrupadas en el punto de ampliación /EDGE/SII_MAPEOS_ISU.

Partiendo de este repositorio de ampliaciones y comprobando el código del método GET_ESTRUCTURA_XML de la clase que aplique al mapeo del campo en cuestión podemos determinar la existencia (o no) de una alternativa de ampliación a través de BAdI.
Cada flujo va a tener suministradas una o dos BAdIs. Las finalizadas en el sufijo "_CL" solamente proporcionan una serie de métodos sin código por defecto y que nosotros deberemos completar con el mapeo correspondiente. Las que no tienen sufijo "_CL" suministran un código base por defecto que se puede alterar para ajustarlo a las necesidades de cada cliente.

  • BAdIs con implementación por defecto:
    • /EDGE/BADI_SII_MAPEOS_FE_IS: Esta BAdI es utilizada para campos a mapear en el libro de facturas emitidas IS-U, los métodos que contiene son los siguientes:
      • GET_TIPO_FACTURA: Recupera el tipo de factura.
      • GET_FACTURAS_RECTIFICATIVAS: Recupera las facturas rectificativas.
      • GET_IMPORTE_RECTIFICATIVAS: Recupera el importe de las facturas rectificativas.
      • GET_REGIMEN_ESPECIAL: Recupera el valor del régimen especial.
      • GET_SOCIEDAD: Recupera el valor de la sociedad.
      • SET_SOCIEDAD: Asigna el valor de la sociedad.
      • GET_PERIODO_IMPOSITIVO: Recupera el período impositivo.
      • GET_NUMERO_FACTURA: Recupera el valor de número de factura.
      • GET_BASE_IMPONIBLE: Recupera el valor de la base imponible.
      • GET_DATOS_CONTRAPARTE: Recupera los diferentes datos de identificación de la contraparte (Nombre razón, código de país, NIF, etc...).
      • GET_DESC_OPERACION: Recupera la descripción de la operación.

    • /EDGE/BADI_SII_MAPEOS_FE_SD: Esta BAdI es utilizada para campos a mapear en el libro de facturas emitidas SD, los métodos que contiene son los siguientes:


      • GET_SOCIEDAD: Recupera el valor de la sociedad.
      • SET_SOCIEDAD: Asigna el valor de la sociedad.
      • GET_PERIODO_IMPOSITIVO: Recupera el período impositivo.
      • GET_NUMERO_FACTURA: Recupera el valor de número de factura.
      • GET_DATOS_CONTRAPARTE: Recupera los diferentes datos de identificación de la contraparte (Nombre razón, código de país, NIF, etc...)
      • GET_DESC_OPERACION: Recupera la descripción de la operación.


  • BAdIs sin implementación por defecto:
    • /EDGE/IF_SII_MAPEOS_FE_IS_CLI: Esta BAdI es utilizada para campos a mapear en el libro de facturas emitidas para IS-U, los métodos que contiene son los siguientes:
      • GET_EMISOR_RESUMEN: Recupera resumen de emisor.
      • ES_ALTA_NEGATIVA: Determinación de si es un alta negativa.
      • GET_NIF_REPRESENTANTE: Recupera el NIF del representante.
      • ES_NO_SUJETA: Determinación de si una factura es no sujeta.
      • GET_IMPORTE_NO_SUJETA: Recupera el importe de facturas no sujetas.
      • GET_FACTURAS_AGRUPADAS: Recupera datos de facturas agrupadas.
      • GET_TIPO_RECTIFICATIVA: Recupera el tipo de factura rectificativa.
      • GET_CAUSA_EXENCION: Recupera campo de la causa de exención.
      • GET_ENTREGA_O_SERVICIO: Recupera las entregas y servicios para el desglose por tipo de operación en el caso que aplique.

    • /EDGE/BADI_SII_MAPEOS_FE_SD_CL: Esta BAdI es utilizada para campos a mapear en el libro de facturas emitidas para SD, los métodos que contiene son los siguientes:


      • GET_EMISOR_RESUMEN: Recupera resumen de emisor.
      • ES_ALTA_NEGATIVA: Determinación de si es un alta negativa.
      • GET_NIF_REPRESENTANTE: Recupera el NIF del representante.
      • ES_NO_SUJETA: Determinación de si una factura es no sujeta.
      • GET_IMPORTE_NO_SUJETA: Recupera el importe de facturas no sujetas.
      • GET_FACTURAS_AGRUPADAS: Recupera datos de facturas agrupadas.
      • GET_TIPO_RECTIFICATIVA: Recupera el tipo de factura rectificativa.
      • GET_CAUSA_EXENCION: Recupera campo de la causa de exención.
      • GET_ENTREGA_O_SERVICIO: Recupera las entregas y servicios para el desglose por tipo de operación en el caso que aplique.
      • GET_NUM_REGISTRO_ACUERDO: Recupera el valor del campo  número de registro acuerdo facturación.
      • GET_TIPO_FACTURA: Recupera el tipo de factura.
      • GET_REGIMEN_ESPECIAL: Recupera el valor del régimen especial.
      • GET_FACTURAS_RECTIFICADAS: Recupera las facturas rectificativas.
      • GET_IMPORTE_RECTIFICATIVAS: Recupera el importe de las facturas rectificativas.
      • GET_BASE_IMPONIBLE: Recupera el valor de la base imponible.
      • GET_TIPO_NO_EXENTA: Recupera el valor del campo tipo no exenta.


De no existir una alternativa de ampliación vía BAdI para el campo hay que valorar la opción de implementar una clase Z como hija de la clase /EDGE/CL_EDOC_SII_MAP_IS_L. Una vez hecho esto, redefiniríamos el método GET_ESTRUCTURA_XML utilizando el método super para reutilizar la lógica existente con las modificaciones que consideremos necesarias o directamente volver a escribirlo por completo. Otra posibilidad es crear una ampliación POST u OVERWRITE sobre el método GET_ESTRUCTURA_XML.






  • Sin etiquetas