메뉴 건너뛰기

SAP 한국 커뮤니티

질문을 두개나 올리네요^^;;; 죄송합니다.


 


우선 제가 아래처럼^^;


 


 

SELECTION-SCREEN : BEGIN OF BLOCK a1 WITH FRAME TITLE text-t01.
PARAMETERS : p_bukrs TYPE bkpf-bukrs DEFAULT '1000'.
SELECT-OPTIONS : p_hkont FOR bseg-hkont obligatory.
SELECT-OPTIONS : p_budat FOR ce1z001-perio NO-EXTENSION.
SELECT-OPTIONS : p_bstat FOR bkpf-bstat.
SELECTION-SCREEN : END OF BLOCK a1.


 


 


요로케 만들어서 p_budat 에 조건을 주었습니다.


 


조건은 기간인데요.


 


날짜에 대한 입력값을 받으면  (예 입력값 012.2009  ~   001.2010 )


 


아래처럼 연산합니다.


 


(3개월씩 플러스 되고, high값은 2010년 4월의 31일로 이동하도록 짠 것입니다.)


 


 


 

form PERIOD .

if p_budat-low is not initial.

DATA : LAST_DAY TYPE SY-DATUM,
       FROM TYPE SY-DATUM,
       YEAR TYPE SY-DATUM,
       MONTH TYPE SY-DATUM,
       ex_mon type sy-datum,
       ts_mon type sy-datum,
       to type sy-datum,
       NEWFROM TYPE SY-DATUM,
       newto type sy-datum.

MOVE P_BUDAT-LOW(4TO YEAR.
MOVE P_BUDAT-LOW+5(2TO MONTH.
CONCATENATE YEAR MONTH '01' INTO NEWFROM.

CLEAR YEAR.
CLEAR MONTH.

CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
  EXPORTING
    date            = NEWFROM
    days            = '00'
    months          = '03'
   SIGNUM           = '+'
    years           = '00'
 IMPORTING
   CALC_DATE       = EX_MON.

elseif p_budat-low is initial.


 


?????????????????????????????????


(어떤 조건을 주어야 할까요?)??????????????????



  
  

endif.


*MOVE EX_MON TO FROM.
          .
IF P_BUDAT-HIGH IS NOT INITIAL.

  MOVE P_BUDAT-HIGH(4TO YEAR.
  MOVE P_BUDAT-HIGH+5(2TO MONTH.
  CONCATENATE YEAR MONTH '01' INTO NEWTO.

CLEAR YEAR.
CLEAR MONTH.

 CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'  "last month calculate
    EXPORTING
      date      = NEWTO
      days      = '00'
      months    = '03'
      signum    = '+'
      years     = '00'
    IMPORTING
      calc_date = ts_mon.  "ex_mon = last month

   CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'  "last day calculate
    EXPORTING
      day_in            = ts_mon "p_budat-high
    IMPORTING
      last_day_of_month = last_day.

elseif p_budat-high is initial.
  newto = sy-datum.

   CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'  "last day calculate
    EXPORTING
      day_in            = newto "p_budat-high
    IMPORTING
      last_day_of_month = last_day.

endif.

*move last_day to to.


gs_period-from = ex_mon.
gs_period-to = last_day.


 


 


 


문제는 이제.. 값을 입력 안했을 때 인데.. high 값은그냥 현재까지 주면 되는데


 


low 값이 아무것도 없을 때 어떻게 조건을 주어야 할까요!?


 


^^초보에게 자비로운 답변 부탁드립니다..


 


(순간 생각난게.. 그냥 저대로 공백줘야 하나!? 라는 생각을^^;;)


 



 


 

번호 제목 글쓴이 날짜 조회 수
4725 <img src=2.gif>문자열로 저장된 수식을 계산하는 방법 [6] 덩콘 2010.04.26 2811
4724 <img src=2.gif>Generic Object Service를 사용해서 CBO프로그램에 파일 Attach & Mail 전송 ? [9] 찬호사랑 2010.04.26 3114
4723 <img src=2.gif>인터널테이블에서 SELECT 해온 값을 다른 METHOD에서 사용하고 싶습니다. [3] 마늘맛쿨피스 2010.04.25 1180
4722 <img src=3.gif>일반 SCREEN에서 DROPDOWN 값 선택시 이벤트... [3] 달이랑 2010.04.23 2180
4721 <img src=3.gif>온라인 프로그램에서 icon 제어 어떻게 해야 하나요? [2] 왕초~삽질맨 2010.04.23 1645
4720 <img src=2.gif>엑셀 파일 다운로드 셀 정렬 센터로 할 수 있을까요.? [1] 돌맹이 2010.04.23 2263
4719 <img src=2.gif>HR 리포트 프로그램 권한 작업에 대해 질문 드립니다. [5] 오대독자 2010.04.22 1556
4718 [re] BSP Barcode 해결이 안되었다면 첨부 파일 참조 하세요 file 버미! 2010.04.22 1727
4717 <img src=3.gif>KRW(통화)로 값이 보이게 하려면 어떻게 해야 하나요? [5] honey 2010.04.21 3824
4716 <img src=2.gif>ALV에서 년월 필드 사용에 대해 [4] 댕댕 2010.04.21 4793
4715 <img src=3.gif>스크린에서 버튼 아이콘 소스 상에서 바꾸는 방법없을까요? [3] 초밥 2010.04.21 1638
4714 <img src=3.gif>또다른 질문 엑셀 파일 컨트롤.... 선긋기 가능한가요? [7] 돌맹이 2010.04.21 3007
4713 <img src=3.gif>Loop와 Read으로 구현이 가능할 때 어떤 구문을 이용하는 것이 좋은지? [5] 버미! 2010.04.21 1060
» <img src=3.gif>조건입력하지 않았을 때 전체 조회 되도록 하는 방법? [3] Abap consultant 2010.04.21 1748
4711 <img src=3.gif>ftp 와 연동하는 프로그램 RSFTP007 에서 펑션 관련 질문합니다. [3] 아바바바 2010.04.21 1657
4710 <img src=3.gif>2009.11.11을 미국식으로 변경이 가능한지요? 간단한 함수로. [2] 돌맹이 2010.04.21 1163
4709 <img src=2.gif>자산 마스터 변경시(TCODE-AS02) [1] file 별나라대마왕 2010.04.21 2264
4708 <img src=1.gif>012.2009 를 12.01.2009 로 변경하는 날짜 변경 펑션이 있을까요? Abap consultant 2010.04.21 1486
4707 <img src=2.gif>ALV자료를 다운받을때 컬럼수 제한이 있나요? [1] 라면킬러 2010.04.20 1950
4706 <img src=3.gif>T-CODE 생성에 대해서 물어볼것이 있습니다. [2] 금색의마왕 2010.04.20 1865