martes, julio 22, 2008

ALV - Actualizar datos

En una ALV se pueden añadir botones a la barra de STATUS que realicen operaciones sobre los registros. Nos puede interesar actualizar los valores que se muestran en el ALV, si se modifica algún valor de la tabla interna que tiene asociada. Tenemos que capturar la ejecución del nuevo botón en la rutina USER_COMMAND, consultar de nuevo los datos de la base de datos (recomendable tener cread una rutina) y volver a mostrar la información actualizada por pantalla. Esta última operación se realiza forzando la ejecución del evento de refresco que se realiza con la siguiente asignación: i_ucomm = '&REFRESH'.

miércoles, julio 16, 2008

MF - ejecutar dos módulos de función

Es muy normal que queramos ejecutar dos módulos de función (uno detrás del otro) mediante la transancción SE37 sin tener que crear un report provisional. El típico ejemplo es cuando se utiliza una BAPI, que ya es imprecindible realizar un commit work para que tenga efecto la ejecución. Para realizar esta operación se utiliza la tx.SE37 y por el menú 'MÓDULO DE FUNCIÓN->VERIFICAR-> SECUENCIA TEST' en la crea se crea una secuencia con los Módulos de funcion que queremos ejecutar. Se irá ejecutando función a función, cuando se termina la ejecución de un módulo de función al dar al botón de atrás se ejecutará el siguiente módulo de función que habíamos informado en la secuencia. El módulo de función que realiza el COMMIT WORK es '

lunes, julio 07, 2008

ALV - Mostrar celdas en colores

Tenemos 2 opciones:

1) Mostrar un fila de un color, añadir un campo en la tabla interna de tipo CHAR04 que se le pasa al MF i guardar el nombre de este campo en la variable del LAYOUT g_layout-info_fieldname = 'COLOR'.

ROJO -> C600
 
2) Mostrar un columna de un color, cuando se informa los valores para el catálogo, además informar el campo g_catalog-emphasize= C123, 1=> color, 2 y 3 => intensidad.

Para más info sobre los colores:
http://www.abap.es/Centro_ALV_colores.htm