1. DATA : gv_val1 TYPE i VALUE 2,
gv_val2 TYPE i VALUE 3,
gv_sum TYPE i.
PERFORM sum_data USING gv_val1 gv_val2 CHANGING gv_sum.
WRITE : / 'Result is :', gv_sum.
FORM sum_data USING value(p_val1) value(p_val2) CHANGING value(p_sum).
p_sum = p_val1 + p_val2.
ENDFORM.
2. DATA : gv_val1 TYPE i VALUE 2,
gv_val2 TYPE i VALUE 3,
gv_sum TYPE i.
gv_sum = gv_val1 + gv_val2.
write : / 'Result is :', gv_sum.
결국 1.하고 2.하고 결과값은 같던데 언제 1.을 사용하는지 왜 사용하는건지에 대해서 좀...^^;;;
책으로는 이해가 쉽지가 않아서^^:;;
1. 반복적으로 사용되는부분이 있을때.
- EX) 1 + 2 = 3 PERFORM 두변수 더하기
WRITE WRITE
2 + 3 = 5 ==> PERFORM 두변수 더하기
WRITE WRITE
3 + 4 = 7 PERFORM 두변수 더하기
WRITE WRITE
---------------------------------------------------------
지금은 PERFORM으로 해당 FORM ~ ENDFORM 내용이 한줄이라 차이를 못느끼만
계산식 라인이 10줄이라면 왼쪽은 변수값도 바꿔주면서 30줄 계산식 코딩을 3번 반복해서 적어야 하지만
오른쪽은 받아올 변수값만 잘 지정해서 10줄 FORM ~ ENDFORM만들어놓고 PERFORM만 불러다 쓰면 되겠죠.
2. INCLUDE에 PERFORM문을 몰아놓아 메인 프로그램이 깔끔하게 보이게 할때
EX) 메인PG INCLUDE 퍼폼몰아놓기
변수선언 FORM 값가져오기
스크린 ~ ENDFORM
PERFORM 값가져오기 FORM 값정렬/이름채우기
PERFORM 값정렬/이름채우기 ~ ENDFORM
PERFORM 계산하기 FORM 계산하기
PERFORM 화면뿌리기 ~ ENDFORM
끝. FORM 화면뿌리기
3 기타... ~ ENDFORM.