SAP에서 원격 함수 호출 사용의 예
- 최종 업데이트2022/08/04
SAP에서 원격 함수 호출 사용의 예
이 예에서는 원격 함수 호출 메소드를 사용하여 SAP에서 문서를 생성하는 봇을 구축하는 방법에 대해 설명합니다.
전제 조건
SAP 웹 사이트에서 SAP Java 커넥터 패키지 및 DLL을 다운로드합니다.
프로시저
-
새 봇을 엽니다.
- 왼쪽 창에서 자동화를 클릭합니다.
- 새 항목 생성 > Bot을 클릭합니다.
- Task Bot 생성 창에서 봇 이름을 입력합니다.
- 생성 및 편집을 클릭합니다.
-
연결 작업을 사용하여 SAP 애플리케이션과 연결합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
-
데스크톱 옵션을 선택하고 기기에서 사용 가능한 SAP Java 커넥터 패키지를 찾아 선택합니다.
예: F:\SAP \SAP JCo 3.1.3\Microsoft Windows and Windows Server\64-bit\sapjco3.jar
-
데스크톱 옵션을 선택하고 기기에서 사용 가능한 SAP Java 커넥터 DLL을 찾아 선택합니다.
예: F:\SAP \SAP JCo 3.1.3\Microsoft Windows and Windows Server\64-bit\sapjco3.dll
- 연결 유형으로 그룹/서버 옵션을 선택합니다.
- 안전하지 않은 문자열을 선택하고 AWINAAWO12.bcone.com을 입력하여 SAP 메시지 서버의 호스트 이름을 지정합니다.
- 게이트웨이 호스트 필드에 AWINAAWO12.bcone.com을 입력하여 서버에 연결합니다.
-
다음 값을 입력합니다.
필드 값 로그인 그룹 퍼블릭 시스템 번호 01 SAP 인스턴스 시스템 ID AAI 고객 번호 800 로그온 언어 코드 EN 라우터 문자열 /H/115.112.148.66/S/3299 - 안전하지 않은 문자열을 선택하고 ISR3를 입력하여, SAP 서버에 연결하는 데 사용할 사용자 이름을 지정합니다.
- 안전하지 않은 문자열을 선택하고 Automation@123을 입력하여, SAP 서버에 연결하는 데 사용할 비밀번호를 지정합니다.
-
함수 생성 작업을 사용하여 지정된 SAP BAPI 함수를 위한 함수를 생성합니다.
- SAP BAPI 함수의 별칭을 생성하고 별칭 이름을 사용하여 저장합니다.
- 세션 이름 필드에 Default를 입력합니다.
- 함수 별칭 이름 필드에 BAPI_Post를 입력합니다.
-
BAPI 이름 필드에 BAPI_ACC_DOCUMENT_POST를 입력합니다.
주: Automation 360 Bot을 만들 때 SAP BAPI 함수 이름 및 기타 매개 변수는 고객 환경에 따라 달라집니다.
-
SAP에서 BAPI_ACC_DOCUMENT_POST를 생성하려면 먼저 구조와 테이블을 만들어야 합니다. 구조 가져오기를 선택하여 함수 별칭을 이용해 구조에서 데이터를 가져옵니다.
- BAPI 함수 별칭 필드에 함수 생성 작업을 사용하여 SAP BAPI 함수에 제공한 별칭인 BAPI_POST를 입력합니다.
- 구조 이름 필드에 데이터를 가져오려는 구조의 이름인 DOCUMENTHEADER를 입력합니다.
- SAP BAPI 세션 필드에 (연결 작업에 있는 SAP 애플리케이션에 연결하는 데 사용한 세션 이름인) Default를 입력합니다.
- 별칭 옵션을 선택하여 구조에서 검색한 데이터를 저장하고 구조 별칭 생성 필드에 Doc를 입력합니다.
-
테이블 가져오기 작업를 선택하여 함수 별칭을 이용해 테이블에서 테이블 형식의 데이터를 가져옵니다.
- BAPI 함수 별칭 필드에 함수 생성 작업을 사용하여 SAP BAPI 함수에 제공한 별칭인 BAPI_Post를 입력합니다.
- 테이블 이름 필드에 데이터를 가져오려는 테이블의 이름인 ACCOUNTGL을 입력합니다.
- SAP BAPI 세션 필드에 (연결 작업에 있는 SAP 애플리케이션에 연결하는 데 사용한 세션 이름인) Default를 입력합니다.
- 별칭 옵션을 선택하여 테이블에서 검색한 데이터를 저장하고, 테이블 별칭 생성 필드에 GL을 입력합니다.
- 5단계를 반복합니다. 5(B)단계에서 테이블 이름 필드에 CURRENCYAMOUNT 값을 입력하고 5(d)단계에서 테이블 별칭 생성 필드에 Currency 값을 입력합니다.
-
필드 값 설정 작업을 선택하여 이전에 만든 빈 구조와 테이블에 데이터를 설정합니다.
- BAPI 함수 별칭 필드에 BAPI_Post를 입력합니다.
- 소스 필드에서 구조를 선택합니다.
- 구조 별칭 필드에 DOC를 입력합니다.
- 필드 이름 필드에 데이터를 설정하려는 필드의 이름 USERNAME을 입력합니다.
- 필드 값 필드에 설정하려는 값 sy-uname을 입력합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
-
7단계를 7회 반복하고 7(a,) 7(b), 7(c), 7(f)에서 이전에 입력한 값과 동일한 값을 입력합니다. 7(d) 및 7(e)단계에 다음 값을 입력합니다.
필드 이름 필드 값 BUS_ACT RFBU HEADER_TXT TEST BOC BAPI POSTING COMP_CODE 1000 DOC_DATE 20210127 PSTNG_DATE 20210127 DOC_TYPE SA FIS_PERIOD 00 -
구조 가져오기 작업를 선택합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 구조 이름 필드에 DOCUMENTHEADER를 입력합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
- 변수 옵션을 선택하여, 구조에서 검색한 데이터를 테이블 변수에 저장합니다. Sap-Bapi-Table 표 변수를 만듭니다.
-
데이터 테이블 > 파일에 쓰기 작업를 더블 클릭하거나 드래그합니다.
- 데이터 테이블 이름 목록에서 쓰고자 하는 데이터가 포함된 테이블 변수인 Sap-Bapi-Table을 선택합니다.
- 파일 이름 입력 필드에서 데이터를 쓰고자 하는 파일의 위치를 지정합니다. (예: D:/user defined/My Desktop/SAP Test/DOCUMENTHEADER.csv)
- 존재하지 않을 경우 폴더/파일을 생성 확인란을 선택합니다.
- 기존 파일에 데이터를 쓸 때 기존 파일 재정의 옵션을 선택합니다.
- 행 구분 기호 필드에서 새 라인 옵션을 선택합니다.
- 열 구분 기호 필드에서 쉼표 옵션을 선택합니다.
- 인코딩 목록에서 ANSI 옵션을 선택합니다.
-
필드 값 설정 작업을 더블 클릭하거나 드래그하여 데이터를 테이블에 설정합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 소스 필드에서 테이블을 선택합니다.
- 테이블 별칭 필드에 GL을 입력합니다.
- 필드 이름 필드에 데이터를 설정하려는 필드의 이름인 ITEMNO_ACC을 입력합니다.
- 필드 값 필드에 설정하려는 값 2를 입력합니다.
- SAP BAPI 세션 필드에 연결 작업에 있는 SAP 애플리케이션에 연결하는 데 사용한 세션 이름인 Default를 입력합니다.
-
11단계를 7번 반복하여 데이터를 테이블에 설정합니다.
테이블에서 값을 설정하는 동안 11(a), 11(b), 11(c) 및 11(f)단계에서 이전에 입력한 값과 동일한 값을 유지합니다. 11(d) 및 11(e)단계의 다음 값을 변경합니다.
필드 값 필드 이름 GL_ACCOUNT 0000078310 PSTNG_DATE 20210127 ITEM_TEXT TEST POSTING DEBIT ITEM QUANTITY 1000 BASE_UOM EA COMP_CODE 1000 DOC_TYPE SA -
값 설정 필드 작업를 선택합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 소스 필드에서 테이블을 선택합니다.
- 테이블 별칭 필드에 GL을 입력합니다.
- 새 행 만들기 확인란을 선택하여 다음 행에 데이터를 입력합니다.
- 필드 이름 필드에 데이터를 설정하려는 필드의 이름인 ITEMNO_ACC을 입력합니다.
- 필드 값 필드에 설정하려는 값 1을 입력합니다.
- SAP BAPI 세션 필드에 (연결 작업에 있는 SAP 애플리케이션에 연결하는 데 사용한 세션 이름인) Default를 입력합니다.
-
테이블 가져오기 작업를 선택합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 테이블 이름 필드에 ACCOUNTGL을 입력합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
- 변수 옵션을 선택하여, 테이블에서 검색한 데이터를 테이블 변수에 저장합니다. Sap-Bapi-Table 표 변수를 만듭니다.
-
데이터 테이블 > 파일에 쓰기 옵션을 더블 클릭하거나 드래그합니다.
- 데이터 테이블 이름 목록에서 쓰고자 하는 데이터가 포함된 테이블 변수인 Sap-Bapi-Table을 선택합니다.
- 파일 이름 입력 필드에서 데이터를 쓰고자 하는 파일의 위치를 지정합니다. (예: D:/user defined /My Desktop/SAP Test/ACCOUNTGL.csv)
- 존재하지 않을 경우 폴더/파일을 생성 확인란을 선택합니다.
- 기존 파일에 데이터를 쓸 때 기존 파일 재정의 옵션을 선택합니다.
- 행 구분기호 필드에서 새 라인 옵션을 선택합니다.
- 열 구분기호 필드에서 쉼표 옵션을 선택합니다.
- 인코딩 목록에서 ANSI 옵션을 선택합니다.
-
필드 값 설정 작업을 더블 클릭하거나 드래그하여 데이터를 테이블에 설정합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 소스 필드에서 테이블을 선택합니다.
- 테이블 별칭 필드에 CURRENCY을 입력합니다.
- 필드 이름 필드에 데이터를 설정하려는 필드의 이름인 ITEMNO_ACC을 입력합니다.
- 필드 값 필드에 설정하려는 값 2을 입력합니다.
- SAP BAPI 세션 필드에 (연결 작업에 있는 SAP 애플리케이션에 연결하는 데 사용한 세션 이름인) Default를 입력합니다.
-
16단계를 7번 반복하여 데이터를 테이블에 설정합니다.
표에서 값을 설정하는 동안 이전에 16(a), 16(b), 16(c) 및 16(f)단계에서 입력한 것과 동일한 값을 유지합니다. 16(d) 및 16(e) 단계의 다음 값을 변경합니다:
필드 이름 필드 값 CURRENCY USD AMT_DOCCUR -2000 ITEMNO_ACC 1 CURRENCY USD(반복) 라인 43 AMT_DOCCUR 2000 - 14단계를 반복하고 테이블 이름 필드에 CURRENCYAMOUNT를 입력합니다.
- 15단계를 반복하고 파일 위치를 지정합니다(예: D:/user defined /My Desktop/SAP Test/CURRENCYAMOUNT.csv).
-
함수 실행 작업을 선택하여 SAP BAPI 함수를 실행합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 시퀀스 종료 옵션을 사용하여 프로세스 종료를 표시하고, 트랜잭션 커밋 옵션을 사용하여 프로세스 도중에 수행한 변경 내용을 커밋합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
-
표 가져오기 작업를 선택합니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 테이블 이름 필드에 RETURN을 입력합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
- 변수 옵션을 선택하여, 테이블에서 검색한 데이터를 테이블 변수에 저장합니다. Sap-Bapi-Table 표 변수를 만듭니다.
- 15단계를 반복하고 파일 위치를 지정합니다(예: D:/user defined /My Desktop/SAP Test/Return.csv).
-
필드 값 가져오기 작업를 선택하여 지정된 필드의 데이터를 함수에서 가져옵니다.
- BAPI 함수 별칭 필드에 BAPI_POST를 입력합니다.
- 소스 필드에서 함수 탭을 선택합니다.
- 필드 이름 필드에 OBJ_KEY를 입력합니다.
- SAP BAPI 세션 필드에 Default를 입력합니다.
- 출력을 변수에 저장 필드에서 Prompt-Assignment를 선택합니다.
-
메시지 상자 작업를 더블 클릭하거나 드래그합니다.
- 메시지 상자 창 제목 입력필드 에 Automation Anywhere Enterprise Client를 입력합니다.
- $Prompt-Assignment$를 입력합니다.
- 스크롤 바 표시 기준 라인 수 필드에 30을 입력하여 스크롤 마를 표시합니다.
- 23단계와 24단계를 반복합니다(23(c)단계에서는 값을 OBJ_SYS로 입력).
- 23단계와 24단계를 반복합니다(23c단계에서는 값을 OBJ_TYPE로 입력).
- 저장 및 실행을 클릭합니다.