#4
|
||||
|
||||
En la tabla interna que muestras en el ALV debes crear un campo TYPE lvc_t_styl. En un campo definido de esta forma puedes modificar gran cantidad de características del mismo dándole valores a una serie de bits.
En la declaración del layout debes indicarle qué campo de la tabla interna marca el estilo de la línea a dibujar. Ejemplo: it_layout1-stylefname = 'ASPECTO'. Donde 'aspecto' es el nombre del campo de la tabla interna del tipo lvc_t... Puedes crearte un form como el siguiente que pinte las celdas. DATA: it_cells TYPE lvc_t_styl. FORM pintar_celdas USING c TYPE tf605-coimeth. DATA ls_cells1 TYPE lvc_s_styl. REFRESH it_cells. CLEAR: ls_cells1. CASE c. WHEN '11100'. ls_cells1-style = '00000004'. WHEN '11300'. ls_cells1-style = '00000003'. WHEN '11420'. ls_cells1-style = '00000006'. ENDCASE. INSERT ls_cells1 INTO TABLE it_cells. ENDFORM. En este caso pinto las filas en función del método de consolidación. Ya sólo queda pasarle los valores de la tabla it_cells al campo de nuestra tabla interna que se muestra en el ALV. Eso se hace de la siguiente manera: LOOP AT ti_calculo. PERFORM pintar_celdas USING ti_calculo-coimeth. ti_calculo-aspecto[] = it_cells[]. MODIFY ti_calculo. ENDLOOP. Espero que te sirva de ayuda. Saludo, David. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|