MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Cambiar color de celda en ALV grid OO (foro/showthread.php?t=30238)

PabloLiasco 19/05/09 19:11:48

Cambiar color de celda en ALV grid OO
 
Hola:
Quería saber como hago para cambiar el color de una celda en la cual acaba de ser modificado su contenido. Esto es usando ALV OO.
Gracias

DavidXD_XD 20/05/09 04:16:13

Hola, aver lo puedes hacer usando el evento handle_data_changed para saber que linea de la tabla interna que se imprime en el ALV se ha modificado, una vez que lo sepas usa lo que puse como ejemplo en otra ocasion, espero te pueda servir ... :D


PabloLiasco 20/05/09 15:09:58

Gracias por contestar...
En qué momento del programa debería llamar al evento, y en qué clase está el mismo?
Gracias

DavidXD_XD 20/05/09 15:17:04

Como ejemplo puedes revisar los programas (SE38) que comienzan con BCALV_EDIT*, ahi veras como implementan el evento handle_data_changed el cual tiene una estructura como parametro, ese parametro te indica la columna y la fila que ha sido cambiada asi como tbm el nuevo valor que se ha introducido, justo ahi debes cambiar tu tabla interna con el indice que figura en el parametro

PabloLiasco 20/05/09 17:07:42

Gracias... voy a intentar hacerlo..

PabloLiasco 20/05/09 17:49:51

En qué momento tendría que hacer el CALL method, ya que lo que tengo que hacer es chequear en el mismo momento en que la celda se modifica??

DavidXD_XD 20/05/09 19:36:45

Los eventos solo son implementados, internamente son triggers el cual son activos cuando modificas la celda, cuando modificas la celda automaticamente va a pasar por la implementacion del evento de tu alv handle_data_changed

PabloLiasco 20/05/09 19:46:04

Ahora entiendo.
El tema es que una vez que se ejecuta el método necesito que se ejecute una especie de refresh de el ALV, para ver la celda coloreada.
Uso el set_table_for_first_display?
O acaso hay alguna otra forma?

DavidXD_XD 20/05/09 21:55:54

Hay otra metodo que hace eso, usa el metodo:

CALL METHOD g_grid->refresh_table_display

Xsiaca, ese metodo es sin parametros puesto que las variables que usaste en el metodo set_table_for_first_display ya estan en memoria.


Husos Horarios son GMT. La hora en este momento es 14:05:57.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web