2020-08-17 06:37发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
我需要一个例程来计算DTP过滤器例程中使用的前几个月的YTD
我们不会输入将基于当前日期的任何日期
例如:
2020年1月==>它将显示2019年1月至2019年12月年初至今
2020年2月==>仅显示2020年1月至今
2020年3月==>它将显示2020年1月至2020年2月年初至今
.....
2020年12月==>它将显示2020年1月至2020年11月
请问有关此Abap代码的帮助吗?
谢谢
您好,
您可以使用功能模块RP_CALC_DATE_IN_INTERVAL确定日期(负一年和负一个月)。
您可以使用类似以下的方法来确保 选择完整的期间(开始日期=每月的第一天,结束日期=每月的最后一天):
数据:lv_start TYPE数据, lv_end TYPE数据。 *确定日期减去一年 通话功能'RP_CALC_DATE_IN_INTERVAL' 出口 日期= sy-datum 天= 00 个月= 00 signum ='-' 年= 01 输入 calc_date = lv_start。 *确保日期设置为月初 lv_start + 6(2)='01'。 *确定上个月 通话功能'RP_CALC_DATE_IN_INTERVAL' 出口 日期= sy-datum 天= 00 个月= 01 signum ='-' 年= 00 输入 calc_date = lv_end。 *确保选择每月的最后一天 通话功能" RP_LAST_DAY_OF_MONTHS" 出口 day_in = lv_end 输入 LAST_DAY_OF_MONTH = lv_end 例外情况 DAY_IN_NO_DATE = 1 其他= 2 。 如果sy-subrc <> 0。 *在这里实施适当的错误处理 ENDIF。 最诚挚的问候, Geert-Jan Klaps
最诚挚的问候,
Geert-Jan Klaps
以下代码已经可以解决问题。 所有变量均为数据类型。 ABAP内核非常了解如何通过加减运算来计算日期和时间类型。
firstofthismonth = sy-datum(6)&&'01'。 lastdayofytd = firstofthismonth-1."上个月的最后一天 firstdayofytd = lastdayofytd(4)&&'0101'。 "上个月的一月一日
最多设置5个标签!
您好,
您可以使用功能模块RP_CALC_DATE_IN_INTERVAL确定日期(负一年和负一个月)。
您可以使用类似以下的方法来确保 选择完整的期间(开始日期=每月的第一天,结束日期=每月的最后一天):
以下代码已经可以解决问题。 所有变量均为数据类型。 ABAP内核非常了解如何通过加减运算来计算日期和时间类型。
一周热门 更多>