/
Incidencia clases reserva para BAdIs

Incidencia clases reserva para BAdIs

Importante

Esta incidencia se resuelve en la versión 1.7.5 de producto. Con esta versión instalada no es necesario llevar a cabo este ajuste.


Por error las clases de reserva de las BAdIS de la versión 1.1 del XML (versión 1.7.4 de producto) se han creado con el flag Final marcado. Esto implica que no pueden utilizarse como herencia para otras clases.

Esto es un problema, ya que si se quiere implementar una BAdI, lo correcto sería que la clase Z que la implemente herede de la estándar para reutilizar los métodos que no quieren ser redefinidos.

Para solucionarlo podemos optar por la siguiente solución temporal:

  • Crear una reparación en las clases reserva y desmarcar el flag final:

Clases a reparar /EDGE/CL_SII_MAPEOS_FE_1_1, /EDGE/CL_SII_MAPEOS_GEN_1_1 y /EDGE/CL_SII_MAP_FE_FICA_11 (esta última si aplica ISU).

Transacción SE24. Introducir nombre de la clase estándar a reparar. Pulsar modificar.

Si el área de nombres está cerrado en el sistema, no se podrá modificar un objeto estándar /edge/. Él mensaje que saldrá será el siguiente:

Para poder editar este objeto estándar ir a la transacción SE06 y pulsar Opc.p.modif.sistema:

 

Buscar el área de nombres /EDGE/ que estará en "No Modificable":

Cambiarlo a "Modificable" y guardar.

Volver a la clase /EDGE/CL_SII_MAPEOS_GEN_1_1 y pulsar modificar de nuevo. Esta vez el mensaje que saldrá será el siguiente:

A partir de este momento, la clase estándar ya puede ser modificada.

En la pestaña de propiedades, desmarcar el check FINAL:

Activar la clase.

Al guardar y activar se guardarán los cambios en una orden de reparación que deberá ser transportada a los diferentes entornos para su correcto funcionamiento.


Esta incidencia se corregirá en la versión 1.7.5 de manera que, cuando se importe la nueva versión 1.7.5, "machacará" esta reparación volviendo así al objeto estándar /EDGE/ con el ajuste correcto de la clase "No Final".

Si durante la fase SPAU del nuevo SP durante la instalación de la versión 1.7.5 salta este objeto, se puede volver al original (restaurar original) para que la clase estándar vuelva a ser la definida desde producto e ignore las reparaciones hechas en el sistema.

De esta manera, durante el tiempo en el que la versión 1.7.4 esté activa en el sistema, esta incidencia queda resuelta, y en el momento de la subida a la 1.7.5, los objetos estándar volverán a establecerse según lo definido en producto con la corrección.





Avvale 2024