¿Cuántos de vosotros no habéis visto alguna vez lo siguiente?
La primera vez que un usuario ejecuta una transacción tras un
cambio realizado sobre dicha transacción SAP ejecuta un proceso de
regeneración. Un cambio en una transacción (y la necesidad de regeneración)
sucede cuando modificamos la parametrización asociada a una transacción, cuando
modificamos el código ABAP asociado a su programa, cuando hacemos un upgrade del
sistema, cuando implementamos una nota, etc. Sin embargo, una vez regenerada la
transacción ya no volverá a aparecer este proceso nunca más.
No soy un experto pero hasta donde yo sabía y me habían
explicado ABAP es un lenguaje
de programación interpretado, no compilado. Así que nunca he entendido muy
bien qué es lo que hace exactamente SAP cuando dice que está compilando la
transacción. Sea como sea, SAP provee de una herramienta que nos permite,
llamémosle regenerar, en forma masiva una transacción modificada.
Casos
Transacción: SGEN
La documentación de la propia transacción es abundante, pero
voy a explicar solamente los casos con los que me he encontrado:
-
Generación de objetos todos de componentes de software seleccionados: se da cuando se instala por primera vez el sistema. Al seleccionar esta opción se regenerarán todos los objetos del sistema SAP.
-
Regeneración después de un upgrade de sistema SAP: se da cuando hemos cambiado de versión de SAP y deseamos regenerar todos los objetos modificados en la versión.
-
Generación de objetos de una orden de transporte: si hemos realizado una modificación de varios programas a la vez, agrupados en una sola orden, utilizaremos esta opción para regener todos los objetos incluidos dentro de la orden.
Ejemplo
Tomemos que queremos regenerar todos los programas que hemos
modificado e incluido en una orden de transporte.
-
Llamamos a la transacción SGEN.
-
Indicamos nuestra orden de transporte.
-
Decidimos si lo queremos hacer online o en job de fondo. En este caso, lo hago en job de fondo.
Atención, mientras estemos realizando una regeneración de
objetos no podemos hacer simultáneamente una segunda regeneración, aunque
referencia a objetos distintos.
Es aconsejable hacer todas las regeneraciones en job de
fondo.
Más información en la propia documentación de la transacción
SGEN y en la nota 379918
Imagen inicial | Patrick Hoesly
No hay comentarios:
Publicar un comentario