当我致电FIMA_DATE_CREATE时,返回意外结果

2020-08-22 14:53发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨朋友, 当我致电 FIMA_...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨朋友,

当我致电" FIMA_DATE_CREATE"时。

 DATA:日期TYPE vtbbewe-dvalut,
 标志TYPE trff_flg,
 天TYPE trff_type_n_2。
 通话功能'FIMA_DATE_CREATE'
 出口
 i_date ='20200223'
 i_days = 6
 输入
 e_date =日期
 e_flg_end_of_month =标志
 e_days_of_i_date =天。  

e_date = 20200229。

当输入i_date ='20200224'。时,e_date也返回'20200229'..

有人可以告诉我为什么吗?

5条回答
派大星 ヾ
2020-08-22 15:01 .采纳回答
  1. 未发布FM FIMA_DATE_CREATE,既不用于内部SAP,也不用于外部CUSTOM
  2. 参数I_CALENDAR_DAYS用于添加实际日历天
  3. 参数I_DAYS用于添加利息日 (查找FM参数的德语翻译),而根据德国利息法(Deutsche Zinsmethode),每个月有30个利息日30/360

在上面的示例中,加了6和7个利息日 (I_DAYS)到日期23.02.2020,将使您到日期29.02.2020,因为您也总是获得30个2月的利息日。 第八个利息日将使您到达2020年3月1日。

因此,从技术上讲,在a年中,您将在2月29日获得2个利息日,而在非year年中,您将获得3个利息。 2月28日的几天。

=>这就是为什么您得到这些结果的原因。

您是否通过"意外"选择了此FM? 您是否只是想在日期中添加天?

最简单的方法是使用" +"或" ADD"运算符。 ABAP非常了解如何在ABAP类型DATS上处理此操作。

数据:lv_days TYPE int4。
 数据:lv_date TYPE基准。

 将lv_days加到lv_date。
 

如果要在给定日期添加工作日,则需要将SAP或自定义工厂日历与国家和/或区域性假日以及可能的自定义休息日一起应用到已发布的标准中 功能模块,例如

一周热门 更多>