SAP ALE IDOC EDI-Kor_10.2.0 통신

10.2 통신

ALE 처리에는 세 가지 주요 단계가 있다.

단계 1은 송신자 측의 처리인데, 여기서 application과 ALE 서비스는 그 application object에서 필요로 하는 모든 자료를 포함하고 있는 master IDOC을 memory에 생성한다. 이 master IDOC으로부터, ALE의 설정에서 정의된 각각의 수신자에 대하여 communication IDOC이 생성되고, 이것이 IDOC database에 저장된다. customer distribution model에서 설정된 filter object 집합에 따라 수신자가 달라지면 각자 다른 자료를 수신할 수도 있다. application은 자체적인 format으로 master data나 transaction data를 제공해 주지만, ALE function module은 이들 자료를 IDOC 형태로 변환할 책임이 있다.

SAP ALE IDOC EDI-Kor_07.2 Outbound 처리

7.2 Outbound 처리

ALE/EDI outbound처리에서 SAP가 기본적으로 제공하고 있는 기능 중의 하나는 IDOC을 생성해 주는 것인데, 여기에는 IDOC을 통하여 master data를 송신하고, 생성된 IDOC을 port로 보내고, 처리과정에서 오류가 발생하면 IDOC을 재처리하는 작업들이 포함되어 있다.

프로그램 RBDMIDOC은 change pointer에 근거하여 master data IDOC을 생성하기 위해서 사용된다. [그림 7-1]을 참조하라. 이 프로그램은 master data에 대한 message type을 유일한 parameter로 사용한다. 특정 message type에 대하여 이 프로그램을 실행하면, 그 message type에 대한 change pointer에 근거하여 IDOC을 생성해 내고, 수신시스템으로 IDOC을 전송해 준다. 앞에서 이야기한 것처럼, changer pointer란 SAP 시스템에 있는 특정 application자료에서 발생하는 변경사항을 기록해 주는 object이다. 수신시스템은 customer distribution model에 의해서 결정된다. 수신시스템을 나타내는 logical system에 대해서 유효한 partner profile이 정의되고, 그 outbound parameter에서 message type, 그에 대응되는 IDOC type, port 등에 대한 정보가 정확하게 정의되어 있어야 한다. 만약 여러분이 어떤 master data message type에 대하여 ‘IDOC reduction’을 위한 설정을 하고, 그것을 활성화(activate)하였다면, 이 프로그램을 이용하여 ‘reduction message type’에 대한 IDOC을 생성할 수도 있다는 것에 유의하라(제 4장에 있는 IDOC reduction을 보라). 프로그램 RBDMIDOC이 일단 지정된 message type에 대한 change pointer를 처리한 후에는, 그 change pointer를 “processed” flag로 표기한다. 여러분이 아는 것처럼, 이 flag는 table BDCPS에서 관리되고 있다. 그리고 난 다음, 이 프로그램은 생성된 ‘master IDOC’과 ‘communication IDOC’의 숫자에 대한 안내 메시지를 보여 줄 것이다. 실제로 생성된 communication IDOC의 숫자와 master IDOC의 숫자는 customer distribution model의 message flow에서 지정된 logical system과 filter object에 따라 서로 달라질 수 있다는 것에 유의하라. 이 프로그램은 transaction BD21를 사용하거나, transaction BALE à [Services] à [Change Pointers] à [Process]를 통해서도 실행할 수 있다. 프로그램 RBDMIDOC은, 지정된 message type에 대한 모든 change pointer를 모아서 IDOC이 한꺼번에 생성할 수 있도록 하기 위해서, scheduling job으로 만들어 주기적으로 실행할 수도 있다. 이 작업은 master data에서 발생하는 모든 변동사항을 다른 R/3 시스템이나 외부시스템으로 전송하여, 시스템들을 서로 동기화할 필요가 있는 경우에 더욱 유용하다.

SAP ALE IDOC EDI-Kor_05.9 Interface 작동

5.9 Interface 작동

우리가 여기서 하는 작업은, Customer Hierarchy와 관련하여 우리가 구축하고 연결시킨 모든 구성요소들이 원래 의도했던 대로 정확하게 작동하여, master data상에 발생하는 변동사항에 근거하여 IDOC을 생성해 내는지를 점검하는 것이다. 새로운 Basic IDOC type이 생성되었고, 새로운 message type이 그것에 연결되었다. 기존에 이미 존재하는 change document object에 근거하여 change document update function module을 생성하고, SAP의 application 프로그램에 그것을 삽입하였다. 새로운 message type에 대한 change pointer 정보를 수집하고, IDOC을 생성하여 분배해 주는 기능을 가진 두 개의 ALE function module이 작성되었다. IDOC segment field와 change document field를 연결시키는 설정과 함께, change document field에 대하여 change pointer가 생성될 수 있도록 활성화(activate)하는 ALE 설정이 이루어졌다. 우리는 실제 구동되는 ALE function module을 새로운 message type과 연결시켜, change pointer가 처리될 때 호출될 수 있도록 하였다. 마지막으로, 우리는 logical system, customer distribution model, port, partner profile, change pointer 활성화(activation)에 대하여 정의하고, 서로 연결함으로써, ALE 설정을 완료하였다.

SAP ALE IDOC EDI-Kor_04.4 IDOC Reduction

4.4 IDOC Reduction

우리가 다른 시스템, 즉 다른 R/3 시스템이나 외부시스템으로 master data를 분배하거나 송수신할 때, 통신 경로를 통하여 실제로 전송되는 자료의 양이 매우 대량일 수가 있다. 이러한 경우 처리성능에 문제가 발생할 수 있고, 디스크 공간이나 전송대역폭과 같은 자원을 과도하게 사용할 가능성도 있다. master data에 대한 Basic IDOC type을 면밀히 검토해 보면, 많은 segment자료들이 서로 중복되거나, 또는 전혀 사용되지 않을 수도 있다. 이러한 경우에, 이 IDOC은 IDOC Reduction이라고 불리는 기법을 적용할 수 있는 좋은 대상이 된다. R/3는 Basic IDOC type에서 사용되지 않는 segment나 segment 중에서 필요 없는 field를 제거할 수 있는 기능을 우리에게 제공해 준다. 이것을 적용하는 절차는 상대적으로 간단하고, 적용하기가 매우 쉽다. IDOC reduction은 단지 몇 개의 message type에서만 적용할 수 있는데, message type DEBMAS, CREMAS, GLMAST, MATMAS, 그리고 일부 POS message들이 그기에 해당한다.