728x90
반응형
RFC는 REMOTE FUCNTION CALL의 약자로 다른 SAP Application Server 또는 SAP 이외의 시스템과 통신할 수 있도록 해준다. 인터페이스 시스템.
과제
[Dictionary]
구조를 만들어주자.
테이블 유형도 만들어주자.
[Fucntion builder]
유형을 RFC 타입으로 만든다.
[Import]
참조매개변수를 사용하려면 Pass by value
를 체크해줘야한다. 체크를 안하면 값 매개변수만 사용할 수 있다. 선택
은 필수값 해제해주는거다.
[Export]
[Tables]
[Source Code]
FUNCTION zs1dfm11_03.
"입력했을 때,비어있지않다면, 즉 값이 있다면
IF i_tknum IS NOT INITIAL.
SELECT * FROM vttk AS a INNER JOIN vttp AS b
ON a~tknum = b~tknum
INTO CORRESPONDING FIELDS OF TABLE tab1
WHERE a~tknum = i_tknum
AND a~erdat BETWEEN '20200501' AND '20200630'.
"값이 있는데 그 값이 없는 값이라면
IF SY-SUBRC NE 0.
SELECT * FROM vttk AS a INNER JOIN vttp AS b
ON a~tknum = b~tknum
INTO CORRESPONDING FIELDS OF TABLE tab1
UP TO 100 ROWS
WHERE a~erdat BETWEEN '20200501' AND '20200630'.
ENDIF.
"아무것도 입력하지 않았을 때, 비어있다면, 즉 값이 없다면
ELSE.
SELECT * FROM vttk AS a INNER JOIN vttp AS b
ON a~tknum = b~tknum
INTO CORRESPONDING FIELDS OF TABLE tab1
UP TO 100 ROWS
WHERE a~erdat BETWEEN '20200501' AND '20200630'.
ENDIF.
"MESSAGE
IF SY-SUBRC = 0.
P_BAPI-TYPE = 'S'.
P_BAPI-MESSAGE = '성공'.
ELSE.
P_BAPI-TYPE = 'E'.
P_BAPI-MESSAGE = '에러'.
ENDIF.
ENDFUNCTION.
있는 값을 입력했을 때 해당하는 데이터를 가져온다.
없는 값을 입력했을 때 100개의 데이터를 가져온다.
아무것도 입력하지 않았을 때 100개의 데이터를 가져온다.
728x90
반응형
'ABAP' 카테고리의 다른 글
RFC 3 (0) | 2023.02.14 |
---|---|
RFC 2 (0) | 2023.02.14 |
Tabstrip (0) | 2023.02.14 |
Table control (0) | 2023.02.14 |
Module-pool 6 (Subscreen, table control) (0) | 2023.02.14 |
댓글