PARAMETERS: p_yymm TYPE SPMON DEFAULT sy-DATUM+0(6).
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_yymm.
CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
EXPORTING
ACTUAL_MONTH = sy-DATUM+0(6)
* FACTORY_CALENDAR = ' '
* HOLIDAY_CALENDAR = ' '
LANGUAGE = SY-LANGU
* START_COLUMN = 8
* START_ROW = 5
IMPORTING
SELECTED_MONTH = p_yymm
* RETURN_CODE =
EXCEPTIONS
FACTORY_CALENDAR_NOT_FOUND = 1
HOLIDAY_CALENDAR_NOT_FOUND = 2
MONTH_NOT_FOUND = 3
OTHERS = 4
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
170307更:
如果是年月区间,则low,high分别加上:
SELECT-OPTIONS: S_YYMM FOR S031-SPMON DEFAULT SY-DATUM+0(6) TO SY-DATUM+0(6) OBLIGATORY.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_YYMM-LOW.
PERFORM FRM_F4_S_YYMM USING S_YYMM-LOW.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_YYMM-HIGH.
PERFORM FRM_F4_S_YYMM USING S_YYMM-HIGH.
FORM FRM_F4_S_YYMM USING S_YYMM_LOW_OR_HIGH.
CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
EXPORTING
ACTUAL_MONTH = SY-DATUM+0(6)
* FACTORY_CALENDAR = ' '
* HOLIDAY_CALENDAR = ' '
LANGUAGE = SY-LANGU
* START_COLUMN = 8
* START_ROW = 5
IMPORTING
SELECTED_MONTH = S_YYMM_LOW_OR_HIGH
* RETURN_CODE =
EXCEPTIONS
FACTORY_CALENDAR_NOT_FOUND = 1
HOLIDAY_CALENDAR_NOT_FOUND = 2
MONTH_NOT_FOUND = 3
OTHERS = 4.
ENDFORM. " FRM_F4_S_YYMM