*&---------------------------------------------------------------------*
*& Report YFIR0044
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT yfir0047 NO STANDARD PAGE HEADING
MESSAGE-ID 1000 LINE-SIZE 120 LINE-COUNT 65.
TABLES:mkpf,bseg.
TABLES: yfilob04,yfilob03, yfilob05,yfilob01,csks,glt0,yfilob07.
INCLUDE y_alv_func.
INCLUDE zabap_public.
INCLUDE <icon>.
DATA: callback TYPE TABLE OF ldbcb,
callback_wa LIKE LINE OF callback.
DATA: seltab TYPE TABLE OF rsparams,
seltab_wa LIKE LINE OF seltab.
*DATA: texpr TYPE rsds_texpr,
* fsel TYPE rsfs_fields.
DATA:BEGIN OF it_show OCCURS 0.
INCLUDE STRUCTURE yfilob07.
DATA icon(4) TYPE c.
* bukrs LIKE glt0-bukrs,
* saknr LIKE yfilob07-saknr,
* txt20 LIKE yfilob07-txt20,
* qytd LIKE yfilob07-qytd ,
* hytd LIKE yfilob07-hytd,
* sytd LIKE yfilob07-sytd,
* ytd LIKE yfilob07-ytd,
* lighting LIKE yfilob07-lighting,
* wiring LIKE yfilob07-wiring,
* ex_or LIKE yfilob07-ex_or,
* hr LIKE yfilob07-hr,
* led LIKE yfilob07-led,
DATA END OF it_show.
DATA:it_glt0 LIKE TABLE OF glt0 WITH HEADER LINE .
DATA:it_lob04 LIKE TABLE OF yfilob04 WITH HEADER LINE.
*DATA:it_cosp LIKE TABLE OF cosp WITH HEADER LINE.
*DATA:it_csks LIKE TABLE OF csks WITH HEADER LINE.
DATA:exceltab LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE.
DATA: v_waers LIKE t001-waers,"货币
v_fr_date TYPE d, "查询期间第一天
v_periv LIKE t001-periv,"年度变式
v_period TYPE yfilob04-period,"上月期间
b_period TYPE yfilob04-period,"本月期间
v_to_date TYPE d. "查询期间月底日
DATA sum TYPE i.
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_js TYPE c RADIOBUTTON GROUP g1 .
SELECTION-SCREEN COMMENT 23(15) text-b02 FOR FIELD p_js.
SELECTION-SCREEN POSITION 40.
SELECTION-SCREEN END OF LINE.
SELECT-OPTIONS position FOR sum NO-DISPLAY.
SELECT-OPTIONS pp FOR sum NO-DISPLAY.
SELECT-OPTIONS bb FOR sum NO-DISPLAY.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-t02 .
PARAMETERS:p_gjahr LIKE yfilob01-gjahr DEFAULT sy-datum(4) .
PARAMETERS:p_month(2) TYPE n DEFAULT sy-datum+4(2) .
*PARAMETERS:p_rbusa LIKE glt0-rbusa DEFAULT 'HL00'.
PARAMETERS: p_bukrs LIKE glt0-bukrs DEFAULT 'HL01' NO-DISPLAY.
PARAMETERS: p_emonth LIKE t009b-poper NO-DISPLAY .
SELECT-OPTIONS:p_saknr FOR yfilob05-saknr .
*SELECT-OPTIONS:p_kostl FOR csks-kostl .
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN.
IF p_month <= 0 OR p_month > 16 .
MESSAGE '期间非法,请重新输入!' TYPE 'E'.
ENDIF.
AT SELECTION-SCREEN OUTPUT.
INITIALIZATION.
START-OF-SELECTION.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = 1
text = '开始读取数据'.
position-sign = 'I'.
position-option = 'BT'.
position-low = 1.
position-high = p_month + 1.
APPEND position.
* IF p_month > 01.
pp-sign = 'I'.
pp-option = 'BT'.
pp-low = 1.
pp-high = p_month .
APPEND pp.
* ENDIF.
bb-sign = 'I'.
bb-option = 'BT'.
bb-low = p_month + 1.
bb-high = p_month + 1 .
APPEND bb.
PERFORM ini.
IF p_cx = 'X'.
PERFORM get_data.
ELSE.
PERFORM select_data.
ENDIF.
PERFORM show_data.
END-OF-SELECTION.
*&---------------------------------------------------------------------*
*& Form ini
*&---------------------------------------------------------------------*
* text
*------------------------------