ABAP: 今天是星期几?
看到这个问题, 第一反应是: 能不能找到相关的function module. ABAP的function module实在太方便, 有时候, 这样的方便反而妨碍我们思考...
其实有一个很简单的方法可以算出今天是星期几, 且看下面的代码:
DATA: lv_date TYPE sy-datum,lv_date2 TYPE sy-datum value '19700101',lv_days TYPE i.DATA: lv_week TYPE i.lv_date = sy-datum.lv_days = lv_date - lv_date2 + 4.lv_week = lv_days MOD 7.WRITE: lv_week.
ABAP的时间类型转换为i类型会变成天数, 两个日期相减能得到之间相差的天数, 1970年1月1日是星期四, 所以我的公式加上了4, 最后对日数取余.
余数0: 星期天
余数1: 星期一
......
P.S. 谢谢Palm童鞋, 教我太多了
P.S. 相关的历史(摘自百度知道)
1970年1月1日
1969年8月,贝尔实验室的程序员肯汤普逊利用妻儿离开一个月的机会,开始着手创造一个全新的革命性的操作系统,他使用B编译语言在老旧的PDP-7机器上开发出了Unix的一个版本。随后,汤普逊和同事丹尼斯里奇改进了B语言,开发出了C语言,重写了UNIX,新版于1971年发布。那时的计算机操作系统是32位,时间用32位有符号数表示,则可表示 68 年, 用32位无符号数表示,可表示136年。他们认为 以 1970年 为时间 原点 足够可以了。 因此,C 的 time 函数 就这么 定了,后来的 java 等也用它,微机也用它,工作站本来就是unix系统当然也用它。(今后若用64位机年限更没问题。)1970年1月1日 算 UNIX 和 C语言 生日。由于主流计算机和操作系统都用它,其他仪器,手机等也就用它了。
闰年
闰年(Leap Year)是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。 地球绕日运行周期为365天5小时48分46秒(合365.24219天),即一回归年(tropical year)。公历的平年只有365日,比回归年短约0.2422 日,每四年累积约一天,把这一天加于2月末(即2月29日),使当年时间长度变为366日,这一年就为闰年。 需要注意的是,现在的公历是根据罗马人的"儒略历"改编而得。由于当时没有了解到每年要多算出0.0078天的问题,从公元前46年,到16世纪,一共累计多出了10天。为此,当时的教皇格雷果里十三世,将1582年10月5日人为规定为10月15日。并开始了新闰年规定。即规定公历年份是整百数的,必须是400的倍数才是闰年,不是400的倍数的就是平年。比如,1700年、1800年和1900年为平年,2000年为闰年。此后,平均每年长度为365.2425天,约4年出现1天的偏差。按照每四年一个闰年计算,平均每年就要多算出0.0078天,经过四百年就会多出大约3天来,因此,每四百年中要减少三个闰年。闰年的计算,归结起来就是通常说的:四年一闰;百年不闰,四百年再闰。
ABAP: 今天是星期几?相关推荐
- 《SAP ABAP 开发入门》课程正式发布
首先,课程还没有全部做完,这次课程采用的是连载的方式,目前已经完成第二章共计8个课时.以后打算每周至少更新2个课时,在每周三和周六必定更新.当然如果时间允许的话,我会加快课程的制作. 课程购买地址 & ...
- ABAP常用function 收藏
ABAP常用function 收藏 ----------------------------------------------------- 获取生产定单状态 ------------------- ...
- sap abap好用的函数
函数名 描述 SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息 EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT="*& ...
- ABAP data extract 数据抽取总结
这一个星期做得最多的工作就是Dataextract,以下是我这一个星期以来对data extract的工作总结. 所谓Data extract就是通过SAP ABAP代码对数据库数据进行抽取的操作,然 ...
- SAP ABAP 中一些常用函数
函数名描述 ABAP_DOCU_DOWNLOAD Download ABAP documentation in HTML format. ARFC_GET_TID – 以十六进制形式返回终端的IP地址 ...
- ABAP常用Function
----------------------------------------------------- 获取生产定单状态 ------------------------------------- ...
- sap ABAP中常用函数
函数名描述 ABAP_DOCU_DOWNLOAD Download ABAP documentation in HTML format. ARFC_GET_TID – 以十六进制形式返回终端的IP地址 ...
- abap日期函数_ABAP - 日期格式转换 ABAP常用日期处理函数
ABAP - 日期格式转换 现在提供以下一些日期格式转换的函数: Below are several FMs which can be used to convert date format. 1. ...
- ABAP常用函数总结
函数名 描述 SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息 EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT="*& ...
最新文章
- 技术安全与伦理的较量:论道AI的能与不能 | AI Time
- 大数据计算引擎发展的四个阶段
- bootstrap基础
- 阿里巴巴对Java编程【命名风格】的规约
- 在linux上获得线程id的方法
- mysql 定期备份策略,MySQL--3--mysqldump备份策略
- 2003基于栈的回文字符序列判断(C++)
- 8月全球搜索引擎市场:百度位居第四 份额大涨
- c++ string 数组_PHP数组与字符串之间相互转换的方法
- HTML5学习笔记(二十六):JavaScript的错误处理
- C++和C语言的前世今生,两者有什么血缘关系?
- linux buffer cache 过高_工作中经常用的linux命令 free
- 后悔药来了?发出去的微信图文消息删除后不再显示
- Ant 执行 YUICompressor
- 基于GPT2实现考公申论文章生成
- c语言编译bss和data,bss段和data段的区别
- 双核不可阻挡!首款双核处理器Tegra2详解
- Dragonfly单机部署比redis快25倍的缓存中间件
- python杀毒软件程序_使用Python Shells绕过杀毒软件
- 程序员初入职场,如何规划好自己的职业生涯?
热门文章
- [思维模式-19]:《复盘》-7- “积”篇 - 操作复盘- 如何做好复盘
- 增大VirtualBox虚拟硬盘容量
- vue中怎样实现弹出层动画效果?由上而下渐渐显示---封装成复用组件
- 正则大作战 基础篇(一)
- iOS AVCaptureSession使用教程
- 兔子吃狼的故事,看了就知道其中很深的哲理
- java计算机毕业设计教学质量测评系统源码+系统+数据库+lw文档
- 计算机word文档中编辑名字流程,要对一个Word文档进行编辑,首先要()。
- 贝尔商道赚钱思维36道第05道:人之初性本恶
- VOC数据集格式转化