메뉴 건너뛰기

SAP 한국 커뮤니티



달력을 한번 만들어 봤는데요 ^^;; 밑에 보시다시피 너무 노가다 성인데요..


특히 각 달의 1일의 위치를 잡아 주는 부분이 많이 노가다 성이 되던데...


그부분을 좀더 간소화할 방법이 있나요...?


 


REPORT  zljs_test8 LINE-SIZE 92.

PARAMETERS: g_yea(4),
            g_mon(2TYPE n.
DATA: g_day(2TYPE n,
      g_2mon TYPE i.                 "윤달 구분 값.
DATA: g_ymf TYPE scal-date.          "function에 넣을 값.
DATA: g_result TYPE scal-indicator.  "function에서 받을 값.
DATA: day TYPE i.    "지정 달의 일수를 받는 부분
DATA: g_space(10).   "1일 날짜 앞에 빈칸 만들기용

data: 1_day(10VALUE '일요일', 2_day(10VALUE '월요일', 3_day(10VALUE '화요일',
      4_day(10VALUE '수요일', 5_day(10VALUE '목요일', 6_day(10VALUE '금요일',
      7_day(10VALUE '토요일'.

write: sy-uline,
      / sy-vline, 1_day, sy-vline, 2_day, sy-vline, 3_day, sy-vline, 4_day,
        sy-vline, 5_day, sy-vline, 6_day, sy-vline, 7_day, sy-vline,
      / sy-uline.

IF g_mon = 1 or g_mon = 3 or g_mon = 5 or g_mon = 7 or g_mon = 8 or g_mon = 10 or g_mon = 12.
  day = 31.
ELSEIF g_mon = 4 or g_mon = 6 or g_mon = 9 or g_mon = 11.
  day = 30.
ELSEIF g_mon = 2.                                           "2월 윤달 구분
  g_2mon = g_yea MOD 4.
  IF g_2mon = 0.
    day = 29.
  ELSE.
    day = 28.
  ENDIF.
ENDIF.

DO day TIMES.
  g_day = sy-index.
  CONCATENATE g_yea g_mon INTO g_ymf.
  CONCATENATE g_ymf g_day INTO g_ymf.    "펑션에 넣어줄 형태로 만들어주기.

  CALL FUNCTION 'DATE_COMPUTE_DAY'
    EXPORTING
      date = g_ymf
    IMPORTING
      day  = g_result.
  IF g_result = 6.
    WRITE:  (10)g_day , sy-vline,
           / sy-uline, sy-vline.
  ELSEIF g_result <> 6.
    IF g_day = 1.                   "매월 1일 위치 잡는 부분...
      CASE g_result.
        WHEN '1'.
          WRITE : sy-vline, g_space, sy-vline, (10)g_day, sy-vline.
        WHEN '2'.
          WRITE : sy-vline, g_space, sy-vline, g_space, sy-vline,
                 (10)g_day, sy-vline.
        WHEN '3'.
          WRITE : sy-vline, g_space, sy-vline, g_space, sy-vline,
                  g_space, sy-vline, (10)g_day, sy-vline.
        WHEN '4'.
          WRITE : sy-vline, g_space, sy-vline, g_space, sy-vline,
                  g_space, sy-vline, g_space, sy-vline, (10)g_day,
                  sy-vline.
        WHEN '5'.
          WRITE : sy-vline, g_space, sy-vline, g_space, sy-vline,
                  g_space, sy-vline, g_space, sy-vline, g_space,
                  sy-vline, (10)g_day, sy-vline.
        WHEN '6'.
          WRITE : sy-vline, g_space, sy-vline, g_space, sy-vline,
                  g_space, sy-vline, g_space, sy-vline, g_space,
                  sy-vline, g_space, sy-vline, (10)g_day, sy-vline.
        WHEN '7'.
          WRITE : sy-vline, (10)g_day, sy-vline.
      ENDCASE.
    ELSE.
      WRITE: (10)g_day, sy-vline.
    ENDIF.
  ENDIF.
ENDDO.
WRITE: / sy-uline.

TOP-OF-PAGE.
  FORMAT COLOR 3.
  WRITE: g_yea, '년', g_mon, '월'.        "TOP OF PAGE 지정.

번호 제목 글쓴이 날짜 조회 수
5907 <img src=3.gif>p 196 open sql update 구문에 관한 질문입니다. [4] 광돈 2010.11.03 1111
5906 <img src=3.gif>open sql insert 시 accepting duplicate keys 에 대한 질문입니다. [4] 광돈 2010.11.03 1785
5905 <img src=2.gif>perform문 실행순서가 궁금해서요. 질문드립니다 [1] moon 2010.10.30 1077
5904 <img src=3.gif>예제 15-4-5에서 leave to list-processing으로 이동한 list 화면에서 헤더를 안 보이게 하는 방법 좀 알려주세요. [2] 페르츠 2010.10.16 1062
5903 <img src=3.gif>교재에 대한 질문입니다. 오탈자 인지 제가 이해를 못하는건지 모르겠네요 [2] 광돈 2010.10.07 1269
5902 <img src=3.gif>[완전초보입니다.] Chapt3부터 막히네요~ 예제실습을 어떻게하지요? [7] file 베르테르 2010.09.30 1023
5901 <img src=3.gif>플러스 abap 교제의 smartforms image 관련 문의 [4] 날곰 2010.06.28 1281
5900 <img src=2.gif>4-2-10 에서 '' 에 대한 질문입니다. [2] 웅냐공주사랑 2010.06.17 1211
5899 <img src=3.gif>type t -> type i 로 변환시 의 질문 [2] 웅냐공주사랑 2010.06.08 1129
5898 <img src=3.gif>넷위버 트라이얼 버전 프로그램 생성문의.. [2] abap왕초보 2010.05.19 1117
5897 <img src=2.gif>ABAP에서 오늘 연도 및 날짜 구하는 법 알려주시기 바랍니다. [3] 체사레 2010.05.13 2907
5896 <img src=3.gif>넷위버 설치관련해서 설치 파일 담아논곳을 찾습니다~ [2] abap왕초보 2010.05.13 1298
5895 <img src=3.gif>T-CODE 질문드립니다. 없다고 나오네요. [4] PHENOME 2011.02.26 1539
5894 <img src=3.gif>Z16_004 Subscreen부분에서 소스좀 알려주세요.. [2] 안녕아밥 2011.01.04 1150
5893 <img src=2.gif>PLUS ABAP 교재의 zsaptip_009 예제를 구할 수가 없나요.. [1] 트리플A 2010.12.10 1172
5892 <img src=3.gif>Z15_022 에 대한 질문입니다. FORMAT HOTSPOT 적용시 다음 라인에 글 추가가 안되네요 [4] 광돈 2010.12.02 1199
5891 <img src=2.gif>sflight 테이블의 값이 없습니다. [8] 광돈 2010.11.25 1058
5890 <img src=3.gif><img src=3.gif><img src=1.gif>ZF01_001 관련해서 질문드립니다. PHENOME 2010.11.15 1203
5889 <img src=3.gif>[re] <img src=1.gif>ZF01_001 관련해서 질문드립니다. [1] file sapjoy 2010.11.15 1091
5888 <img src=3.gif>p 196 open sql update 구문에 관한 질문입니다. [4] 광돈 2010.11.03 1155