求去年本月合计(ABAP程序)

*&---------------------------------------------------------------------*
*& 子例程池              Z_VAR_EXAMPLE
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

PROGRAM z_var_zcalday_v095 .


*&---------------------------------------------------------------------*
*& Subroutine Pool   Z_VAR_ZLDATE
*&
*&---------------------------------------------------------------------*
* Program ID          : Z_VAR_ZLDATE
* Program Title       : User exit for ZLDATE
* Development ID      :
* Description         : Exit for variable ZLDATE
*======================================================================
* CHANGE HISTORY LOG
*----------------------------------------------------------------------
* Date       | Name                 | Change ID | Change Request Number
*----------------------------------------------------------------------
*            |                      | IDDXXXXX  |
* DESCRIPTION:
***********************************************************************
*&---------------------------------------------------------------------*

TYPE-POOLS rrs0 rsr rro01 .

DATA l_s_range      TYPE rsr_s_rangesid ,
      l_s_var_range  TYPE rrrangeexit .

**&---------------------------------------------------------------------*
**&      Form  DO_USER_EXIT
**&---------------------------------------------------------------------*
**       text
**----------------------------------------------------------------------*
**      -->I_VNAM         Name of Variable to be Replaced
**      -->I_VARTYP       Variable Type (Characteristic Value, Text, Formula, and so on)
**      -->I_IOBJNM       InfoObject that the Variable Refers to
**      -->I_S_COB_PRO    InfoObject Properties
**      -->I_S_RKB1D      Query Reporting Attribute
**      -->I_PERIV        Query Definition Attribute
**      -->I_T_VAR_RANGE  Variable Range
**      -->I_STEP         Step
**      -->E_T_RANGE      Variables Value Table
**----------------------------------------------------------------------*
FORM do_user_exit        USING    i_vnam         LIKE rszglobv -vnam
                                 i_vartyp       LIKE rszglobv -vartyp
                                 i_iobjnm       LIKE rszglobv -iobjnm
                                 i_s_cob_pro    TYPE rsd_s_cob_pro
                                   "i_s_cob_pro   type ZRSD_S_COB_PRO
                                 i_s_rkb1d      LIKE rsr_s_rkb1d
                                 i_periv        TYPE rro01_s_rkb1f -periv
                                 i_t_var_range  TYPE rrs0_t_var_range
                                 i_step         TYPE  i
                         CHANGING e_t_range      TYPE rsr_t_rangesid .

   DATA i_year ( 4 TYPE  c ,
        i_month ( 2 TYPE  c ,
        I_MONTH2 ( 2 TYPE  C ,
        I_DATE  TYPE SY -DATUM ,
        L_DATE  TYPE SY -DATUM ,
        l_DATE2  TYPE SY -DATUM .

   IF i_step  2 .
     L_DATE  SY -DATUM  1 .

       CLEAR l_s_range .
      BREAK-POINT .
      i_year  L_DATE ( 4 ) .
      i_year  =  i_year  1 .
      i_month  l_DATE+4 ( 2 ) .
       CONCATENATE i_year i_month  '01'  INTO l_s_range -low .
      I_DATE  l_s_range -low .

CALL  FUNCTION  'SN_LAST_DAY_OF_MONTH'
   EXPORTING
    DAY_IN              I_DATE
  IMPORTING
   END_OF_MONTH        l_DATE2 .
   l_s_range -HIGH  l_DATE2 .

     l_s_range - sign  'I' .
        l_s_range -opt  'BT' .
       APPEND l_s_range  TO e_t_range .
       EXIT .

   ENDIF .

ENDFORM.                    "do_user_exit

===========================================

然后到query designer中做个 ZCALDAY_V95的用户出口变量


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部