¿Cómo crear un ALV editable?

Crear reportes en formato ALV es uno de los requerimientos más común con los que te encontrarás en tus tareas cotidianas como Consultor ABAP.

Posiblemente ya domines la creación de informes ALV, pero en caso de no ser así, te invito a leer los siguientes post relacionados:

Con el contenido de estos 3 artículos, lograrás construir un ALV completamente funcional, con un Status GUI propio en el que le añadiste un nuevo botón personalizado en la barra de pulsadores, y el contenido del informe es navegable a algún lugar determinado (como una transacción).

Pero si estas teniendo problemas, copia el siguiente ejemplo 100% funcional, el cual cuenta con un informe de 3 columnas, una de ellas configurada para la acción de enlace, y otra columna que se actualiza según el evento dado. Solo requerirás copiar el Status GUI estándar en uno llamado ZSTANDARD y editar el botón cuyo código es ‘&NFO’.

Dicho informe muestra la siguiente información:

edit1

edit2

Si pulsamos en algún código de cliente, o en el “Botón Acción”, verás que están ya configurados para las acciones que quieras crearles.

Actualmente, muestran un mensaje en un pop-up y lo incluyen en la columna Descripción de la posición seleccionada, pero bien podrías enlazar el código de cliente con alguna transacción en donde muestre más información relacionada, y también podrías editar el “Botón Acción” para guardar la nueva información generada por el ALV (campo Descripción) en una tabla del Diccionario.

edit3

Y con esta última idea, bien podríamos ampliar el ALV con una columna adicional (llamada Comentarios), con la particularidad de que sea editable, y se pueda guardar el contenido en una tabla cuando pulsas el “Botón Acción”.

Controlar la acción de pulsar el botón ya lo sabes hacer si has seguido las instrucciones de los artículos aquí mencionados, ahora vamos a crear una columna editable dentro de este mismo ALV.

Tan solo requeriremos tres pasos adicionales:

Paso 1 – Añadir el campo a la tabla interna que sirve de base/catálogo para el ALV.

Ubicamos la estructura de datos base de la tabla interna del catálogo, y le añadimos un nuevo campo, en este caso lo llamaré COM y será de tipo STRING.

edit4

Paso 2 – Añadir el nuevo campo en el catálogo del ALV.

Ubicamos el sector de código que crea el Catálogo de campos del ALV, y al final del mismo, añadimos las líneas correspondientes para configurar una nueva columna llamada “Comentarios”, que se base en nuestro nuevo campo COM.

edit5

Si activamos los cambios y ejecutamos el informe, veremos lo siguiente:

edit6

Ya podemos ver la nueva columna, pero solo en modo visualizar, aún nos falta el tercer y definitivo paso.

Paso 3 – Convertir la columna en editable dentro del catálogo.

Este paso adicional es sencillo, basta con ir a la nueva sección del catálogo que hemos creado, y añadimos la siguiente línea:

 edit10

Obteniendo lo siguiente:

edit7

El resultado final será el siguiente:

edit8

Ya disponemos de la columna “Comentarios” en modo editable, sobre la cual podremos añadir datos, que podrías guardar en una tabla del Diccionario de Datos pulsando el “Botón Acción”, una tarea bastante común en nuestro día a día.

edit9

Ya está, aquí tienes todo lo que necesitas, ahora podrás adaptar estos ejemplos a los requerimientos más comunes de nuestro trabajo habitual.

¿Te ha sido de utilidad este artículo? Házmelo saber con tus comentarios, y suscríbete a mi Comunidad para recibir mi curso gratuito “AprendeABAP en 10 lecciones”, además de contenidos exclusivos  sobre el mundo ABAP.

Richard Rey

“Programando tu Exito”

Opt In Image
Quieres aprender a hacer Reportes ALV?
Descubre la magia de los Reportes SAP en mi Taller Especial de ALV !!!

Se de los primeros en apuntarte y no te quedes sin cupos haciendo clic AQUÍ

O también puedes dejar tus datos aquí abajo y formarás parte de mi comunidad exclusiva, además de recibir mi curso de regalo "Los 7 Pasos para ser un Consultor Exitoso".

 

 

PD: Odio el SPAM. No compartire tus datos con nadie

Si te gusta, compártelo! ...Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Email this to someonePrint this page

Comentarios