ALV GRID OO agrega y elimina celdas.

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Luis Armando Valdez R.
    Junior Member
    • sep
    • 9

    #1

    ALV GRID OO agrega y elimina celdas.

    Hola Amigos, ando algo atorado con un tema en un ALV grid, les platico, ojalá puedan ayudarme.

    Tengo un ALV que elimina y agrega nuevas celdas.

    Cuando agrego una nueva celda, la linea es la siguiente:

    documento, referencia, fecha, folio etc, etc..

    Entonces cuando estoy agregando un nuevo registro, el usuario captura el documento, pero pretendo que al dar enter, el sistema en automatico traiga los valores de referencia, fecha, folio a través de un query a la BD.

    Ya traigo en memoria los campos del query, pero no se como pasarselos a la estructura para que el ALV los pinte.

    He usado lo siguiente:

    LOOP AT er_data_changed->mt_good_cells INTO ls_good.
    CASE ls_good-fieldname.
    when 'FACTURA'.
    PERFORM F_OBTEN_DOC_FI USING LS_GOOD-VALUE CHANGING VL_BSTKD.

    WHEN 'REFERENCIA'.

    READ TABLE er_data_changed->mt_good_cells INTO ls_good
    WITH KEY row_id = ls_good-row_id
    fieldname = ls_good-fieldname
    VALUE = VL_BSTKD.

    CALL METHOD er_data_changed->GET_cell_value
    EXPORTING
    i_row_id = ls_good-row_id
    i_fieldname = ls_good-fieldname
    IMPORTING
    e_value = VALOR.

    ** Leímos tabla interna
    * READ TABLE gt_outtab INTO wa_outtab INDEX ls_good-row_id.
    wa_outtab-FACTURA = '0090000007'. " Codigo duro para pruebas
    wa_outtab-REFERENCIA = VL_BSTKD.

    * Modificamos
    * MODIFY TABLE gt_outtab FROM wa_outtab .
    APPEND WA_OUTTAB TO GT_OUTTAB.
    CALL METHOD g_grid->refresh_table_display.

    ENDCASE.
    ENDLOOP.

    Les agradeceré mucho si me echan la mano con esto..

    Saludos!
  • ballan
    Senior Member
    • oct
    • 671

    #2
    Prueba a poner al final del todo

    cl_gui_cfw=>flush( ).

    Comentario

    • Luis Armando Valdez R.
      Junior Member
      • sep
      • 9

      #3
      Gracias

      Ya probé y no se actualiza el grid.

      Estoy revisando que el valor ya lo asigno en LS_GOOD pero no lo pinta en el ALV

      Sigo debuggeando para saber como agregarselo y si hay un metodo para actualizar el LS_GOOD a la gt_outtab

      Gracias por tu apoyo amigo!

      Comentario

      • DCErick
        Moderator
        • mar
        • 1090

        #4
        Y si lo haces desde el evento handle_data_changed_finished
        -------------------
        ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

        Comentario

        Trabajando...