Checkbox alv

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • josechc23
    Member
    • feb
    • 75

    #1

    Checkbox alv

    Hola muy buenos dias estimdos expertos ..

    estoy usaando la función REUSE_ALV_GRID_DISPLAY
    para desplegar un alv .. y dentro de el .. uso una columna como checkbox pero no se como hacerle para saber cuales filas fueron las que se marcaron con el checkbox .. alguien que me pueda orientar..
    .................................................. ................
    Jose Chavez Campos
    Consultor SAP ABAP/WF

    IT CubiK Consulting
    Dando Valor a su Negocio
    http://www.it-cubik.com.mx
    .................................................. ................
  • pancho6102
    Senior Member
    • jun
    • 238

    #2
    Que tal Josillo buen día

    Me imagino que en la tabla interna creaste una columna de tipo C para guardar el valor marcado con el check box.

    y que en la definicion del catalogo guardaste el la columna con la siguiente propiedad: CAT-CHECKBOX = 'X'.

    si es asi ya solo faltaria definir el USER COMMAND en la funcion REUSE_ALV_GRID_DISPLAY y un GUI STATUS

    i_callback_pf_status_set = 'PF' " for PF-STATUS
    i_callback_user_command = 'USER_COMMAND'


    dentro de la rutina

    FORM user_command USING lv_okcode LIKE sy-ucomm l_selfield TYPE slis_selfield.

    lv_okcode = sy-ucomm.

    if lv_okcode eq 'BACK'. "solo puse de ejemplo la funcion BACK
    LEAVE program.
    endif.


    DATA : ref_grid TYPE REF TO cl_gui_alv_grid. "new
    IF ref_grid IS INITIAL.
    CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
    e_grid = ref_grid.
    ENDIF.

    IF NOT ref_grid IS INITIAL.
    CALL METHOD ref_grid->check_changed_data.
    ENDIF.



    LOOP AT it_alv into wa_datos WHERE check = 'X'. "campo check tipo C
    "operaciones con las lineas seleccionadas
    ENDLOOP.
    endform.

    Creo que fue un poco general, espero y te sirva, si no pues ya te pongo un ejemplo mas detallado.

    Saludos.
    Francisco Ramirez.
    consultor SAP ABAP Netweaver
    Queretaro, Mexico.

    Comentario

    • josechc23
      Member
      • feb
      • 75

      #3
      Hola mi estimado Paquito ....

      muchas gracias por responder mi pregunta ...

      solo tengo una duda manejas una tabla llamada it_alv esa cual tabla es?

      esta funcion GET_GLOBALS_FROM_SLVC_FULLSCR que hace?



      Originalmente publicado por pancho6102
      Que tal Josillo buen día

      Me imagino que en la tabla interna creaste una columna de tipo C para guardar el valor marcado con el check box.

      y que en la definicion del catalogo guardaste el la columna con la siguiente propiedad: CAT-CHECKBOX = 'X'.

      si es asi ya solo faltaria definir el USER COMMAND en la funcion REUSE_ALV_GRID_DISPLAY y un GUI STATUS

      i_callback_pf_status_set = 'PF' " for PF-STATUS
      i_callback_user_command = 'USER_COMMAND'


      dentro de la rutina

      FORM user_command USING lv_okcode LIKE sy-ucomm l_selfield TYPE slis_selfield.

      lv_okcode = sy-ucomm.

      if lv_okcode eq 'BACK'. "solo puse de ejemplo la funcion BACK
      LEAVE program.
      endif.


      DATA : ref_grid TYPE REF TO cl_gui_alv_grid. "new
      IF ref_grid IS INITIAL.
      CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
      IMPORTING
      e_grid = ref_grid.
      ENDIF.

      IF NOT ref_grid IS INITIAL.
      CALL METHOD ref_grid->check_changed_data.
      ENDIF.



      LOOP AT it_alv into wa_datos WHERE check = 'X'. "campo check tipo C
      "operaciones con las lineas seleccionadas
      ENDLOOP.
      endform.

      Creo que fue un poco general, espero y te sirva, si no pues ya te pongo un ejemplo mas detallado.

      Saludos.
      .................................................. ................
      Jose Chavez Campos
      Consultor SAP ABAP/WF

      IT CubiK Consulting
      Dando Valor a su Negocio
      http://www.it-cubik.com.mx
      .................................................. ................

      Comentario

      • josechc23
        Member
        • feb
        • 75

        #4
        Listo Paquito ...

        ya quedo .... mil gracias !!!


        Originalmente publicado por josechc23
        Hola mi estimado Paquito ....

        muchas gracias por responder mi pregunta ...

        solo tengo una duda manejas una tabla llamada it_alv esa cual tabla es?

        esta funcion GET_GLOBALS_FROM_SLVC_FULLSCR que hace?
        .................................................. ................
        Jose Chavez Campos
        Consultor SAP ABAP/WF

        IT CubiK Consulting
        Dando Valor a su Negocio
        http://www.it-cubik.com.mx
        .................................................. ................

        Comentario

        • pancho6102
          Senior Member
          • jun
          • 238

          #5
          Originalmente publicado por josechc23
          Hola mi estimado Paquito ....

          muchas gracias por responder mi pregunta ...

          solo tengo una duda manejas una tabla llamada it_alv esa cual tabla es?

          esta funcion GET_GLOBALS_FROM_SLVC_FULLSCR que hace?


          la tabla it_alv es la tabla con tus datos por ejemplo una tabla para los vuelos (ejemplo mas comun).

          la tabla con mis datos esta asi:
          IT_ALV
          CHECK(1),
          CARRID LIKE SFLIGHT-CARRID,
          CONNID LIKE SFLIGHT-CONNID,


          lo que hace el codigo final cambia los datos en el ALV que sufrieron modificacion en la vista del ALV y lo pasa a la tabla interna digamos modificamos un valor en ALV con algun campo con propiedad INPUT, cuando pase por la funcion GET_GLOBALS_FROM_SLVC_FULLSCR se pasara el cambio a la tabla interna.


          Saludos.
          Francisco Ramirez.
          consultor SAP ABAP Netweaver
          Queretaro, Mexico.

          Comentario

          Trabajando...