icono en celda ALV

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • CESARCAES01
    Member
    • nov
    • 46

    #1

    icono en celda ALV

    Hola tengo un problema, alguien me podria decir como incluir un icono dentro de una celda en abp.

    en la celda descargar debe estar ese boton o icono.

    pern. nombre y apellidos. mail. descargar.

    101 andres gomez 112445@gamil.com
  • Jarpi
    Senior Member
    • abr
    • 453

    #2
    Buenas tardes CESARCAES01.

    Deberías hacer algo así.

    SELECT SINGLE id FROM icon
    INTO tabla-campo
    WHERE name = 'Nombre del ícono de la tabla ICON'.

    Espero te sirva.

    Saludos.

    Comentario

    • CESARCAES01
      Member
      • nov
      • 46

      #3
      Jarpi Muchas Gracias.... me funciono perfecto.... de gran ayuda...

      Comentario

      • CESARCAES01
        Member
        • nov
        • 46

        #4
        Jarpi, como haria luego para capturar un evento en una daterminada fila de ese alev. dandole click al icono, necesito procesar esa fila con el nr de personal.

        Comentario

        • Jarpi
          Senior Member
          • abr
          • 453

          #5
          En tu funcion REUSE_ALV_GRID_DISPLAY deberías tener el evento:

          i_callback_user_command = 'USER_COMMAND'.

          Luego tenés que agregar un FORM que sea más o menos así.

          FORM user_command USING r_ucomm LIKE sy-ucomm
          rs_selfield TYPE slis_selfield.

          CASE rs_selfield-fieldname.
          WHEN 'Nombre del campo de la tabla'.
          CLEAR tabla.
          CHECK rs_selfield-tabindex NE 0.
          READ TABLE tabla INDEX rs_selfield-tabindex.
          CHECK NOT tabla-campo IS INITIAL.
          IF sy-subrc EQ 0.


          ACA PONES TU RUTINA


          ENDIF.

          ENDFORM.


          Espero te sirva.

          Saludos.

          Comentario

          • CESARCAES01
            Member
            • nov
            • 46

            #6
            Excelente ahora si estoy entendiendo.. continuo.. oye muchas gracias Jarpi

            Comentario

            • CESARCAES01
              Member
              • nov
              • 46

              #7
              Jarpi, quiero enviar un correo electronico con arhivo adjunto, me envia el correo mas no adjunta el archivo, este es el codigo
              FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM RS_SELFIELD TYPE SLIS_SELFIELD.
              *CASE rs_selfield-fieldname.

              READ TABLE gt_report INTO gs_report INDEX rs_selfield-tabindex.

              DATA: it_body TYPE TABLE OF solisti1 WITH HEADER LINE,
              gd_doc_data LIKE sodocchgi1,
              it_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
              it_receivers LIKE somlreci1 OCCURS 0 WITH HEADER LINE,

              tab_lines LIKE sy-tabix.

              DATA: wl_body LIKE it_body-line.

              * Armamos el contenido del cuerpo
              CONCATENATE text-m01 '904512' text-m02 'MMMTPA' '.'
              INTO wl_body SEPARATED BY space.
              it_body-line = wl_body.
              APPEND it_body.

              ** Equivalente a un salto de linea
              CLEAR wl_body.
              it_body-line = wl_body.
              APPEND it_body.

              APPEND gs_report to li_dat_bin.


              ** Pie de Cuerpo
              it_body-line = text-m03.
              APPEND it_body.

              * Creamos el mail
              DESCRIBE TABLE it_body LINES tab_lines.
              READ TABLE it_body INDEX tab_lines.
              gd_doc_data-doc_size = ( tab_lines ) * 255 + STRLEN( it_body ).
              * atributos especiales del mensaje
              gd_doc_data-obj_langu = sy-langu.
              gd_doc_data-obj_descr = text-m04.
              * Cuerpo del mensaje
              it_packing_list-transf_bin = space.
              it_packing_list-head_start = 1.
              it_packing_list-head_num = 0.
              it_packing_list-body_start = 1.
              DESCRIBE TABLE it_body LINES it_packing_list-body_num.
              it_packing_list-doc_type = 'bin'.
              * it_packing_list-obj_name = gs_report-PAY_RECEIPT.
              it_packing_list-obj_name ='File'.
              APPEND it_packing_list.

              * add direc. mail
              it_receivers-receiver = 'cesarcaes01@gmail.com'.
              it_receivers-rec_type = 'U'.
              it_receivers-com_type = 'INT'.
              it_receivers-notif_del = 'X'.
              it_receivers-notif_ndel = 'X'.
              APPEND it_receivers.


              "SEND MAIL ALL Ó DOWNLOAD MAIL
              CASE R_UCOMM.
              "Send mail all employee
              WHEN '/&INFO'.
              WRITE :/02 SY-VLINE, rs_selfield-fieldname.
              write R_UCOMM.
              write rs_selfield-value.
              *CLEAR gt_report.
              * CHECK rs_selfield-tabindex NE 0.
              * READ TABLE gt_report INTO gs_report INDEX rs_selfield-tabindex.

              IF sy-subrc EQ 0.
              CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
              EXPORTING
              document_data = gd_doc_data
              * put_in_outbox = 'X'
              commit_work = 'X'
              TABLES
              packing_list = it_packing_list
              contents_txt = it_body
              receivers = it_receivers
              EXCEPTIONS
              too_many_receivers = 1
              document_not_sent = 2
              document_type_not_exist = 3
              operation_no_authorization = 4
              parameter_error = 5
              x_error = 6
              enqueue_error = 7
              OTHERS = 8.

              IF sy-subrc EQ 0.
              WRITE: 'e-mail enviado exitósamente'.
              ELSE.
              WRITE: 'error en envió de e-mail'.
              ENDIF.

              Comentario

              Trabajando...