Select 在选择选项中选择特定月份内的数据

Select 在选择选项中选择特定月份内的数据,select,parameters,report,abap,monthcalendar,Select,Parameters,Report,Abap,Monthcalendar,这个ABAP代码可以工作,但只工作一次。我使用不同的参数运行此代码,但结果数据不变。我怎样才能解决它 PARAMETERS : S_MONTH LIKE ISELLIST-MONTH OBLIGATORY. SELECT-OPTIONS : S_DATE FOR SY-DATUM. AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_MONTH. PERFORM GET_DATES. FORM GET_DATES. DATA: MONTH LIKE

这个ABAP代码可以工作,但只工作一次。我使用不同的参数运行此代码,但结果数据不变。我怎样才能解决它

PARAMETERS : S_MONTH LIKE ISELLIST-MONTH OBLIGATORY.
SELECT-OPTIONS : S_DATE FOR SY-DATUM.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_MONTH.
PERFORM GET_DATES.

FORM GET_DATES.
 DATA: MONTH     LIKE ISELLIST-MONTH,
       FIRST_DAY LIKE SY-DATUM,
       LAST_DAY  LIKE SY-DATUM.
 MONTH = SY-DATUM+0(6).  "default
 CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
  EXPORTING
   ACTUAL_MONTH   = MONTH
  IMPORTING
   SELECTED_MONTH = MONTH.
 IF SY-SUBRC <> 0.
 "put some message
 ENDIF.
 CONCATENATE MONTH '01' INTO FIRST_DAY.

 CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
  EXPORTING
   DAY_IN            = FIRST_DAY
  IMPORTING
   LAST_DAY_OF_MONTH = LAST_DAY.
 IF SY-SUBRC <> 0.
  "put some message
 ENDIF.

 S_DATE-LOW = FIRST_DAY.
 S_DATE-HIGH = LAST_DAY.
 S_DATE-SIGN = 'I'.
 S_DATE-OPTION = 'BT'.
 APPEND S_DATE.

 S_MONTH = MONTH.
ENDFORM.
PARAMETERS:S_MONTH,如ISELLIST-MONTH。
SELECT-OPTIONS:SY-DATAM的S_日期。
在S_月价值请求的选择屏幕上。
执行GET_日期。
表格日期。
数据:与ISELLIST-MONTH类似的月份,
像SY-DATAM一样的第一天,
像SY-DATAM一样的最后一天。
月份=SY基准+0(6)。“违约
调用函数“弹出”以选择月份
出口
实际月份=月份
进口
所选月份=月份。
如果SY-SUBRC为0。
“请留言
恩迪夫。
将月份“01”连接到第一天。
调用函数“RP\u最后\u天\u个月”
出口
第一天
进口
每月的最后一天=最后一天。
如果SY-SUBRC为0。
“请留言
恩迪夫。
S_DATE-LOW=第一天。
S_DATE-HIGH=最后一天。
S_日期符号='I'。
S_日期选项='BT'。
附加S_日期。
S_月=月。
尾型。

添加刷新S_日期。在追加S_日期之前。您现在只需追加您所做的每个选择。

我不明白。您的实际问题是什么?@vwegert我首先运行此代码,它很完美,但是。我可以更改参数select optıon NOT changed。select optıon data是以前的数据。我是如何解决的? REFRESH S_DATE. APPEND S_DATE.