ABAP中,如何知道一个具体的日期是星期几

ABAP中,如何知道一个具体的日期是星期几,第1张

用这个函数:

"根据日期获取星期几

"返回为数字,数字与星期X或者monday之类对应关系TABLES: T246

CALL FUNCTION 'DAY_IN_WEEK'

EXPORTING

DATUM = DATE4

IMPORTING

WOTNR = SUND

REPORT sfq_20130130

DATA: v_bedat LIKE ekko-bedat VALUE '20121212'

DATA: v_date(20) TYPE c

CONCATENATE v_bedat+0(4) '年' v_bedat+4(2) '月' v_bedat+6(2) '日' INTO v_date

WRITE: v_bedat,

    / v_date

执行结果如下:

有图有代码,希望对你有帮助,记得给分哦!

ABAP中,日期类型(参照SY-DATUM)的数据是自带输入帮助的,但这类输入帮助返回的日期,即yyyy,mm,dd

如果你需要的是在输入帮助中只显示年份的话,有如下几种方法

1自定义新的数据元素和域,域的数据类型为Char4,打开域的Value Range页签(最后一个),在Single Val下的列FixVal中输入你想要的帮助年份,如2000,2001,2002,2003等,添加完成后保存激活,然后参照该域创建数据元素,然后就是在选择屏幕或自定义屏幕中参照该数据元素添加屏幕元素,这样该屏幕元素的输入帮助就是你在域中输入的所有年份

2第二种方法就是给屏幕元素添加POV事件

在自定义屏幕中语法是

PROCESS ON VALUE-REQUEST (该语句在PAI中)

FIELD field MODULE modlue

选择屏幕的语法是

AT SELECTION-SCREEN ON VALUE-REQUEST FOR field

3给字段添加输入帮助,语法如下

PARAMETERS:num(6) TYPE c MATCHCODE OBJECT Z_HELP

希望可以帮到你,有问题再交流

这是年月日时分秒在一个字段的数据类型

DATA: lv_timestamp TYPE timestamp "UTC Time Stamp in Short Form (YYYYMMDDhhmmss)

GET TIME STAMP FIELD lv_timestamp

WRITE:/ lv_timestamp

不过还是定义两个字段,一个日期一个时间,一般都用这种

然后用sy-datum和sy-uzeit获取的系统服务器时区时间比较方便

以上就是关于ABAP中,如何知道一个具体的日期是星期几全部的内容,包括:ABAP中,如何知道一个具体的日期是星期几、ABAP 取ekko-bedat这一个日期字段,取出来是2012.12.12。要把日期转换成“2012年12月12日”如何处理、ABAP实例:如何生成年份的输入帮助等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9591291.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存