Anuncio

Colapsar
No hay anuncio todavía.

Cambiar Texto a las columnas en un: cl_salv_table

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • Cambiar Texto a las columnas en un: cl_salv_table

    Hola amigos, como estna espero que muy bien.


    Tengo la siguiente inquietud...

    mi proceso es el siguiente:

    1) con la FM WS_UPLOAD cargo el archivo de texto a una table interna con solo una colulmna para cargar tal y cual el archivo.
    2) con la FM TEXT_CONVERT_TEX_TO_SAP convierto el texto separado por ';' a otra table interna con varias columnas.
    3) dicha table la cargo en un alv:

    Código:
      try.
          cl_salv_table=>factory(
           IMPORTING r_salv_table = go_table
           CHANGING t_table = it_table[] ).
          columns = go_table->get_columns( ).
          TRY.
              columns->set_color_column( 'ROW_COLOUR' ).
              columns->set_key_fixation( ).
              column ?= columns->get_column( '' ).
              column->set_short_text( value = 'Mensaje' ).
              column->set_medium_text( value = 'Mensaje' ).
              column->set_long_text( value = 'Mensaje' ).
            CATCH cx_salv_not_found .
            CATCH cx_salv_data_error.                       "#EC NO_HANDLER
          ENDTRY.
    
        CATCH cx_salv_msg INTO lx_msg.
      ENDTRY.
    Como ven al cargar la table las columnas no tienen texto o nombre, estan vacias, mi pregunta es (son 4 columnas) como les cambio el nombre a cada columna y de pasada centrar el texto en el Header del alv de cada columna.


    Gracias.

    Buen dia.

  • #2
    Hola,

    la función ws_upload se encuentra obsoleta, la reemplazó la gui_upload, aunque creo que esa también ya es considerada obsoleta.

    Con respecto a los títulos nunca usé ALV orientado a objetos, pero entiendo que eso lo haces en la creación del fieldcat al igual que en un ALV GRID.

    Tienes muchos ejemplos en este mismo sitio.

    Comentario


    • #3
      Solved

      Hola JoseMir

      Me interesa el tema de ws_upload y GUI_UPLOAD... Comentamos aqui o abro otro tema? (tuve problemas la usar GUI_UPLOAD)

      por otro lado Listo!!!

      Mi codigo final fue:

      Código:
      FORM INITIALIZE_ALV .
        DATA: lx_msg TYPE REF TO cx_salv_msg.
        try.
            cl_salv_table=>factory(
             IMPORTING r_salv_table = go_table
             CHANGING t_table = it_table[] ).
            break-point.
            TRY.
              columns = go_table->get_columns( ).
              column ?= columns->get_column( 'F1' ).
              column->set_long_text( 'Descripcion' ).
              column ?= columns->get_column( 'F2' ).
              column->set_long_text( 'Precio Unitario' ).
              column ?= columns->get_column( 'F3' ).
              column->set_long_text( 'Subtotal' ).
              column ?= columns->get_column( 'F4' ).
              column->set_long_text( 'Total' ).
      
      *          column ?= columns->get_column( '' ).
      *          column->set_short_text( value = 'Mensaje' ).
      *          column->set_medium_text( value = 'Mensaje' ).
      *          column->set_long_text( value = 'Mensaje' ).
              CATCH cx_salv_not_found .
              CATCH cx_salv_data_error.                       "#EC NO_HANDLER
            ENDTRY.
      
          CATCH cx_salv_msg INTO lx_msg.
        ENDTRY.
      ENDFORM.                    " INITIALIZE_ALV
      Me dic uenta que las columnas(nombre tecnico, era el que le puse en la definicion de Types...

      Saludos, Gracias.

      Comentario

      Trabajando...
      X