(轉)ABAP 日期時間函數

ABAP 日期時間函數

 
ABAP日期時間函數收集:

函數名稱 (內頁-點擊名稱可查看操作) 函數說明 備註
FIMA_DATE_CREATE

RP_CALC_DATE_IN_INTERVAL

獲取查詢日期前、後的年、月、日  
LAST_DAY_OF_MONTHS

RP_LAST_DAY_OF_MONTHS

BKK_GET_MONTH_LASTDAY

獲取查詢日期最後一天的日期  
CCM_GO_BACK_MONTHS 獲取查詢日期過去N月的日期  

MONTH_PLUS_DETERMINE 獲取查詢日期未來N月的日期  
     
DATE_GET_WEEK 獲取查詢日期該年的第幾周 輸出格式:YYYYWW
WEEK_GET_FIRST_DAY 獲取查詢週數的第一天  
DAY_IN_WEEK 獲取查詢日期該天是星期幾  
GET_WEEK_INFO_BASED_ON_DATE 獲取查詢日期該年的第幾周和這週週一、週日日期 周起始日是週一
HR_GBSSP_GET_WEEK_DATES 獲取查詢日期該年的第幾周和這週週一、週日日期,該天是周幾 周起始日是週日
     
DATE_CHECK_PLAUSIBILITY 檢查日期有效性 SY-SUBRC = 0 有效
TIME_CHECK_PLAUSIBILITY 檢查時間有效性 SY-SUBRC = 0 有效
HOLIDAY_CHECK_AND_GET_INFO 判斷某天是否是假日  
     
CONVERT_DATE_TO_INTERNAL 將標準日期格式轉換爲數字格式  
CONVERT_DATE_TO_EXTERNAL 將數字日期格式轉換爲系統日期格式  
DATE_CONVERT_TO_FACTORYDATE 將查詢日期轉爲工廠日曆日期  
     
HR_99S_INTERVAL_BETWEEN_DATES 獲取兩日期間的:天數、週數、月數、年數、期間月份開始截止日期  
FIMA_DAYS_AND_MONTHS_AND_YEARS 計算兩日期之間間隔的天數  
FIMA_DATE_COMPARE 比較兩個日期大小 返回:GT、EQ、LT等
SD_DATETIME_DIFFERENCE 兩日期的時間差  
HRVE_CONVERT_TIME 時間:12/24小時制轉換  
     
MONTH_NAMES_GET 獲取所有的月份名字  
WEEKDAY_GET 獲取所有的星期名字  
DAY_ATTRIBUTES_GET 查看日期屬性 包括:該日期是星期幾,第幾天(周2=2),是不是公共假期等 需要輸入國家日曆
     
F4_DATE 彈出日曆對話框,供用戶選擇日期  
F4_CLOCK 彈出時間對話框,供用戶選擇時間  
     
POPUP_TO_SELECT_MONTH 彈出選擇年和月的對話框  
POPUP_CALENDAR_SDB 彈出選擇周的對話框  
     
GET_CURRENT_YEAR 獲得當前的財政年(fiscal year)  
FIRST_DAY_IN_PERIOD_GET 獲得期間首日  
LAST_DAY_IN_PERIOD_GET 獲得期間末日  

 

函數操作說明:

FIMA_DATE_CREATE 函數

獲取輸入日期前、後的年、月、日

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
DATA : date  TYPE vtbbewe-dvalut,
       flag  TYPE trff_flg,
       days  TYPE trff_type_n_2.
 
CALL FUNCTION 'FIMA_DATE_CREATE'
   EXPORTING
     i_date                  =  '20140101' "輸入日期
     i_flg_end_of_month      =  ' '
     i_years                 = 2       "兩年後的日期. 即輸入日期的年加2所得日期,可爲負數,表示前兩年
     i_months                = 1       "一個月後的日期.即輸入日期的月加1所得日期,可爲負數,表示前一個月
     i_days                  = 23      "23天后的日期。可爲負數,表示23天前的日期
     i_calendar_days         = 10      "10天后的日曆。同I_DAYS參數。
     i_set_last_day_of_month =  'X'     "返回的日期爲當前月份的最後一天
   IMPORTING
     e_date                  = date    "返回的日期爲當前月份的最後一天
     e_flg_end_of_month      = flag    "如果輸入參數I_SET_LAST_DAY_OF_MONTH設置’X’了,則返回值爲’X’。
     e_days_of_i_date        = days.   "返回輸入日期的i_calendar_days字段與I_DAYS字段的和。

輸出結果:

date:2016.03.31

flag:X

days:24

 

RP_CALC_DATE_IN_INTERVAL 函數

獲取輸入日期前、後的年、月、日

01
02
03
04
05
06
07
08
09
10
11
DATA calc_date  TYPE p0001-begda.
 
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
   EXPORTING
     date      =  '20140101'    "輸入日期
     days      = 10            "天數
     months    = 0             "月數
     signum    =  '+'           "+號:表示 N天/月/年後的日期, -號:表示過去的日期
     years     = 0             "年數
   IMPORTING
     calc_date = calc_date.    "返回結果:10天后的日期(2014.01.11)

 

LAST_DAY_OF_MONTHS 函數

獲取輸入日期最後一天的日期

01
02
03
04
05
06
07
08
09
10
DATA date  TYPE sy-datum.
 
CALL FUNCTION 'LAST_DAY_OF_MONTHS'
   EXPORTING
     day_in            =  '20140101'     "輸入日期
   IMPORTING
     last_day_of_month = date           "返回日期:20140131
   EXCEPTIONS
     day_in_no_date    = 1
     OTHERS            = 2.

 

RP_LAST_DAY_OF_MONTHS 函數

獲取輸入日期最後一天的日期

01
02
03
04
05
06
   EXCEPTIONS
     day_in_no_date    = 1
     OTHERS            = 2.

 

RP_LAST_DAY_OF_MONTHS 函數

獲取輸入日期最後一天的日期

01
02
03
04
05
06
07
08
09
10
DATA date  TYPE sy-datum.
day_in_no_date    = 1
     OTHERS            = 2.

 

RP_LAST_DAY_OF_MONTHS 函數

獲取輸入日期最後一天的日期

01
02
03
04
05
06
07
08
09
10
DATA date  TYPE sy-datum.
相關文章
相關標籤/搜索