En esta ocasión quiero platicarte de una funcionalidad muy pero muy útil que tiene el sistema ABAP, y esta es la comparación de versiones de código.
Recordemos que el worbench de ABAP tiene su propio compilador, el cual se ejecuta al momento que activamos nuestro programa, y cuando hacemos esto genera una versión activa del mismo, esto permite que el programa se pueda ejecutar mientras nosotros seguimos editando el código, ya que la ejecución trabaja con la versión activa y nosotros estamos modificando una versión inactiva.
Pero la intención de esta entrada no es hablar de esa parte técnica si no de otra funcionalidad que pone a disposición la gestión de versiones, esta es; la posibilidad de correr una comparación de las versiones activas del programa en los diferentes ambientes que podamos tener, podrás preguntarte...
¿Y para qué me sirve esto?
Bueno realmente esto va a depender del entorno en el que tengas que trabajar, si eres el único que hace mantenimiento al código podrías pensar que no hay mucho problema en eso... lo cual no necesariamente puede ser cierto.
Pero hablando de situaciones en las que formas parte de un equipo de trabajo donde diferentes desarrolladores pueden tocar el código, o en entornos como el clúster de nómina, que por su naturaleza en un solo include puedes tener aplicada una gran cantidad de soluciones, esto se vuelve una herramienta fundamental para evitar transportar cambios que no son los que tu estas supervisando o ejecutando y evitar problemas en sistema productivo.
Bueno, al grano...
Para ejecutar esta comparación de programas, lo que tenemos que hacer primero es ir a la transacción SE80, abrir el programa en cuestión y movernos al menú Utilidades - versiones - gestión de versiones.
Dentro de la pantalla que nos desplegará, podremos ver este menú, tomaremos la opción "comparación REMOTE"
Nos aparecerá esta pantalla y tendremos que ingresar el mandante que compararemos.
Se nos desplegará en pantalla el código, podemos seleccionar la distribución en columnas donde podremos ver la versión que tenemos en desarrollo y la del target de comparación.
De este punto en adelante, es todo criterio, tendremos que revisar todas las diferencias que se encuentran y analizar los posibles impactos.
Con este procedimiento estamos asegurándonos que el paso al servidor productivo no tendrá un impacto inesperado ya que estamos seguros de lo que esta viajando en el código.