한개의 필드에
'123.56 (20.5)' .........이렇게 값이 들어있습니다. 앞에 값은 금액, 괄호안의 값은 % 입니다.
이것을 괄호는 빼고,
2등분을 하여
금액따로 한개의 필드에
%따로 한개의 필드에.....................하는 FUNCTION을 만들려고 합니다.
처음만드는 FUNCTION이라 ..;; 조언 좀 부탁드립니다.
FUNCTION만드는 방식이든, 위의 설명에 관한 조언이든 다다 감사합니다..
그런데 ......제가 지금 의문점이 있는데..FUNCTION 을 돌고 IMPORTING받을때 2개의 값을 받을 수 있는건가요?? -_-;;
댓글 3
-
미소
2008.07.22 09:28
-
미소
2008.07.22 09:30
patt2 TYPE string VALUE `)`,
은 별로 필요 없어 보이네요... ^^
-
kkamui
2008.07.22 20:09
4.0b 에는 string, find가 없네요 ^^;;;
FUNCTION z_test00.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" VALUE(INPUT) LIKE TRES-TEXT
*" EXPORTING
*" VALUE(E_AMT) LIKE ZTEMP1-ZAMT
*" VALUE(E_PER) LIKE ZTEMP1-ZPER
*"----------------------------------------------------------------------
DATA : l_txt(30) TYPE c ,
l_txt2(30) TYPE c .
SPLIT input AT '(' INTO l_txt l_txt2. " ( 로 분할
MOVE l_txt TO e_amt .
SPLIT l_txt2 AT ')' INTO l_txt l_txt2. " ) 로 분할
MOVE l_txt TO e_per .
ENDFUNCTION.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" REFERENCE(INPUT_VALUE) TYPE CHAR30
*" EXPORTING
*" REFERENCE(OUT_PART1) TYPE WVLBFLPT
*" REFERENCE(OUT_PART2) TYPE AD01RAT_C
*"----------------------------------------------------------------------
DATA: patt1 TYPE string VALUE `(`,
patt2 TYPE string VALUE `)`,
text TYPE string,
off TYPE i,
moff TYPE i,
moff1 TYPE i,
mlen TYPE i.
off = 0.
FIND patt1 IN SECTION OFFSET off OF
input_value
MATCH OFFSET moff
MATCH LENGTH mlen.
moff1 = moff + 1.
MOVE input_value(moff) TO out_part1.
MOVE input_value+moff1(4) TO out_part2.
ENDFUNCTION.