SAP에서 원격 함수 호출 사용의 예

이 예에서는 원격 함수 호출 메소드를 사용하여 SAP에서 문서를 생성하는 Bot을 구축하는 방법에 대해 설명합니다.

전제 조건

SAP 웹 사이트에서 SAP Java 커넥터 패키지 및 DLL을 다운로드합니다.

프로시저

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