Hola a todos.
Estoy modificando un reporte en la herramienta SCREEN PAINTER que lo han diseñado mediante una dynpro, lo que se requiere es que en la nueva columna que he agregado y está enmarcada en rojo pueda mostrar el ícono del tacho de basura según cierta condición.
No entendí muy bien. Esa columna por lo que veo, contiene check-boxs… ¿quieres que en base a cierta condición, en lugar de ese check-box, se muestre el ícono del tacho de basura?
pues yo se que por alv, puedes agregar iconos ahora, aqui en esta herramienta…desconozco pero si aqui se crea un catalogo, asumo que si !! la verdad no se, porque yo he trabajado con alv y alv en contenedores
@sconoredhot asi es en lugar de los check-box deseo que se muestre un icono de tacho de basura. @adalove solamente deseo que se muestre ese icono ya que no voy hacer ningún evento cuando sea presionada.
Bueno, sí se puede. Te paso más o menos como sería:
Primero buscás en la tabla ICON, el ícono que necesitás, en este caso ICON_DELETE
Luego en tu programa, haría falta algo así:
* Que la definicion de tu tabla interna/working
* area tenga un campo para el icono de char70
TYPES: BEGIN OF ty_prueba,
icon1 TYPE char70,
campo1 TYPE char50,
campo2 TYPE char50,
END OF ty_prueba.
* Una variable de char70
DATA: wa_prueba TYPE ty_prueba,
lt_prueba TYPE TABLE OF ty_prueba,
lv_tabix TYPE sy-tabix,
lv_icon TYPE char70.
* creás el Icono borrar de esta manera, guardándolo en lv_icon
CALL FUNCTION 'ICON_CREATE'
EXPORTING
name = 'ICON_DELETE'
add_stdinf = space
IMPORTING
RESULT = lv_icon
EXCEPTIONS
icon_not_found = 1
outputfield_too_short = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* Cuando completas tu tabla, acorde a las condiciones que sean,
* si hace falta, pasás el valor de lv_icon a tu working area / tabla interna.
wa_prueba-icon1 = lv_icon.
wa_prueba-campo1 = 'Foro'.
wa_prueba-campo2 = 'Consultoria-sap'.
APPEND wa_prueba TO lt_prueba.
* Llamás a la screen
CALL SCREEN 2000.
Gracias @sconoredhot, antes que leyera tu post ya lo había resuelto e ingresé para compartirles la respuesta, veo que utilizaste una función para traer el icono yo lo hice con un SELECT SINGLE por name y obtengo el ID. De igual forma muchas gracias por tu ayuda.