&---------------------------------------------------------------------
*& Report Z_YY_PRG_002
&---------------------------------------------------------------------
*&
&---------------------------------------------------------------------
REPORT Z_YY_PRG_002.
DATA: gt_data TYPE alsmex_tabline OCCURS 0 WITH HEADER LINE.
TYPES: BEGIN OF t_memberInfo,
sname(10) type c,
sno(4) type c,
ssex(2) type c,
end of t_memberInfo.
data : wa type t_memberInfo,
gt_memberInfo type TABLE OF t_memberInfo.
PARAMETERS p_file like rlgrap-filename OBLIGATORY .
AT SELECTION-SCREEN on VALUE-REQUEST FOR p_file.
CALL FUNCTION ‘WS_FILENAME_GET’
EXPORTING
- DEF_FILENAME = ’ ’
- DEF_PATH = ’ ’
MASK = ',Excel Files,.xls,All Files,.*. ’ - MODE = ’ ’
TITLE = 'select files ’
IMPORTING
FILENAME = p_file - RC =
EXCEPTIONS
INV_WINSYS = 1
NO_BATCH = 2
SELECTION_CANCEL = 3
SELECTION_ERROR = 4
OTHERS = 5
.
IF SY-SUBRC <> 0. - Implement suitable error handling here
MESSAGE e100(zdev) WITH ‘选择文件出错!’(007).
ENDIF.
START-OF-SELECTION.
CALL FUNCTION ‘ALSM_EXCEL_TO_INTERNAL_TABLE’
EXPORTING
FILENAME = p_file
I_BEGIN_COL = 1
I_BEGIN_ROW = 1
I_END_COL = 50
I_END_ROW = 5000
TABLES
INTERN = gt_data
- EXCEPTIONS
- INCONSISTENT_PARAMETERS = 1
- UPLOAD_OLE = 2
- OTHERS = 3
.
IF SY-SUBRC <> 0.
- Implement suitable error handling here
ENDIF.
SORT gt_data by row col value.
loop at gt_data .
case gt_data-col.
when 1.
wa-sname = gt_data-value.
when 2.
wa-sno = gt_data-value.
when 3.
wa-ssex = gt_data-value.
append wa to gt_memberInfo.
ENDCASE.
endloop.
loop at gt_memberInfo into wa.
write : / wa-sname , wa-sno , wa-ssex.
uline.
ENDLOOP.