REPORT yfir0042 NO STANDARD PAGE HEADING
MESSAGE-ID 1000 LINE-SIZE 120 LINE-COUNT 65.
INCLUDE y_alv_func.
INCLUDE zabap_public.
INCLUDE <icon>.
TABLES : yfilob02,csks,ska1.
DATA:BEGIN OF itab OCCURS 0.
INCLUDE STRUCTURE yfilob02.
DATA END OF itab.
DATA:BEGIN OF it_show OCCURS 0.
INCLUDE STRUCTURE yfilob02.
DATA END OF it_show.
DATA:exceltab LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE.
**********input field begin ******************
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-t01.
SELECTION-SCREEN BEGIN OF LINE.
*查询
PARAMETERS:p_cx TYPE c RADIOBUTTON GROUP g1 USER-COMMAND g2 .
SELECTION-SCREEN COMMENT 3(15) text-b01 FOR FIELD p_cx.
SELECTION-SCREEN POSITION 20.
*导入
PARAMETERS:p_dr TYPE c RADIOBUTTON GROUP g1 .
SELECTION-SCREEN COMMENT 23(15) text-b02 FOR FIELD p_dr.
SELECTION-SCREEN POSITION 40.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-t02 .
PARAMETERS:p_period LIKE yfilob02-period DEFAULT sy-datum(6) .
PARAMETERS:p_fname LIKE rlgrap-filename MODIF ID g2 .
SELECT-OPTIONS:p_ktopl FOR yfilob02-ktopl MODIF ID g3.
SELECT-OPTIONS:p_saknr FOR ska1-saknr MODIF ID g3.
SELECT-OPTIONS:p_kostl FOR csks-kostl MODIF ID g3.
SELECT-OPTIONS:p_prctr FOR yfilob02-prctr MODIF ID g3.
SELECTION-SCREEN END OF BLOCK b2.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
CASE screen-group1.
WHEN 'G2'.
IF p_dr = 'X' .
screen-active = '1'.
ELSE.
screen-active = '0'.
ENDIF.
WHEN 'G3'.
IF p_cx = 'X' .
screen-active = '1'.
ELSE.
screen-active = '0'.
ENDIF.
ENDCASE.
MODIFY SCREEN.
ENDLOOP.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
def_filename = ''
def_path = 'D:/'
mask = ',*.xls,*.xls;,*.xlsx,*.xlsx.'
mode = 'O'
title = 'Upload file'
IMPORTING
filename = p_fname
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.
INITIALIZATION.
p_cx = 'X'.
START-OF-SELECTION.
IF p_period IS INITIAL.
my_exit '请输入期间' ''.
ENDIF.
***read data
PERFORM select_data.
IF p_dr = 'X'.
***manage excledata
PERFORM mana