🕑 20분
👥 Eclipse 사용법을 알고, JCo Library를 다운 받아 Project에 적용한 학습자
⭐ JCo 는 JDK 1.8 버전에서 버그 없이 작동된다.
** 필자는 JavaSE-17 사용하다가 오류가 발생하여 1.8로 변경함
0. 개요
Java에서 SAP의 Function Module을 호출하여 Table 형식의 데이터를 조회한다.
이때 Function Module은 Remote-Enabled Module 이어야 한다.
(SAP > T-Code: SE37 > Attributes 탭 > Processing Type 에서 확인 가능)
이번 예제에서 Java 소스코드 개발은 아래와 같은 순서로 이루어진다.
1. '.jcoDestination' 확장자를 가진 config 파일에 SAP 접속 정보 입력하기
2. config 파일명으로 `JCoDestination` 객체 구현하기
3. Function Module명으로 SAP의 Function Module과 대응하는 `JCoFunction` 객체 구현하기
4. `JCoFunction`의 실행 메서드를 통해 SAP Function Module을 호출하기
6. `JCoTable` 객체 구현하고 `JCoFunction`의 결과값을 넣기
7. 반복문 사용하여 Table 내의 요소를 출력하기
8. 또 다른 새 Function Module 객체를 생성하여 '6.'에서 받은 Table 값으로 Function 호출 ~ 결과값 출력
1. JCo 설치 폴더에서, 공식 소스코드 예제 가져오기
1) ABAP_AS1.jcoDestination 파일 : Java Project 에 복사하기
- 예제파일 경로 : \sapjco3-ntamd64-3.1.11\examples\
※ src 폴더 아래가 아닌, Java Project 바로 밑(root)에 넣어야 한다.
2) CallUsingTable.java 파일 : src 폴더 안에 복사하기
- 예제파일 경로 : \sapjco3-ntamd64-3.1.11\javadoc\ 의 intro.html > Examples > Beginner client examples
※ 맨 윗줄의 package ..; 단은 제외하고 복사


- 예시 화면
2. jcoDestination 파일에 SAP 접속정보 입력하기
1) ABAP_AS1.jcoDestination 파일 : SAP 접속정보 입력


jco.client 파라미터 | 설명 |
ashost | 어플리케이션 서버 |
sysnr | 인스턴스 번호 |
client | 접속할 클라이언트 |
user | SAP 로그인하는 ID |
passwd | SAP 로그인하는 PW |
lang | 로그인 언어 |
3. SAP에서 호출되는 Function Module 살펴보기
3.1. BAPI_COMPANYCODE_GETLIST 스탠다드 함수
회사 코드를 조회할 수 있는 Remote-Enabled Function Module
1) Import Parameter
- 없음
2) Export Parameter
- COMPANYCODE_LIST (LIKE BAPIRETURN)
3) 실행결과
- T-Code : SE37
3.2. BAPI_COMPANYCODE_GETDETAIL 스탠다드 함수
회사 코드 정보를 상세하게 조회할 수 있는 Remote-Enabled Function Module
1) Import Parameter
- COMPANYCODEID
2) Export Parameter
- COMPANYCODE_DETAIL (LIKE BAPI0002_2)
3) 실행결과
- T-Code : SE37
4. CallUsingTable.java 실행하고 함수 결과 확인하기
1) CallUsingTable.java 실행
2) 결과 확인
SAP T-Code: SE37 의 결과와 동일한 것을 확인할 수 있다.
3) SAP 디버깅 팁
SAP Function Module에 External BreakPoint를 설정하면
이클립스에서 소스코드를 실행시켰을때, SAP에서 디버깅이 가능하다.
- SAP ABAP 편집기에서 원하는 라인에 커서를 올려둔 후, 상단의 External BreakPoint 아이콘 선택
- 이클립스에서 Java 실행하여 디버깅 화면 확인
-
수고하셨습니다.
'JCo' 카테고리의 다른 글
4-2. SAP에서 Java 호출하여 값 받아오기 (0) | 2025.04.03 |
---|---|
4-1. Java 에서 JCo 서버 실행하여 SAP RFC 와 연결 (0) | 2025.04.03 |
3-3. Java 에서 SAP Function Module 호출하여 Structure 값 조회하기 (0) | 2025.04.03 |
3-2. Java 에서 SAP Function Module 호출하여 단일 값 조회하기 (0) | 2025.04.03 |
3-1. Java에서 SAP System 연결하기 (Ping 테스트) (0) | 2025.04.02 |