메뉴 건너뛰기

SAP 한국 커뮤니티

펑션 좀 도와주세요.

이종원 2007.04.10 11:51 조회 수 : 2924 추천:127

해당소스는 특정날자를 입력하면 해당날자의 시작일과 마지막 일자를 구하는 펑션입니다.


 


해당 소스 나오는데는 큰 문제는 없구요.


 


하지만 윤달이라는 개념이 있어서 삽입을 해야하는데 넣을때 마다 오류가 발생됩니다.


 


도와주세요.


 


굵은 글씨로 처리한 부분에서 에러발생합니다.


 


제가 생각을 잘못 하는건지...여기까지 초급개발자 워니였습니다.


 


 


FUNCTION z_startday_endday_output.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     REFERENCE(INPUTDAY) TYPE  SY-DATUM
*"  EXPORTING
*"     REFERENCE(STARTDAY) TYPE  SY-DATUM
*"     REFERENCE(ENDDAY) TYPE  SY-DATUM
*"----------------------------------------------------------------------


  DATA: date_input TYPE d,
        monthcheck(2) TYPE c.


  CALL FUNCTION 'DATE_CHECK_PLAUSIBILITY'   " 날자 유효성 검사 펑션
       EXPORTING
            date                      = inputday
       EXCEPTIONS
            plausibility_check_failed = 1
            OTHERS                    = 2.
  IF sy-subrc <> 0.
     MESSAGE E001(Z01) WITH 'ERROER!!'.
  ENDIF.



  date_input = inputday.
  date_input+6(2) = '01'.
  startday = date_input.



  monthcheck = date_input+4(2).
  CASE monthcheck.
    WHEN '01'.
      date_input+4(2) = '02'.
      endday = date_input - 1.
    WHEN '02'.
      date_input+4(2) = '03'.
      endday = date_input - 1.
    WHEN '03'.
      date_input+4(2) = '04'.
      endday = date_input - 1.
    WHEN '04'.
      date_input+4(2) = '05'.
      endday = date_input - 1.
    WHEN '05'.
      date_input+4(2) = '06'.
      endday = date_input - 1.
    WHEN '06'.
      date_input+4(2) = '07'.
      endday = date_input - 1.
    WHEN '07'.
      date_input+4(2) = '08'.
      endday = date_input - 1.
    WHEN '08'.
      date_input+4(2) = '09'.
      endday = date_input - 1.
    WHEN '09'.
      date_input+4(2) = '10'.
      endday = date_input - 1.
    WHEN '10'.
      date_input+4(2) = '11'.
      endday = date_input - 1.
    WHEN '11'.
      date_input+4(2) = '12'.
      endday = date_input - 1.
    WHEN '12'.


      if date_input+0(4) mod 4 = 0 and date_input+0(4) mod 100 = 0


        or date_input+0(4) mod 400.
      date_input+4(2) = '01'.
      endday = date_input + 364.


     else.


      date_input+4(2) = '01'.
      endday = date_input + 365.


     endif.
  ENDCASE.
ENDFUNCTION.

번호 제목 글쓴이 날짜 조회 수
186 method에 관해 알려주세요 [3] 언제철들래 2007.04.17 2248
185 alv edit관련한 속성을 알고 싶습니다. class 관란 질문 이종원 2007.04.17 2463
184 [re] alv edit관련한 속성을 알고 싶습니다. class 관란 질문 [3] file sapjoy 2007.04.17 3176
183 [re] alv edit관련한 속성을 알고 싶습니다. class 관란 질문 file sapjoy 2007.04.18 2609
182 ALV SET_TABLE_FOR_FIRST_DISPLAY function 질문입니다. [7] bd 2007.04.17 2862
181 CALL METHOD cl_gui_cfw=>dispatch. 이거 기능 좀 알고 싶습니다. [7] 이종원 2007.04.17 3181
180 <b>[완료]</b><b>[완료]</b><b>[완료]</b><b>[완료]</b>SAP XI SM에 대해 알고 싶습니다. [1] 로미오 2007.04.17 2373
179 BDC(Call Transaction)의 리턴값에 대해 문의드립니다. [6] 김지성 2007.04.17 3677
178 인터널 테이블 관련 질문입니다. [6] file bd 2007.04.16 2389
177 RFC에 대한 자료를 요청합니다. 도무지 감이 안 잡히네요. [6] 이종원 2007.04.16 2267
176 ALV FIELDCATLOG 질문입니다. [4] bd 2007.04.16 2277
175 On-line 프로그램 내에 ALV에 대한 질문 드립니다. [9] file 김지성 2007.04.16 3413
174 abap 인증시험 인터넷 접수에 관해.. [9] 명신용 2007.04.13 2395
173 parameter 에 관한 질문 입니다. [8] bd 2007.04.13 2578
172 어떻게 질문을 드려야 할지 모르겠습니다. [6] bd 2007.04.12 2678
171 TEXTEDIT를 디비에 저장하는 방법에 대해서 설명 좀 부탁드립니다. [4] 이종원 2007.04.12 2374
170 sap fi 관련 디비테이블과 필드명 정의한 자료를 요청합니다. [2] 이종원 2007.04.12 2348
169 코어2듀오 사용하시는 분들 도와주세요. [10] 홍성호 2007.04.11 2298
168 이정도 컴퓨터사양은 어떤가요? [5] 로미오 2007.04.11 2316
167 on change of <- 이 구문이 어떻구문인가요... [8] bd 2007.04.11 6499