메뉴 건너뛰기

SAP 한국 커뮤니티

>p타입 decimals 4 인 변수값에서



>1234.1200   =>  1234.12


>1234.1230   =>  1234.123


>1234.0000   =>  1234



>식으로 소수점 이하 값이 없는 부분의 0만 지우려면 어떻게 해야하나요?


>alv가 아니고 write 해야합니다. 즐거운 월요일 되십시요~


 


 


이게 맞는지는 모르겠지만 이런 방법도....


 


DATA : l_amount1(10) TYPE p DECIMALS 4,
       l_amount2     LIKE l_amount1,
       l_amount3     LIKE l_amount1,
       l_text        TYPE char15 ,
       l_num         TYPE char10 ,
       l_decimal     TYPE char4.


*&---------------------------------------------------------------------*
START-OF-SELECTION.


* 금액반영
  l_amount1 = '1234.123'.
  l_amount2 = '2345.034'.
  l_amount3 = '1234.01'.
*
  SKIP 3.
  l_text = l_amount1.
* 소수점 기준으로 정수부와 소수부 자름
  SPLIT l_text AT '.' INTO l_num l_decimal.
  WRITE :/ l_amount1 COLOR 4 , ' -> '    COLOR 2,
           l_num     COLOR 1 , l_decimal COLOR 1.
* 소수부의 '0' 제거
  SHIFT l_decimal RIGHT DELETING TRAILING '0'.
  CONDENSE l_decimal.
  IF l_decimal EQ ''.
    l_text = l_num.
  ELSE.
    CONCATENATE l_num '.' l_decimal INTO l_text.
  ENDIF.
  WRITE : ' => ' COLOR 2 , l_text COLOR 7.


*
  SKIP .
  l_text = l_amount2.
* 소수점 기준으로 정수부와 소수부 자름
  SPLIT l_text AT '.' INTO l_num l_decimal.
  WRITE :/ l_amount2 COLOR 4 , ' -> '    COLOR 2,
           l_num     COLOR 1 , l_decimal COLOR 1.
* 소수부의 '0' 제거
  SHIFT l_decimal RIGHT DELETING TRAILING '0'.
  CONDENSE l_decimal.
  IF l_decimal EQ ''.
    l_text = l_num.
  ELSE.
    CONCATENATE l_num '.' l_decimal INTO l_text.
  ENDIF.
  WRITE : ' => ' COLOR 2, l_text COLOR 7.


  SKIP .
  l_text = l_amount3.
* 소수점 기준으로 정수부와 소수부 자름
  SPLIT l_text AT '.' INTO l_num l_decimal.
  WRITE :/ l_amount3 COLOR 4 , ' -> '    COLOR 2,
           l_num     COLOR 1 , l_decimal COLOR 1.
* 소수부의 '0' 제거
  SHIFT l_decimal RIGHT DELETING TRAILING '0'.
  CONDENSE l_decimal.
  IF l_decimal EQ ''.
    l_text = l_num.
  ELSE.
    CONCATENATE l_num '.' l_decimal INTO l_text.
  ENDIF.
  WRITE :' => ' COLOR 2, l_text COLOR 7.


 

번호 제목 글쓴이 날짜 조회 수
347 [요청]Exists 구문에 대한 질문입니다. [2] kkk 2007.12.13 3889
346 <img src=3.gif border=0>BAPI를 돌리면서 꼭 WAIT UP 기다려줘야 하나요? [6] Bizzard.Chul 2009.08.28 3894
345 RFC로 접속시 해당 사용자의 로컬 아이피 가져오는 방법.. [5] 하얀콩 2007.03.09 3895
344 [요청]printer 출력 시 한글 깨짐 현상,,, [4] darkangel 2008.08.22 3895
343 <img src=2.gif>숫자필드에서 소수점 아래 ##.000을 표시하지 않는 방법 좀 알려주세요 [2] 아밥줘 2010.10.13 3895
342 [re] alv 출력시 컬럼수를 dynamic하게하는 방법 현군친구 2007.09.19 3896
341 <img src=3.gif>1000 번화면에 버튼 생성. 질문. [8] 돌맹이 2010.12.17 3896
340 [요청]ALV GRID에서 EDIT기능 이용시 질문요~! [1] 풍운사랑 2008.06.30 3902
339 <b>[완료]</b>펑션을 이용해 환율 정보를 알수 있는 방법에 대해 드립니다. [6] 열심히 2008.11.04 3907
338 <img src=3.gif>PROCESS ON VALUE-REQUEST. 서치헬프질문요 [3] 덩콘 2010.05.11 3908
337 <b>[완료]</b>ALV Grid에서 Toolbar만 refresh 시키는 방법은 뭔가요? [2] 궁금해요. 2007.06.07 3912
336 <b>[완료]</b>데이터베이스 테이블의 엔트리 삭제는 어떻게하죠? [7] bizarre 2008.03.29 3912
335 [요청]DB LINK 관련 - DB LINK가 제대로 되는지 어떻게 확인할 수 있을까요 [1] w 2007.12.18 3915
334 [요청]Binary Search의 원리에 대한 질문 [4] 수욕정이풍부지 2009.02.12 3916
333 <img src=2.gif>테이블 Foreign Key 와 프로그램 관련 입니다. [1] aDam 2011.03.31 3921
332 BDC(Call Transaction)의 리턴값에 대해 문의드립니다. [6] 김지성 2007.04.17 3930
331 <b>[완료]</b>DOI 초보적 질문 (프로그램 종료와 함께 엑셀이 안 닫히게). [9] JiruMi 2009.02.26 3931
330 <b>[완료]</b>ALV에서 MARK기능 구현하는 것에 대해 질문 드립니다. [3] Waiting 2008.01.04 3939
329 <b>[완료]</b>THE WORK AREA "ITAB" IS NOT LONG ENOUGH라고 신텍스 오류가 발생합니다 [3] 아밥어렵네요 2008.04.24 3951
328 <b>[완료]</b>이런일도 발생을..BDC 문제 [9] 김지성 2007.04.10 3956