pasar ALV a excel

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • oieraz
    Member
    • nov
    • 54

    #1

    pasar ALV a excel

    Hola, tengo un programa que al lanzarlo me devuelve un ALV. Mi labor es añadir a este programa un botón que me permita descargarme el ALV a formato EXcel. ¿Hay alguna función que lo permita? ¿Alguna sugerencia?

    Gracias por vuestra ayuda.
  • javi24
    Junior Member
    • nov
    • 24

    #2
    Buenas!

    Te propongo una solución a ver que te parece, sino lo ves bien me lo dices y buscamos otra

    1) Pincha en el Icono visualizar lista de objetos (control + shift + f5)
    2)Con el boton derecho pincha en el nombre del programa -> crear -> status GUI
    3) Le pones un nombre por ejemplo standard.
    4) una vez dento de status gui pinchas en el menu de arriba en detalles -> ajustar modelo y escoje la opcion de ListviuewABAP.
    5) Una vez hecho eso en tu ALV pones esto :


    FORM set_status USING rt_extab TYPE slis_t_extab.
    REFRESH rt_extab.
    SET PF-STATUS 'STANDARD' EXCLUDING rt_extab.
    ENDFORM.

    Donde STANDARD es el nombre del status gui creado previamente

    6)

    ALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = g_repid
    i_callback_pf_status_set = 'SET_STATUS'
    * i_callback_user_command = 'USER_COMMAND'
    is_layout = ls_layout
    it_fieldcat = lt_fieldcat[]
    TABLES
    t_outtab = itab_listado[]
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.

    Añades la linea que está en rojo y listo.

    Con eso obtienes un menu básico de utilidades entre ellas las de descargar a excel, fichero plano,etc.

    ya me comentas

    saludos
    -javi-

    Comentario

    • oieraz
      Member
      • nov
      • 54

      #3
      Gracias por tu ayuda Javi, pero en este caso no me sirve, ya que tengo un ALV con muchísimos campos y la funcionalidad estándar para descargar a SAP no me va. No se si habrá alguna otra alternativa.

      Comentario

      • ballan
        Senior Member
        • oct
        • 671

        #4
        Yo lo que he hecho otras veces es añadir un boton a la barra del ALV y cuando pulse ese boton lo que haces es descargarte la tabla interna que hay detras del ALV con la funcion GUI_DOWNLOAD y formato de fichero DAT en lugar de ASC

        Comentario

        • oieraz
          Member
          • nov
          • 54

          #5
          He hecho la llamada así, pero lamentablemente me da un dump

          CALL FUNCTION 'GUI_DOWNLOAD'

          EXPORTING
          filename = v_file2 "'D:\TEST.XLS'
          filetype = 'DAT'
          write_field_separator = 'X'
          TABLES
          data_tab = TIS_SALIDA
          fieldnames = t_fieldnames.

          Comentario

          • ballan
            Senior Member
            • oct
            • 671

            #6
            Que dump te da?

            Fijate que el parametro que le pasas a la GUI_DOWNLOAD sea de tipo string

            Comentario

            • gmarrapodi
              Junior Member
              • feb
              • 5

              #7
              Originalmente publicado por oieraz
              He hecho la llamada así, pero lamentablemente me da un dump

              CALL FUNCTION 'GUI_DOWNLOAD'

              EXPORTING
              filename = v_file2 "'D:\TEST.XLS'
              filetype = 'DAT'
              write_field_separator = 'X'
              TABLES
              data_tab = TIS_SALIDA
              fieldnames = t_fieldnames.

              que tal mae, yo no se si se puede generar un download pasandole primero un elemnto primero y despues como literal un URL asi, por mi experiencia en los gui_down me parece que tendrias que pasarle en el parametro "filename" la ruta de descarga con el nombre correspondiente y su extension, como bien hiciste despues del v_file2 .
              .................................................. .................................................. ....
              Guido Marrapodi
              Consultor SAP BI
              Solo hago programas generadores de dump. :P

              Comentario

              Trabajando...