data
: l_idx
like sy
-tabix
,
ZCALMONTH ( 6 ) TYPE C ,
ZSTDAY TYPE sy -datum ,
ZTDAY TYPE sy -datum ,
ls_range type rssdlrange .
BREAK-POINT .
read table l_t_range with key fieldname = 'CALMONTH' .
l_idx = sy -tabix .
*....
"月末
CALL FUNCTION 'ZRP_LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN = sy -datum
IMPORTING
LAST_DAY_OF_MONTH = ZSTDAY
EXCEPTIONS
DAY_IN_NO_DATE = 1
OTHERS = 2 .
ZCALMONTH = ZSTDAY+0 ( 6 ) .
CONCATENATE ZCALMONTH '01' INTO ZTDAY .
ZTDAY = ZTDAY - 1 .
ZCALMONTH = ZTDAY+0 ( 6 ) .
ls_range -low = ZCALMONTH .
ls_range -high = ZCALMONTH .
ls_range - sign = 'I' .
LS_RANGE -OPTION = 'BT' .
ls_range -iobjnm = '0CALMONTH' .
ls_range -fieldname = 'CALMONTH' .
if l_idx <> 0 .
modify l_t_range index l_idx .
else .
append ls_range to l_t_range .
endif .
p_subrc = 0 .
ZCALMONTH ( 6 ) TYPE C ,
ZSTDAY TYPE sy -datum ,
ZTDAY TYPE sy -datum ,
ls_range type rssdlrange .
BREAK-POINT .
read table l_t_range with key fieldname = 'CALMONTH' .
l_idx = sy -tabix .
*....
"月末
CALL FUNCTION 'ZRP_LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN = sy -datum
IMPORTING
LAST_DAY_OF_MONTH = ZSTDAY
EXCEPTIONS
DAY_IN_NO_DATE = 1
OTHERS = 2 .
ZCALMONTH = ZSTDAY+0 ( 6 ) .
CONCATENATE ZCALMONTH '01' INTO ZTDAY .
ZTDAY = ZTDAY - 1 .
ZCALMONTH = ZTDAY+0 ( 6 ) .
ls_range -low = ZCALMONTH .
ls_range -high = ZCALMONTH .
ls_range - sign = 'I' .
LS_RANGE -OPTION = 'BT' .
ls_range -iobjnm = '0CALMONTH' .
ls_range -fieldname = 'CALMONTH' .
if l_idx <> 0 .
modify l_t_range index l_idx .
else .
append ls_range to l_t_range .
endif .
p_subrc = 0 .