这篇博客总结了ABAP中处理日期和时间的各种函数,包括检查时间有效性、判定假日、获取日期所在星期、比较日期时间、获取年周信息等。通过这些函数,可以进行日期运算、判断和显示等操作。
摘要由CSDN通过智能技术生成
检查时间有效性 TIME_CHECK_PLAUSIBILITY
DATA:m_time LIKE sy-uzeit VALUE '260000'.
CALL FUNCTION 'TIME_CHECK_PLAUSIBILITY'
EXPORTING
time = m_time
EXCEPTIONS
plausibility_check_failed = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
WRITE: 'sucess'.
ENDIF.
判定某天是否为假日 HOLIDAY_CHECK_AND_GET_INFO
DATA holiday TYPE c.
DATA attributes TYPE STANDARD TABLE OF thol.
DATA m_date type D value '20161001'.
CALL FUNCTION 'HOLIDAY_CHECK_AND_GET_INFO'
EXPORTING
date = m_date "输入日期
holiday_calendar_id = 'CN' "假日日历ID,参照thoc-ident字段,CN为中国
with_holiday_attributes = ' ' "若X,则 holiday_attributes 会带出属性记录
IMPORTING
holiday_found = holiday "输出是否为假日的标记 输出结果:X
TABLES
holiday_attributes = attributes "输出该假日的属性
EXCEPTIONS
calendar_buffer_not_loadable = 1
date_after_range = 2
date_before_range = 3
date_invalid = 4
holiday_calendar_id_missing = 5
holiday_calendar_not_found = 6
OTHERS = 7.
WRITE: '输出:',holiday.
假日的缓冲区数据在表thoc中维护:
检查输入日期是星期几 DAY_IN_WEEK
DATA: m_wotnr TYPE p,
m_datum TYPE d VALUE '20140729'.
CALL FUNCTION 'DAY_IN_WEEK'
EXPORTING
datum = m_datum
IMPORTING
wotnr = m_wotnr.
WRITE:'输入日期:',m_datum,'星期:',m_wotnr.
检查日期有效性 DATE_CHECK_PLAUSIBILITY
DATA:m_date TYPE d VALUE '20140230'.
CALL FUNCTION 'DATE_CHECK_PLAUSIBILITY'
EXPORTING
date = m_date
EXCEPTIONS
plausibility_check_failed = 1
OTHERS
将JAVA
时间
戳转换为
ABAP
日期
/
时间
格式的
时间
戳
DATA: LV_
TIME
STAMP_MSEC TYPE STRING,
LV_DATE TYPE DATUM,
LV_
TIME
TYPE UZEIT.
DATA:E_
TIME
STAMP TYPE TZONREF-TSTAMPS.
DATA:C_TZONE_NONE(6) TYPE C
VALUE
‘UTC-8’.
CLEAR rv_
time
stamp.
LV_
TIME
STAMP_MSEC = 162089780
可以使用
ABAP
中函数 'DATE_CHECK_PLAUSIBILITY' 或'
TIME
_CHECK_PLAUSIBILITY'
检查
日期
和
时间
值是否合法。
用法如下:
CALL
FUNCTION
'DATE_CHECK_PLAUSIBILITY'
EXPORTING
date = v_date
EXCEPTIONS
获取指定
日期
往后推N个月的
日期
,这个函数遇到1.30推下个月的时候,会转成2.28,不会跳到3月
DATA: p_months type I
value
-4, p_date type D.
CALL
FUNCTION
'MONTH_PLUS_DETERMINE'
EXPORTING
MONTHS = 1 #"月份
OLDDATE = '20220130'
IMPORTING
NEWDATE = p_d.
解决description The server encountered an internal error that prevented it from fulfilling this reques
32725
解决java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException
younger��:
解决java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException
wo41chuan_luan_ma:
解决java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException
qq_41737790: