@johnny282 pasa por aca y explicanos como termina el caso, y si una respuesta te sirvio para solucionar marcala como mejor solucion. xD, soy un asote jeje.
Buenas @johnny282, estaba revisando el foro y me encontré con este caso.
La guía que usé en mis inicios para el caso de agregar nuevas funcionalidades a través de botones la saqué de aquí: ALV development (ALV_GRID)
En esa página mencionan lo siguiente en el paso 3:
Step 3. Create pf_status (i.e. ‘ZNEWSTATUS’).
It is recommend that you copy standard status ‘STANDARD’ from function group SALV or ‘STANDARD_FULLSCREEN’ from function group SLVC_FULLSCREEN which is what I tend to use, and then modify it accordingly. ALV standard function codes always start with ‘&’. i.e. &VGRID calls your ALV grid
Inicialmente usé una copia del status GUI ‘STANDARD’ del grupo de funciones SALV como lo hiciste, pero me pasaba el mismo problema que se te presentó, no se mostraban los elementos del menú. Lo que hice más bien fue tomar una copia del ‘STANDARD_FULLSCREEN’ del grupo de funciones ‘SLVC_FULLSCREEN’ como lo mencionan allí, y con ese status GUI sí se mostraban los botones y demás.
Bueno finalmente pude culminar el requerimiento. Un agradecimiento a todos los que me han apoyado en este post y en especial a @smota que con mucha paciencia a estado de la mano apoyando últimamente.
Bueno a continuación les resumo lo que se hizo para agregar la opción de Exportar en Excel:
En primer lugar era necesario crear una nueva tabla interna que me permitiera almacenar tanto los datos de facturas (Canal de Distribución, Numero de Factura, Tipo de Factura, etc) como los cálculos realizados para sacar el Monto Bruto y Monto Neto entre otros. Esto con la finalidad de posteriormente utilizar dicha tabla en la Función GUI_DOWNLOAD que explicare en los siguientes puntos.
Una vez creada la tabla interna y almacenada la información correspondiente, se procedió a realizar una copia de un Status Gui Estandar, específicamente el contenido en el grupo de funciones SALV - Status GUI STANDARD. Una vez generada la copia procedí a eliminar aquellos botones que no fueron requeridos, solamente dejando el botón Hoja de Calculo y Fichero Local. En este punto quiero dejar claro para aquellos que están empezando como yo, que la copia de estos status no funciona con aquellos reportes creados en base a sentencias Write, es decir, que se deben programar tanto las opción de Menú como los botones. Por lo que estuve investigando estas copias funcionan correctamente con reportes tipo ALV.
Una vez ajustado el status gui, realice la modificación al programa para añadir la funcionalidad de los menú y botones a través del PF-STATUS - USER-COMMAND.
4.En el caso particular del Botón de Hoja de Calculo utilice la función GUI_DOWNLOAD que me permite exportar directamente la información en un directorio en formato xls u otro. En esta función coloque como parámetros tanto la tabla interna que comente en el primer punto y tuve que diseñar otra tabla que almacenaría la cabecera de cada columna. A continuación coloco como use la función: