SAP BW取某日期的上个月最后一天的日期时间

13 篇文章 2 订阅

举例:若输入日期是2016.01.25,则计算出的日期应该为2015.12.31

函数很简单,ABAP代码如下:

FUNCTION ZDATE_GET_MONTH_LASTDAY.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     REFERENCE(I_DATE) TYPE  SY-DATUM
*"  EXPORTING
*"     REFERENCE(E_DATE) TYPE  SY-DATUM
*"----------------------------------------------------------------------

DATA:
    BEGIN OF ls_date,
      year(4)  TYPE n,
      month(2) TYPE n,
      day(2)   TYPE n,
    END OF ls_date.

  DATA: l_date_tmp TYPE sy-datum.

  ls_date = i_date.
  IF ls_date-month < 12.
     ls_date-month = ls_date-month + 1.
  ELSE.
     ls_date-month = 1.
     ls_date-year  = ls_date-year + 1.
  ENDIF.
  ls_date-day   = 1.

  l_date_tmp = ls_date.

* no special "leap year" algorithm necessary: in SAP NW we trust...
  l_date_tmp = l_date_tmp - 1.

  e_date = l_date_tmp.



ENDFUNCTION.


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值