Code: Alles auswählen.
TOP-OF-PAGE.
WRITE: 'Lagerbestände', sy-datum, 'Seite: ', syst-pagno.
SKIP.
TYPES: BEGIN OF gt_mard.
INCLUDE STRUCTURE mard.
TYPES:
maktx TYPE makt-maktx,
END OF gt_mard.
DATA: gt_tabmard TYPE TABLE OF gt_mard,
gs_tabmard TYPE gt_mard.
PARAMETERS : liste RADIOBUTTON GROUP list,
datei RADIOBUTTON GROUP list,
Name TYPE c LENGTH 20,
Pfad TYPE c LENGTH 100.
START-OF-SELECTION.
SELECT mard~werks mard~lgort mard~matnr makt~maktx mard~labst
INTO CORRESPONDING FIELDS OF TABLE gt_tabmard
FROM mard JOIN makt ON mard~matnr = makt~matnr.
IF liste = 'X'.
WRITE: 'Werk', 20 'Lager', 40 'Mat-Nr.', 60 'Material', 90 'Bestand'.
SKIP.
PERFORM gt_tabmard_fuellen.
ELSEIF datei = 'X'.
CALL FUNCTION 'ws_download'
EXPORTING
FILENAME = Name
FILETYPE = 'ASC'
ENDIF.
FORM gt_tabmard_fuellen.
LOOP AT gt_tabmard INTO gs_tabmard.
WRITE:/ gs_tabmard-werks, 20 gs_tabmard-lgort, 40 gs_tabmard-matnr, 60 gs_tabmard-maktx , 90 gs_tabmard-labst LEFT-JUSTIFIED.
AT NEW matnr.
NEW-LINE.
ENDAT.
AT END OF matnr.
SUM.
NEW-LINE.
WRITE: 60 'Lagerbestand:' , 90 gs_tabmard-labst LEFT-JUSTIFIED.
ENDAT.
ENDLOOP.
ENDFORM.
Code: Alles auswählen.
PARAMETERS : name TYPE string,
pfad TYPE string.
CALL METHOD cl_gui_frontend_services=>file_save_dialog
EXPORTING
default_extension = 'asc'
default_file_name = 'Tabelle'
CHANGING
filename = name
path = pfad
fullpath = pfad.
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filetype = 'ASC'
filename = name
CHANGING
Data_tab = gt_tabmard.
Dann bekommt er beim Methodenaufruf aber eine Fehlermeldung, dass die Feldnamen nicht deklariert sind.Die Parameter haben keine Werthilfe, da ist der Dialog besser (also würde ich die Parameter weglassen).