SAP 시스템에는 모든 BAPI 목록을 한 번에 조회할 수 있는 전용 BAPI가 존재하는지에 대해서는 명확하게 보장되지 않습니다. 다만, RFC_FUNCTION_SEARCH 펑션 모듈을 사용하면 'BAPI*'로 시작하는 펑션 모듈을 검색할 수 있어 사실상 동일한 결과를 얻을 수 있습니다.
BAPI 목록 조회 방법
시스템에서 사용 가능한 모든 BAPI의 목록을 가져오려면 BAPI_MONITOR_GETLIST 펑션 모듈을 호출하면 됩니다. 이 펑션은 릴리스 정보, 신규/구버전 BAPI 여부 등 다양한 조건으로 필터링된 BAPI 목록을 반환합니다.
호출 예제 코드
CALL FUNCTION 'BAPI_MONITOR_GETLIST' EXPORTING OBJECTTYPE = p_ojtpe SHOW_RELEASE = p_rel BAPIS_POTENTIAL = p_poten BAPIS_NEW = p_new_pabi BAPIS_OLD = p_old_bapi RELEASED_BAPI = p_rel_bapi RELEASED_FUNC = p_released_func IMPORTING RETURN = d_ret TABLES COMPONENTS2SELECT = int_cs SYSTEMS2SELECT = int_sss BAPILIST = int_bapilist
RFC_READ_TABLE로 테이블 데이터 읽기
SAP R/3 시스템에 외부 시스템에서 RFC를 통해 접근하여 테이블 데이터를 직접 읽어야 하는 경우에는 RFC_READ_TABLE 펑션 모듈을 활용할 수 있습니다. 이 펑션은 외부 인터페이스에서 SAP 내부 테이블의 데이터를 조회할 수 있도록 지원하는 표준 기능입니다.

DD02L 테이블로 시스템 내 테이블 목록 확인
RFC_READ_TABLE을 활용하면 ABAP 데이터 딕셔너리의 테이블 정의 정보를 담고 있는 DD02L 테이블을 조회하여, 해당 SAP 시스템에 존재하는 모든 테이블의 목록을 손쉽게 가져올 수 있습니다.

정리하면, BAPI 목록이 필요할 때는 BAPI_MONITOR_GETLIST 또는 RFC_FUNCTION_SEARCH를, 외부에서 테이블 데이터나 테이블 목록을 조회해야 할 때는 RFC_READ_TABLE과 DD02L 테이블을 조합하여 사용하는 것이 표준적인 접근 방법입니다.