码迷,mamicode.com
首页 > 其他好文 > 详细

ABAP函数篇2 测试DATE_CONVERT_TO_FACTORYDATE

时间:2019-12-04 23:53:44      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:rpg   alt   ali   load   点赞   第一个   sub   bcp   with   

DATE_CONVERT_TO_FACTORYDATE   根据日期返回工厂日历日期

 

函数功能说明:

标出工作日的计算方法

 

 

输入传输 CORRECT_OPTION = ‘+‘
如果指定的日期不是工作日,返回日期后的第一个工作日。

CORRECT_OPTION = ‘-“

如指定日期并非工作天,返回日期前的第一个工作日。

技术图片

技术图片

技术图片

 

测试效果:

Case1.  工厂日历标识          CN, 20191207 是周六

技术图片

结果是 2019.12.07,  则周六是个工作日

技术图片

函数测试参数为-

得到结果也是 2019.12.07

技术图片

但是

咱把工厂日历值改为HK 试一下,  结果是 2019.12.09  周一

技术图片

技术图片

技术图片

函数测试 - 的情况

技术图片

 

CN是所有日都认为是工作日了,997 , 666  ???

技术图片

 

贴个测试程序代码 ,收工

*&---------------------------------------------------------------------*
*& Report YCX_025
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ycx_025 MESSAGE-ID m7.

PARAMETERS: p_ctid LIKE scal-fcalid,
            p_date LIKE bseg-h_budat.

DATA: lv_date       LIKE scal-date,
      lv_facdate    LIKE scal-facdate,
      lv_workingday LIKE scal-indicator.
CALL FUNCTION ‘DATE_CONVERT_TO_FACTORYDATE‘
  EXPORTING
*   correct_option               = plus
    factory_calendar_id          = p_ctid
    date                         = p_date
  IMPORTING
    date                         = lv_date
    factorydate                  = lv_facdate
    workingday_indicator         = lv_workingday
  EXCEPTIONS
    date_after_range             01
    date_before_range            02
    date_invalid                 03
    factory_calendar_not_found   04
    correct_option_invalid       05
    calendar_buffer_not_loadable 06.
CASE sy-subrc.
  WHEN 1.
    MESSAGE s523 WITH p_date INTO DATA(lv_msg).
  WHEN 2.
    MESSAGE s524 WITH p_date INTO lv_msg.
  WHEN 3.
    MESSAGE s525 WITH p_date INTO lv_msg.
  WHEN 4.
    MESSAGE s526 WITH p_date INTO lv_msg.
  WHEN 5.
    MESSAGE s526 WITH p_date INTO lv_msg.
  WHEN 6.
    MESSAGE s526 WITH p_date INTO lv_msg.
  WHEN OTHERS .
    WRITE: /‘必须转化为工厂日历日期的日期:‘, lv_date,
           /‘指定日历中的工作日数:‘, lv_facdate,
           /‘表示某日期是否为工作日的标志:‘, lv_workingday.

ENDCASE.

WRITE: lv_msg

 

本人常年接收SAP运维和远程项目,ECC,S/4HANA,CRM,WDA. 

人天可谈,终身售后 有活请联系V信:18925782767(问问题免费,欢迎交流!)

本人常年接收SAP运维和远程项目,ECC,S/4HANA,CRM,WDA. 

人天可谈,终身售后 有活请联系V信:18925782767(问问题免费,欢迎交流!)

 

你盯着我

 不关注

 不点赞

 不评论

 

难道是想暗算我 ???

卡忙on,用丘比特的箭暗算我吧!

笔芯准备  I‘m ready!!
来不及解释了,快上车!!!

技术图片

 

ABAP函数篇2 测试DATE_CONVERT_TO_FACTORYDATE

标签:rpg   alt   ali   load   点赞   第一个   sub   bcp   with   

原文地址:https://www.cnblogs.com/rainysblog/p/11986383.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!