2020-08-23 13:02发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我需要找到给定日期的最近的星期四。 有没有可用的功能模块?...
例如:如果给定日期为星期六的15/02/2020,则应将日期返回为最近的星期四13/02/2020。
如果给定的日期是星期二的18/02/2020,则应返回最近的星期四的20/02/2020。
P_NUMB是星期几
星期一-> 1,.....星期日-> 7
类别lc_date_finder定义。 公共部分。 方法get_nearest_date 输入 iv_date TYPE系统 iv_day_number TYPE i 正在返回 VALUE(rv_nearest_date)TYPE系统。 ENDCLASS。 参数p_date类型sydatum缺省sy-data。 参数p_numbd TYPE i默认值4。 写新的lc_date_finder()-> get_nearest_date(iv_date = p_date iv_day_number = p_numbd)。 类别lc_date_finder IMPLEMENTATION。 方法get_nearest_date。 DATA(lv_day_number)=(iv_date MOD 7)-1。 DATA(lv_delta_pos)= abs(lv_day_number-iv_day_number)。 DATA(lv_delta_neg)= abs(iv_day_number-(lv_day_number + 7))。 rv_nearest_date = COND#(当lv_delta_pos GT lv_delta_neg 然后iv_date-lv_delta_neg ELSE iv_date + lv_delta_pos)。 终结法。 ENDCLASS。
制作一个Abap单元来测试您的方法可能很有趣
最多设置5个标签!
P_NUMB是星期几
星期一-> 1,.....星期日-> 7
制作一个Abap单元来测试您的方法可能很有趣
一周热门 更多>