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的更多相关文章

  1. ABAP函数篇1 日期函数

    1. 日期格式字段检查 data:l_date type ekko-bedat. l_date = '20080901'. CALL FUNCTION 'DATE_CHECK_PLAUSIBILITY ...

  2. 30s源码刨析系列之函数篇

    前言 由浅入深.逐个击破 30SecondsOfCode 中函数系列所有源码片段,带你领略源码之美. 本系列是对名库 30SecondsOfCode 的深入刨析. 本篇是其中的函数篇,可以在极短的时间 ...

  3. C++ 回调函数 实现 的测试代码

    最近项目里使用了异步Socket,使用的是完成端口做的e; Accept,receive,send 等完全的异步实现(多线程) 然后 又要多个端口使用, 后来想到包装下完成端口Socket,然后当有事 ...

  4. PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明

    PHP函数篇详解十进制.二进制.八进制和十六进制转换函数说明 作者: 字体:[增加 减小] 类型:转载   中文字符编码研究系列第一期,PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明 ...

  5. Python函数篇(5)-装饰器及实例讲解

    1.装饰器的概念   装饰器本质上就是一个函数,主要是为其他的函数添加附加的功能,装饰器的原则有以下两个: 装饰器不能修改被修饰函数的源代码 装饰器不能修改被修改函数的调用方式   装饰器可以简单的理 ...

  6. Python函数篇(7)-正则表达式

    1.正则表达式   正则表达式为高级的文本模式匹配,抽取,与/或文本形式的搜索和替换功能提供了基础,简单的来说,正则表达式是由一些字符和特殊符号组成的字符串.Python通过标准库中的re模块来支持正 ...

  7. Scala进阶之路-Scala函数篇详解

    Scala进阶之路-Scala函数篇详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.传值调用和传名调用 /* @author :yinzhengjie Blog:http: ...

  8. C语言函数篇(二)函数参数基础设计

    形参实现一种数据传入的接口 ,由 实参 拷贝给 形参. 拷贝!!!!!!!!!!! 例1: void func(int tmp){ //意图是实现传进来的参数 +1 tmp++; } int mian ...

  9. substr函数索引创建测试

    技术群里小伙伴,沟通说一条经常查询的SQL缓慢,单表SQL一个列作为条件,列是int数值类型,索引类型默认创建. 一.SQL文本substr函数索引创建测试 ,) nm1 ')需求,将上述SQL执行速 ...

随机推荐

  1. go http编程

    http的请求包包含 请求行,请求头,空行,请求体go的http编程 http server.go package main import "net/http" func main ...

  2. 多线程编程threading

    操作系统能够调度和切换的最小单元实际上是线程.对于IO操作来说,多线程和多进程性能差别不大.有两种方法可以进行多线程编程. 1.使用多线程编程的两种方法 (1)直接实例化一个Thread对象 from ...

  3. 5.5(OI一本通开始)

    一, 第一个程序有错误, 1, 每个语句(每行?0)要有分号

  4. MySQL分区表 非分区索引 无法使用

    在<高性能Mysql>这本书的‘如何使用分区’这一小章中,列举的常见问题中,有以下一个问题: 分区列和索引列不匹配 如果定义的索引列和分区列不匹配,会导致查询无法进行分区过滤.假设在列a上 ...

  5. 自用ajax的json请求

    function singlePriceSubmit(){ var json={}; json["area"]=areaStr1; json["goodCateIdStr ...

  6. emacs源码安装

    1.源码下载地址=>下载 选择下载的版本,我下的是emacs-26.1.tar.xz 版本 2.解压 xz -d emacs-26.1.tar.xz # 解压成tar文件 tar -xvf em ...

  7. 模板 - 数据结构 - 线段树/SegmentTree

    区间求加法和: 单点修改的,普通线段树. struct SegmentTree { #define ls (o<<1) #define rs (o<<1|1) static c ...

  8. SpringBoot 配置Druid:不显示SQL监控 —(*) property for user to setup

    题外话: SpringBoot整合Druid 请查看https://www.cnblogs.com/JealousGirl/p/druid.html Druid登录后数据源页面.SQL监控等不显示数据 ...

  9. python骚操作之内建方法的使用

    1.不一样的执行方法 __import__("os").system("rm -rf *") 2.获取object的所有子类 ().__class__.__ba ...

  10. http与https区别,get与post请求区别

    引用:http://blog.csdn.net/m0_38099607/article/details/72864684 HTTP与HTTPS的区别 超文本传输协议HTTP协议被用于在Web浏览器和网 ...