您的位置:首页 > 其它

有关日期的SAP函数使用

2012-07-03 20:59 309 查看
文章摘要:SCAL函数组日历功能有以下8个函数:1)DATE_COMPUTE_DAY 根据日期返回的星期值:根据输入一个日期,返回该日期是每周中第几个,注意周日是每周的第7天,周一是每周的第1天.其实这个函数很简单,就是利用每周7天的原理,进行除得到余数,标准的函数是以周日为第一天,所以增加了判断IF DAY_P > 1. DAY_P = ...
SCAL函数组日历功能有以下8个函数:

1)DATE_COMPUTE_DAY 根据日期返回的星期值:根据输入一个日期,返回该日期是每周中第几个,注意周日是每周的第7天,周一是每周的第1天.其实这个函数很简单,就是利用每周7天的原理,进行除得到余数,标准的函数是以周日为第一天,所以增加了判断

IF DAY_P > 1.

     DAY_P = DAY_P - 1.

ELSE.

     DAY_P = DAY_P + 6.

ENDIF.

如果按我国习惯,周日为第1天时,则判断可以变成:

IF DAY_P < 1.

     DAY_P = DAY_P + 7.

ENDIF.

2)DATE_CONVERT_TO_FACTORYDATE 根据日期返回工厂日历日期:有些国家有自己的传统节日,或者有些企业工作日有些不同,比如六天制,七天制,所以可以设置不同的工厂日历,该函数则是输入一个日期、工厂日历标识、工作日计算方法的标识(+与-两种情况,+表示如果输入的日期在工厂日历中并非工作日,则返回的日期为输入日期的后一个工作日,-表示如果输入的日期在工厂日历中并非工作日,则返回的日期为输入日期的前一个工作日),输出转化为工厂日历日期的日期(如果输入日期为工厂日历中的工作日,则返回输入日期,如果不是,则是前/后一个工作日)、指定日历中的工作日数(输入日期在工厂日历中的工作日的顺序,这跟工厂日期的“工厂日期开始”有关,空时默认为0,第1个工作日="工厂日期开始"+1)、表示某日期是否为工作日的标志(如果为工作日则为空,否则将是输入工作日计算方法的标识)

3)DATE_GET_WEEK 返回某日期所在的礼拜:根据输入日期,返回该日期所在年份中的周数,注意周日是第7天,如果该周日在哪一年,则相应周的其他日期也在哪一年。比如2008-12-31是周三,该周的周日是2009-01-04是2009年的第一周,所以输入2008-12-31时,返回是200901。

4)EASTER_GET_DATE 返回一个年度的复活节日期(复活节,复活节星期日):输入年份,返回当年复活节的日期。耶稣被钉死在十字架上,第三天身体复活,复活节因此得名。复活节是基督宗教最重大的节日,重要性超过圣诞节,宗教起源与节期在欧美各国。节期大致在3月22日至4月25日之间。

5)FACTORYDATE_CONVERT_TO_DATE 根据一个工厂日历日期返回的日期:输入工厂日历ID与工作日的序列号,返回工作日的日期,工作日的序列号与“工厂日期开始”相关,即输入的工作日序列号必须大于等于“工厂日期开始”,否则返回空值。

6)HOLIDAY_CHECK_AND_GET_INFO 检查日期是否是公共假日并在需要时提供信息:输入一个日期、假日日历 ID、属性标识,输出是否为假日的标记以及该假日的属性。

7)LAST_FACTORYDATE_GET Calendar function: Return last factory date for a factory calendar:输入工厂日期ID,返回最后一个工作日以及工作日数。

8)WEEK_GET_FIRST_DAY 返回一周的第一天:输入年份与周数,返回该周的第1天,注意是从周一开始算。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息