출판된 한글판 도서
ERP SAP R/3 ALE, EDI & IDOC 기술 |
Original Book Contents
Chapter 2 Master Data 분배와 Interface
2.1 개요
이 장에서 우리는 ALE를 이용하여 master data를 분배하는 방법과 master data에 대한 interface를 구축하는데 필요한 여러 가지 작업들에 대하여 공부할 것이다. SAP를 설치할 때, 다른 R/3 시스템이나 외부시스템으로 master data를 보내야 하는 경우가 많이 있다. 예를 들면 R/3밖에 있는 기존 시스템(legacy system)에서 돌아가고 있는 어떤 응용시스템이 transaction자료를 처리하기 위해서 Customer Master 자료를 필요로 할 수도 있고, 또는 분산환경에서 판매조직용 R/3 시스템의 Customer Master를 본사에 있는 R/3 시스템의 Customer Master자료와 일치시킬 필요가 있을 수도 있다. SAP에서 master data라고 하면 그 범위가 매우 넓은데, 예를 들면 Material, Customer, Vendor, Class, Classification, Bill of Material, Pricing Condition, General Ledger, Cost Element 등이 모두 이 범주에 포함된다. R/3에서 ALE 서비스를 사용하여 master data를 분배할 수 있는 message type이 50개 이상 존재한다.
SAP R/3에서 master data를 전송하는 방법에는 세 가지가 있다. 첫 번째 방법은 master data를 직접 전송하는 것인데, 이는 ALE 프로그램이 현재 R/3 database에 존재하는 master data 자료 중에서 사용자가 입력한 선택조건에 맞는 자료를 선택한 다음, 그 master에 맞는 IDOC을 생성하여 자료를 전송하는 방식이다. 이렇게 생성된 IDOC은 ALE 통신 계층(communication layer)를 거쳐서 다른 시스템으로 전송된다. 두 번째 방식은 master data에서 발생하는 모든 변동사항을 포착하고, 그러한 변동사항을 IDOC으로 변환시켜 주는 ALE 프로그램을 실행시킨 다음, 생성된 IDOC을 다른 시스템으로 전송하는 방식이다. 세 번째 방식은 다른 R/3 시스템에서 master data를 끌어가는 방법이다. 하지만 이 방식은 몇몇 message type에서만 사용할 수 있는 방법이며, 모든 경우에 사용할 수는 없다.
두 번째 방식에 대하여 조금 더 살펴 보기로 하자. R/3는 자체적으로 가지고 있는 Shared Master Data라는 도구를 통하여 master data에서 발생하는 변동사항을 추적할 수 있는 강력한 체계를 제공해 준다. [그림 2-1]에서처럼, application에 의해서 master data에 변동(변동이라 함은 생성, 변경, 삭제, 삭제표시를 모두 포함한다)이 발생하면, Change Document Service가 이러한 변동사항을 table CDHDR과 table CDPOS에 기록한다. Shared Master Data 도구는 이러한 변동사항을 감지하고, 그 변동사항이 ALE 서비스를 통하여 다른 시스템으로 분배되어야 하는지를 확인한다. 만약 그렇다면, 그것은 change pointer를 생성하는데, 이때 생성되는 change pointer는 table BDCP와 table BDCPS에 보관된다(table BDCPS에는 특정 Pointer와 message type별로 status flag가 관리되고 있다. 이러한 flag는 그 change pointer가 처리되었는지를 표시하는 역할을 한다). ALE 프로그램이 실행되면서, 특정 message type에 대하여 아직 처리되지 않은 모든 change pointer 자료를 선택한 다음, 사전에 지정된 function module을 이용하여 선택된 change pointer자료에 따라 master database를 읽고, 그 IDOC type에 지정되어 있는 IDOC의 각 segment에 자료를 채운다. ALE 프로그램은 customer distribution model을 참조하여 그 message type을 수신할 logical system을 결정하고, filter object에 근거하여 자료를 filtering하고, 그 IDOC type에 대해 사전에 지정된 partner profile을 점검한 다음, communication IDOC을 생성한다.
그림 2‑1 Change Pointer의 구조
이 절에서, 우리는 message type MATMAS를 이용하여 Material Master자료를 R/3 시스템에서 non-R/3 시스템으로 전송하는 interface를 개발할 것이다. 또한 R/3와 R/3 간에 Class Master(message type CLSMAS)와 Characteristics Master(message type CHRMAS)자료를 전송하는 interface도 구축할 것이다. 우리는 change pointer를 이용하여 변동사항을 포착하고, 그것들을 다른 시스템으로 전송하는 방법뿐만 아니라, master data를 직접 전송하는 방식에서 대해서도 단계적으로 언급할 것이다. 이 절은 또한 여러분에게 ALE와 EDI interface가 정상적으로 작동하기 위해서 처리해야 하는 기본적인 설정에 대해서도 가르쳐 줄 것이다.