인터페이스 테이블 형식
인터페이스 테이블에는 지속적 및 비지속적 컬럼을 포함하고 오브젝트 구조에서 제외되는 컬럼을 배제한 해당 오브젝트 구조와 동일한 형식이 있습니다.
인터페이스 테이블은 전송 시스템이 작성하고 수신 시스템이 다양한 인터페이스 테이블에서 레코드를 처리하는 순서를 식별하는 추가 컬럼을 포함합니다.
키 컬럼
인터페이스 테이블에 계층적 오브젝트 구조(상위-하위 오브젝트 관계 포함)가 표시되는 경우, 테이블에는 상위 오브젝트의 키 컬럼에 포함되는 하위 오브젝트의 키 컬럼의 어떤 부분도 포함되지 않습니다. 예를 들어, PERSONID는 PERSON, PHONE, EMAIL 및 SMS 레코드에 있는 키 컬럼입니다. PERSONID 컬럼은 MXPERSON_IFACE 인터페이스 테이블의 상위(PERSON) 레벨에서만 있습니다.
컬럼 및 별명 중복
계층적 오브젝트 구조의 XML 표시에는 중복 컬럼 이름이 포함되지만, 인터페이스 테이블과 플랫 파일 표시에는 포함되지 않습니다. 상위 오브젝트 및 하위 오브젝트 모두에서 오브젝트 구조에 중복되는 키가 아닌 컬럼 이름이 있는 경우, 인터페이스 테이블 또는 플랫 파일 레코드가 생성될 때 중복 컬럼 이름의 오류가 발생합니다.
이 문제를 해결하려면 중복 컬럼 이름 중 하나의 별명을 변경하십시오. 모든 시스템 데이터베이스 컬럼에는 별명을 지정할 수 있습니다. 별명이 있는 경우, 시스템에서는 인터페이스 테이블과 플랫 파일을 생성할 때 별명을 사용합니다. 별명을 변경하여 중복 컬럼 이름의 오류를 해결하십시오.
대부분의 컬럼에는 별명이 없지만, 일부 컬럼에는 사전정의된 엔터프라이즈 서비스 또는 게시 채널을 지원하는 별명이 있습니다.
오브젝트 구조 내의 한 컬럼은 하나의 별명을 가질 수 있습니다. 여러 개의 게시 채널과 엔터프라이즈 서비스에서 오브젝트 구조를 사용하는 경우 별명에 대한 변경은 오브젝트 구조와 연관된 모든 인터페이스 테이블에 영향을 줍니다.
사전정의된 오브젝트 구조의 컬럼에는 시스템에서 할당된 별명이 있습니다. 계층적 오브젝트 구조를 작성하거나 오브젝트를 사전정의된 오브젝트 구조에 추가할 때 별명이 중복되지 않는지 확인하십시오. 별명 추가/수정 창은 선택된 오브젝트 구조로 오브젝트에 대한 별명 및 필드를 표시하며 중복 컬럼이 선택된 중복 별명 이름을 식별합니다. 중복 별명이 존재하는 경우, ALIASNAME 컬럼에서 해당 값을 겹쳐쓰십시오.
제한됨 컬럼
HASLD 필드는 모든 오브젝트 구조에서 제외된 내부 시스템 컬럼입니다. 인터페이스 테이블과 연관된 모든 오브젝트 구조에 이 컬럼을 포함시키지 마십시오. LANGCODE 필드도 사전정의된 오브젝트 구조에 포함되지 않습니다.
통합 처리 컬럼
다음 표에는 인터페이스 테이블의 순차화, 검색 및 처리에 사용되는 컬럼이 설명되어 있습니다. 일부 컬럼은 인터페이스 큐 테이블이나 인터페이스 테이블에 있으며 일부는 두 위치 모두에 있습니다.
| 컬럼 이름 | 인터페이스 큐 테이블 | 인터페이스 테이블 | 설명 |
|---|---|---|---|
| IFACENAME | 예 | 아니오 | IFACENAME 컬럼은 트랜잭션에서 사용되는 엔터프라이즈 서비스나 게시 채널의 이름을 포함합니다. 컬럼은 아웃바운드 트랜잭션에서 채워집니다. 인바운드 트랜잭션의 경우, 외부 시스템은 인터페이스 테이블에 삽입된 행에 해당되는 게시 채널 또는 엔터프라이즈 서비스의 이름으로 컬럼을 채워야 합니다. |
| TRANSID | 예 | 예 | 인터페이스 큐 테이블의 TRANSID 컬럼은 통합 트랜잭션을 고유하게 식별하는 순서 번호입니다. TRANSID 및 인터페이스 테이블 이름으로 고유한 트랜잭션을 식별합니다. 인터페이스 큐 테이블에는 TRANSID 값이 있는 하나의 레코드가 포함됩니다. 해당 인터페이스 테이블에는, 엔터프라이즈 서비스 또는 게시 채널의 일부로서 해당 인터페이스 테이블에 기록되는 레코드 수에 따라, TRANSID를 갖는 하나 이상의 레코드가 있을 수 있습니다. 트랜잭션에서 다중 인터페이스 테이블에 작성하는 경우, 인터페이스 큐 테이블에 인터페이스 테이블 각각에 대해 고유한 TRANSID 값을 갖는 개별 레코드가 있습니다. 각 인터페이스 큐 테이블이 고유한 TRANSID 카운터를 유지보수합니다. 인터페이스 큐 테이블의 레코드가 생성되면 아웃바운드 TRANSID 값이 초기화됩니다. 인바운드 큐 테이블 및 인터페이스 테이블 레코드를 채우는 TRANSID 카운터를 작성하고 유지보수해야 합니다. 외부 시스템이 인바운드 TRANSID 카운터를 올바르게 관리하지 않는 경우, 순차 처리가 보장되지 않습니다. 외부 시스템에서 생성하는 TRANSID 값이 생성된 TRANSID 값과 중복되지 않는지 확인하십시오. 중복 TRANSID 값이 있는 경우와 단일 인터페이스 테이블을 사용하여 인바운드 및 아웃바운드 방향 모두에서 동일한 오브젝트 구조를 처리하는 경우 오류가 발생합니다. 각 엔드포인트에는 인터페이스 큐 테이블과 해당 아웃바운드 TRANSID 카운터의 고유한 세트가 있습니다. |
| TRANSSEQ | 아니오 | 예 | 인터페이스 테이블의 다중 레코드가 동일한 TRANSID 값을 공유하는 경우, TRANSSEQ 컬럼에서 해당 레코드가 처리되는 순서를 표시하는 2차 순서 번호를 제공합니다. |
| EXTSYSNAME | 예 | 아니오 | 인터페이스 큐 테이블의 EXTSYSNAME 컬럼은 인바운드 또는 아웃바운드 데이터를 포함할 수 있습니다. 인바운드 트랜잭션의 경우, 컬럼은 통합 프레임워크에서 정의된 유효하고 사용 가능한 외부 시스템의 이름을 포함합니다. 아웃바운드 트랜잭션의 경우, 컬럼은 트랜잭션의 대상인 외부 시스템의 이름을 포함합니다. |
| ACTION | 예 | 아니오 | ACTION 컬럼은 외부 시스템(아웃바운드) 또는 통합 프레임워크(인바운드)에서 수행할 조치를 포함합니다. 다음 조치가 사용될 수 있습니다.
|
| IMPORTMESSAGE | 예(인바운드만 사용) | 아니오 | IMPORTMESSAGE 컬럼에는 인터페이스 테이블 행을 인바운드 큐로 이동했을 때 생성된 모든 오류 메시지가 있습니다. |
| TRANSLANGUAGE | 예 | 아니오 | TRANSLANGUAGE 컬럼은 트랜잭션의 언어를 식별합니다. 아웃바운드 트랜잭션의 경우 이 값은 트랜잭션을 시작한 사용자의 언어를 표시합니다. 인바운드 트랜잭션의 경우 이 값은 트랜잭션의 언어를 표시합니다. 다중 언어 환경을 지원하는 모든 속성은 TRANSLANGUAGE 값에 정의된 언어로 지정되어야 합니다. |
| MESSAGEID | 예(아웃바운드만 사용) | 아니오 | MESSAGEID 컬럼은 시스템이 모든 아웃바운드 트랜잭션에 할당하는 고유한 ID입니다. |
| IFACETBNAME | 예(아웃바운드만 사용) | 아니오 | IFACETBNAME 컬럼은 IFACENAME 컬럼에 해당하는 인터페이스 테이블의 이름입니다. 이 컬럼은 아웃바운드 트랜잭션에만 적용됩니다. |
Oracle Database 의 상세 설명 컬럼
자세한 설명 컬럼은 Oracle Database의 CLOB (문자 대형 오브젝트) 컬럼에 저장됩니다. 인터페이스 테이블은 각 CLOB 컬럼의 두 버전, 데이터 유형 CLOB가 있는 버전 및 4000의 문자 길이가 있는 데이터 유형 ALN이 있는 버전을 포함합니다. 다음 예제에서, CLOB 컬럼의 이름은 컬럼 별명입니다. ALN 컬럼의 이름은 컬럼 별명에 접미어 2가 추가된 이름입니다.
| 데이터 유형 | 설명 컬럼 이름 |
|---|---|
| CLOB | PERSON_DESCRIPTION_LD |
| ALN | PERSON_DESCRIPTION_LD2 |
시스템은 아웃바운드 트랜잭션의 두 컬럼을 모두 채웁니다. 인바운드 트랜잭션의 경우, 통합 프레임워크에서는 ALN 컬럼의 값이 널(null)이 아닌 경우 해당 값을 사용하며, 널인 경우 CLOB 컬럼의 값을 사용합니다.