ABAP 日期時間函數


HR_JP_MONTH_BEGIN_END_DATE

  CALL FUNCTION 'HR_JP_MONTH_BEGIN_END_DATE'
    EXPORTING
      IV_DATE             = '20160615'
    IMPORTING
      EV_MONTH_BEGIN_DATE = ZBEGDA  "2016.06.01
      EV_MONTH_END_DATE   = ZENDDA. "2016.06.30

FIMA_DATE_CREATE 函數

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

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 函數

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

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 函數

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

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 

BKK_GET_MONTH_LASTDAY 

 

F4_DATE 函數

為 F4 幫助顯示日歷,彈出日歷對話框,供用戶選擇日期

DATA:l_date TYPE sy-datum.

  CALL FUNCTION 'F4_DATE'
    EXPORTING
      date_for_first_month         = sy-datum
    IMPORTING
      select_date                  = l_date     "用戶選擇后返回的日期
    EXCEPTIONS
      calendar_buffer_not_loadable = 1
      date_after_range             = 2
      date_before_range            = 3
      date_invalid                 = 4
      factory_calendar_not_found   = 5
      holiday_calendar_not_found   = 6
      parameter_conflict           = 7
      OTHERS                       = 8.

F4_CLOCK 函數

為 F4 幫助顯示時間,彈出時間對話框,供用戶選擇時間

DATA: l_time TYPE sy-uzeit.

  CALL FUNCTION 'F4_CLOCK'
    EXPORTING
      start_time    = sy-uzeit
      display       = ' '
    IMPORTING
      selected_time = l_time.

POPUP_TO_SELECT_MONTH 函數

為 F4 幫助顯示月份:彈出選擇年和月的對話框

PARAMETERS: p_year   TYPE mard-lfgja DEFAULT sy-datum+0(4),
            p_month  TYPE mard-lfmon.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_month.

  DATA: actual_month   LIKE isellist-month,
        selected_month LIKE isellist-month,
        return_code    TYPE sy-subrc.

  CONCATENATE p_year sy-datum+4(2) INTO actual_month.

  CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
    EXPORTING
      actual_month               = actual_month   "傳入年份
      factory_calendar           = ' '            "工廠日歷 ID
      holiday_calendar           = ' '            "假日日歷 ID
      language                   = sy-langu       "當前系統語言
      start_column               = 8              "彈出框屏幕位置
      start_row                  = 5              "彈出框屏幕位置
    IMPORTING
      selected_month             = selected_month "返回用戶輸入月份
      return_code                = return_code    "返回 sy-subrc
    EXCEPTIONS
      factory_calendar_not_found = 1
      holiday_calendar_not_found = 2
      month_not_found            = 3
      OTHERS                     = 4.

  IF return_code = 0.

    p_year  = selected_month+0(4).
    p_month = selected_month+4(2).

  ENDIF.

POPUP_CALENDAR_SDB 函數

彈出選擇周的對話框

DATA: begin_date TYPE sy-datum,
      end_date   TYPE sy-datum.

CALL FUNCTION 'POPUP_CALENDAR_SDB'
  EXPORTING
    sel_day      = 'X'        "啟用天 選擇
    sel_week     = 'X'        "啟用周 選擇
    sel_month    = 'X'        "啟用月 選擇
    sel_interval = 'X'
    focus_day    = sy-datum   "默認選擇日期
  IMPORTING
    begin_date   = begin_date "返回選擇周第一天
    end_date     = end_date.  "返回選擇周最后一天

GET_CURRENT_YEAR 函數

獲得當前的財政年(Fiscal year)

DATA: currm TYPE bkpf-monat,
      curry TYPE bkpf-gjahr,
      prevm TYPE bkpf-monat,
      prevy TYPE bkpf-gjahr.

CALL FUNCTION 'GET_CURRENT_YEAR'
  EXPORTING
    bukrs = '3010'      "輸入公司代碼
    date  = sy-datum    "輸入日期
  IMPORTING
    currm = currm       "當前會計期間
    curry = curry       "當前會計年度
    prevm = prevm       "上期會計期間
    prevy = prevy.      "上期會計年度

 

http://www.sapjx.com/abap-datetime-function.html 

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM