메뉴 건너뛰기

SAP 한국 커뮤니티

workingday 기준으로 N일 후 날짜구하는 펑션입니다.

홍성현 2007.08.08 09:39 조회 수 : 5029 추천:18

 

function z_test_date.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     VALUE(I_DATE) TYPE  DATUM
*"     VALUE(CNT) TYPE  I
*"  EXPORTING
*"     VALUE(O_DATE) TYPE  DATUM
*"----------------------------------------------------------------------


  data: itab like iscal_day occurs 0 with header line"휴일을 받아오는 inner table
           line type i" itab의 라인수
           isholy type c"휴일여부
           acc_date type datum, " 기준일
           res_date type datum, " 리턴일
           workingdaycnt type i" 근무일수

  acc_date = i_date.
  workingdaycnt = 0.

  check cnt > 0.

  do.
    isholy = 'N'.

*------------------------------------------------
* 기준일에 하루를 더한다.
    clear res_date.
    call function 'RP_CALC_DATE_IN_INTERVAL'
      exporting
        date      = acc_date
        days      = '1'
        months    = '00'
        signum    = '+'
        years     = '00'
      importing
        calc_date = res_date.
*------------------------------------------------

*------------------------------------------------
* 오늘 날짜가 휴일인지 체크
    clear o_date.
    clear itab.
    refresh itab.

    call function 'HOLIDAY_GET'
      exporting
        holiday_calendar = 'KR' " COUNTRY CODE
        factory_calendar = 'KR' " FACTORY ID
        date_from        = res_date
        date_to          = res_date
      tables
        holidays         = itab.

    if sy-subrc = 0.
      describe table itab lines line.
      if line <> 0.
*        loop at itab.
*        itab-date,
*        itab-freeday,
*        itab-holiday,
*        itab-holiday_id,
*        itab-txt_short,
*        itab-txt_long.
*        endloop.
        isholy = 'Y'.
      endif.
    endif.
*------------------------------------------------

    move res_date to acc_date.

    if isholy = 'N'" 휴일이 아니면 근무일을 더한다.
      add 1 to workingdaycnt .
    endif.

    if workingdaycnt = cnt.
      o_date = res_date.
      exit.
    endif.

  enddo.


endfunction.
번호 제목 글쓴이 날짜 조회 수
407 ICON으로 DISPLAY sapjoy 2007.08.06 4029
406 너무도 당연해서 가끔 잊곤하는 공기와 같은 존재 'F1' key [5] 백혜정 2007.09.19 4034
405 Widget 한번 개발해 보세요.. [11] 해처리 2008.04.17 4038
404 interanl table header line [1] sapjoy 2006.12.05 4040
403 설명이 비교적 자세하고 원리를 알수 있는 효과적인 ABAP코딩 문서.doc [13] file 박영신 2007.07.26 4041
402 테이블 데이터 엑셀 업로드 프로그램 sapjoy 2014.06.17 4056
401 Lock objects [3] sapjoy 2006.12.20 4058
400 SAP Service Marketplace, SDN에 클릭한번으로 로그인 하는 방법 [2] sapjoy 2007.05.25 4059
399 심플한 Progress 올려봅니다. [2] 김지성 2007.06.19 4074
398 DUMP : CONNE_IMPORT_WRONG_STRUCTURE INDX(KE) sapjoy 2015.03.18 4074
397 아밥에서 다운받을시 로컬피씨에 폴더 중복 방지 소스 [3] file 양제부 2007.05.16 4086
396 Adding custom fields to CS01, CS02 and CS03 (Bill Of Materials) [1] file 노름마치 2009.07.10 4087
395 Debug program running in background [1] sapjoy 2006.12.08 4091
394 SAP R/3가 지원하는 제조전략 명신용 2007.04.03 4094
393 sap에서 메일 보내고 받기 소스와 예제 설명입니다. [7] file 박.. 2007.05.19 4095
392 ABAP에서 .Net connector로 .Net Function호출 시 한글이 깨질 경우 홍성현 2007.08.08 4120
391 Implementing Screen-exit for transaction MIGO [5] file 노름마치 2009.07.10 4120
390 간단팁2 : 특정 값으로 구분된 텍스트, 한방에 분리 및 각각의 변수에 저장 [2] 윤훈태 2007.10.15 4141
389 saplogon 할때 갑자기 윈도우 services화일 못찾을떄 요섭아부지 2008.06.12 4145
388 SAT 사용법 DEMO 영상 [3] sapjoy 2015.01.21 4152