메뉴 건너뛰기

SAP 한국 커뮤니티

펑션 좀 도와주세요.

이종원 2007.04.10 11:51 조회 수 : 2934 추천: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.

번호 제목 글쓴이 날짜 조회 수
173 <b>[완료]</b><b>[완료]</b>[re] 개인pc에 SAP NetWeaver 2004s 설치방법에 질문입니다. [1] 김태완 2006.12.27 4829
172 null 값 체크 [6] 강진규 2007.05.21 4842
171 <img src=1.gif>질문 >> CALL FUNCTION 'FIMA_NUMERICAL_VALUE_ROUND [2] 아밥콩` 2010.03.03 4849
170 <b>[완료]</b>DYNPRO_FIELD_CONVERSION dump관련 [3] 이정한 2008.01.08 4862
169 <img src=2.gif>신호등(상태표시등)아이콘 관련 질문드려요~ ^-^* [1] ymjeong 2010.10.25 4877
168 <img src=3.gif>전표 BDC 생성에 대한 질문입니다.. [2] 보경아빠 2010.01.26 4882
167 TRY 구문해석좀 해주세요. 이렇게 쓰는 것과 그냥 SELECT 하는 차이가 뭔지요? [7] 김창훈 2007.08.21 4895
166 [요청]자동 텍스트완성 어떻게 하나요? 답변 부탁드립니다. [3] 쪼꼬팜 2008.07.30 4902
165 <img src=2.gif>screen structure 에서 group1 ~ group4 사용방법 [5] copine 2011.03.31 4925
164 ALV 가로 출력에 대해서 질문드립니다 엑셀로 희망 화면 그려노았습니다 [1] file 뿌이이잉 2011.12.12 4956
163 [요청]온라인(모듈풀)에서 라디오버튼 사용법요!!! [6] CoolGuy 2008.08.05 4966
162 <b>[완료]</b>smartforms 한글이 깨져요...ㅜ.ㅜ [4] file 초보찍고 고수 2008.12.25 4975
161 subscreen 에서 사용 하는 sy-repid 변수에 관한질문입니다. [2] bd 2007.04.10 4980
160 [요청]refresh_table_display와 cl_gui_cfw=>flush 의 차이점에대해서 알고싶습니다 [3] 고양이야옹 2008.12.04 5006
159 abap source scan 차이 [4] sap는어려워 2019.06.17 5014
158 <b>[완료]</b>ALV 리스트 드롭다운 문제점...알려주세요. [3] unicrn 2008.07.15 5018
157 [요청]RFC관련 개발에러 입니다. 로그좀 봐주세요... [4] DBnoid 2008.03.28 5025
156 <b>[완료]</b>자재 수량 단위변환에 대하여( M -> FT) [5] SARA 2008.05.26 5032
155 스마트폼에 직인 이미지 등록방법 [4] file 버미! 2010.03.05 5038
154 <img src=2.gif>자재 마스터 [분류 뷰] 에 대해서 질문합니다. [2] file 다르게 2011.03.22 5040