티스토리 툴바


가령 2008.11.17 ~ 2009.08.23 사이에 존재하는 회계월 구해서 어쩌구 저쩌구 해달라는 업무지시를 받고 회계월을 일단 구해보자는 생각으로 테스트 프로그램을 만들었습니다.

혹시라도 이런 필요가 생기면 참고하세요.

REPORT  ytest_syh_002.

*---- screen
PARAMETERS : l_frdate TYPE sydatum,
             l_todate TYPE sydatum.

TYPES      : BEGIN OF ty_period,
               spmon TYPE spmon,
               qty   TYPE dzmeng,
               uom   TYPE dzieme,
             END OF ty_period.

DATA       : it_period TYPE TABLE OF ty_period WITH HEADER LINE.
DATA       : l_initial_01 TYPE sydatum,
             l_ending_01  TYPE sydatum,
             l_interim_01 TYPE sydatum.

*---- step 0.
CONCATENATE l_frdate(6'01' INTO l_initial_01.
CONCATENATE l_todate(6'01' INTO l_ending_01.

CLEAR : it_period, it_period[].
CLEAR : l_interim_01.

*---- step 1.
it_period-spmon = l_initial_01(6).
APPEND it_period.  CLEAR it_period.

*---- step 2.
DO.
  CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
    EXPORTING
      date      = l_initial_01
      days      = '00'
      months    = '01'
      signum    = '+'
      years     = '00'
    IMPORTING
      calc_date = l_interim_01.
  IF l_interim_01 < l_ending_01.
    it_period-spmon = l_interim_01(6).
    APPEND it_period.  CLEAR it_period.
    l_initial_01 = l_interim_01.
  ELSE.
    EXIT.
  ENDIF.
ENDDO.

*---- step 3.
it_period-spmon = l_ending_01(6).
APPEND it_period.  CLEAR it_period.

*---- output
LOOP AT it_period.
  WRITE : /1 it_period-spmon.
ENDLOOP.
저작자 표시
Posted by 한상열

트랙백 주소 :: http://erpsarang.tistory.com/trackback/9 관련글 쓰기

댓글을 달아 주세요

이전페이지 1 2 3 4 5 6 7 8 ... 12 다음페이지

태그목록

사이드바 열기