예제

본 장에서는 AnyLink SAP 어댑터를 사용한 예제를 설명한다.

1. 개요

예제의 거래 패턴은 다음과 같다.

figure pattern
거래 패턴

외부 SAP 시스템으로부터 SAP 인바운드 거래가 호출되면, 동일 플로우에서 타 기관의 SAP 시스템을 호출하고, 이에 대한 응답을 처음 요청을 보낸 SAP 시스템으로 반환하는 구조이다.

AnyLink에서의 SAP 인바운드는 SAP 인바운드 엔드포인트에서 시작된다. 해당 엔드포인트는 존재하는 SAP 서버의 게이트웨이로 동작하게 되며, 해당 엔드포인트로 호출되는 JCO Function의 IMPORT 파라미터를 요청 메시지로 받아 거래를 호출하여 EXPORT 파라미터와 TABLE 파라미터를 채워 반환한다.

SAP 거래는 거래그룹과 거래를 모두 사용하여 작성한다. 호출되는 FUNCTION을 처리하기 위하여 다음과 같은 규약을 지켜야 한다.

  • 거래의 아이디는 function name과 동일한 값을 가져야 한다.

  • 거래에는 각 function의 import, export, table 파라미터를 감싸는 최상위 메시지를 정의한다. 해당 메시지는 function name과 동일한 값을 가져야 한다.

  • 각 import, export, table 파라미터의 아이디는 각각 IMPORT, EXPORT, TABLE이어야 한다.

2. 어댑터 생성

AnyLink WebAdmin에 로그인한 후 초기 화면에서 [구성관리] > [어댑터]를 선택한 후 어댑터 목록화면[Add] 버튼을 클릭하면 어댑터 등록 화면이 나타난다. 어댑터 생성에 대한 자세한 내용은 어댑터 설정을 참고한다.

AnyLink WebAdmin의 접속 및 사용법에 관한 자세한 내용은 AnyLink WebAdmin 안내서를 참고한다.

다음은 SAP 어댑터를 생성 화면이다.

figure sap adapter create
어댑터 생성

3. 엔드포인트 생성

어댑터 생성이 완료되면 [어댑터] 탭에서 등록된 어댑터를 조회하고, 조회된 어댑터를 클릭하면 어댑터 상세정보 화면으로 이동한다.

[엔드포인트 목록] 탭 아래 [Add] 버튼을 클릭하면 엔드포인트 등록 화면이 나타난다. 엔드포인트 생성에 대한 자세한 설명은 엔드포인트 설정을 참고한다.

3.1. 인바운드 엔드포인트 생성

왼쪽 어댑터 트리에서 편집할 엔드포인트를 클릭하면 엔드포인트 등록 화면으로 이동한다. 예제에서 사용된 엔드포인트는 request-response 방식으로 구동된다.

figure sap inbound ep conn
엔드포인트 등록 화면
  • [연결정보] 탭

    다음과 같이 SAP 서버의 연결 정보를 입력한다.

    figure sap adapter register2
    엔드포인트 등록 화면 - [연결정보]
  • [상세설정] 탭

    다음과 같이 작성한 거래 정보를 입력한다. 거래그룹을 통해 RFC FUNCTION 이름을 기준으로 인바운드 거래를 실행할 것이기 때문에 거래그룹을 지정한다.

    figure sap inbound ep biztx
    엔드포인트 등록 화면 - [상세 설정]

3.2. 아웃바운드 엔드포인트 생성

왼쪽 어댑터 트리에서 편집할 엔드포인트를 클릭하면 엔드포인트 등록 화면으로 이동한다. 화면에서 요청 메시지를 보낼 SAP 서버의 연결 정보를 입력한다.

figure sap outbound ep conn
아웃바운드 엔드포인트 등록 화면

4. 스튜디오 리소스 설정

본 절에서는 생성한 리소스를 스튜디오를 이용해서 설정하는 방법에 대해서 설명한다.

AnyLink 스튜디오 사용법에 대한 자세한 내용은 AnyLink 스튜디오 안내서를 참고한다.

4.1. 인바운드 거래 설정

다음은 AnyLink 스튜디오를 사용한 거래를 작성하는 과정에 대한 설명이다. 예제에서 사용된 거래는 request-response 방식으로 구동되며, 인바운드 거래의 작성 방법은 위에 서술한 제약사항을 지켜야 한다.

  1. 예제에서 사용된 거래 및 메시지의 구조는 다음과 같다. FUNCTION01 메시지는 IMPORT, EXPORT, TABLE 메시지를 포함한다.

    figure sap inbound biztx tree
    거래 트리
    figure sap inbound biztx tree 1
    FUNCTION01 메시지 구성
  2. 다음과 같이 거래의 요청 전문을 매핑 액티비티를 이용하여 수정하여 SAP 아웃바운드 룰을 호출하고, 이에 대한 응답을 응답으로 보내는 플로우를 작성한다.

    figure sap flow
    플로우 설정
  3. 응답 메시지라는 것을 확인하기 위하여 IMPORT 파라미터 메시지의 각 필드에 Expression을 사용하여 "value of export parameter01", "value of export parameter02", "value of export parameter03"라는 값을 입력하여 응답 전문으로 사용한다.

    figure sap inbound mapping
    응답 매핑 설정
  4. 상기 플로우의 SAP 액티비티에서 호출할 아웃바운드 룰은 다음과 같다.

    figure sap outbound rule
    아웃바운드 룰 설정

    FUNCTION01 메시지를 요청 메시지로 보내고, 동일한 메시지를 응답으로 받는다. 엔드포인트 정보에 작성된 SAP 아웃바운드 엔드포인트를 입력하고, 'Function명'에 호출할 FUNCTION의 이름을 입력한다.

  5. 요청 매핑에 Expression을 사용하여 각 필드에 테스트에 사용할 값을 입력한다.

    figure sap outbound request mapping
    요청 매핑 설정

5. 배포

거래그룹/거래 배포정보를 설정한다.

figure sap biztx deploy
거래 배포

거래 배포 설정화면에 대한 자세한 사용법은 AnyLink 스튜디오 안내서를 참고한다.