EDI 문자 집합
BizTalk Server 문자 집합을 사용하여 전체 EDI 교환의 유효성을 검사합니다. X12로 인코딩된 메시지와 EDIFACT 또는 EDIFACT로 인코딩된 메시지에 사용되는 문자 집합은 서로 다른 방법으로 확인됩니다.
EDIFACT로 인코딩된 교환은 문자 집합 측면에서 자기 기술적입니다. UNB1 데이터 요소가 사용됩니다. EDIFACT를 사용하려면 태그 이름과 구분 기호가 ASCII 유형이어야 하며, 그 결과 나머지 교환에 관련된 코드 페이지를 적용하기 위해 UNB1을 찾아볼 수 있습니다.
들어오는 EDIFACT 메시지를 처리할 때 BizTalk Server UNB1 데이터 요소에서 해당 메시지에 사용할 문자 집합을 결정합니다. 거래 업체 규약에는 어떤 설정도 필요하지 않습니다.
나가는 EDIFACT 메시지를 처리할 때 BizTalk Server 거래 업체 계약 또는 대체 규약에 설정된 문자를 사용합니다. 양방향 규약 탭(규약이 정의된 경우) 또는 EDIFACT 대체 설정 대화 상자의 규약 탭에 있는 문자 집합 및 구분기호 페이지의 UNB1 데이터 요소를 설정합니다(규약이 정의되지 않은 경우). UNB1.1은 구문 식별자라고 하는 필수 복합 데이터 요소이고, UNB1.2는 EDIFACT 문자 집합 버전입니다. 또한 사용자가 필드에서 이동하거나 다른 페이지를 표시할 때가 아니라 전체 속성 집합이 저장될 경우 UNB1 데이터 요소는 거래 업체 관리 사용자 인터페이스의 속성에 입력된 값의 유효성을 검사하는 데 사용됩니다.
사용 가능한 문자 집합은 KECA, UNOA, UNOB, UNOC, UNOD, UNOE, UNOF, UNOG, UNOH, UNOI, UNOJ, UNOK, UNOX 및 UNOY입니다. 기본값은 UNOB입니다. 이러한 수준의 전체 문자 집합은 ISO 9735 EDIFACT 구문 규칙에 규정되어 있습니다.
참고
인바운드 또는 아웃바운드 교환에 UNOC 문자 집합이 나타나면 EDI 디스어셈블러 또는 EDI 어셈블러에서는 UTF-8 코드 페이지 대신 라틴어-1 코드 페이지가 사용됩니다. UTF-8은 UNOC의 상위 집합이 아니기 때문입니다. UTF-8로 처리하면 UNOC에서 허용되는 일부 문자로 인해 교환이 일시 중단됩니다.
일부 EDIFACT 문자 집합에 있는 문자는 더블바이트 문자일 수 있으며, 반면에 다른 EDIFACT 문자 집합에 있는 경우 싱글바이트 문자일 수 있습니다. 이로 인해 교환에서 문자 수를 기반으로 일괄 처리를 위한 릴리스 조건을 설정할 경우 교환에서 바이트 수는 사용된 문자 집합에 따라 달라질 수 있습니다.
UNA 세그먼트와 세그먼트 이름 UNB는 ASCII 문자 집합에 속해 있는 값으로 제한됩니다.
EDIFACT와 마찬가지로 KEDIFACT로 인코딩된 교환의 문자 집합은 UNB1 데이터 요소에 설정되어 있습니다. EDIFACT의 경우 KEDIFACT 교환을 처리할 때 BizTalk Server 적용할 문자 집합은 양방향 규약 탭(규약이 정의된 경우) 또는 EDIFACT 대체 설정 대화 상자의 규약 탭에 있는 문자 집합 및 구분 기호 페이지의 데이터 요소 UNB1에 설정됩니다(규약이 정의되지 않은 경우). Identifier(UNB1.1) 요소의 값을 KECA로 설정해야 합니다.
BizTalk 수신 파이프라인 또는 송신 파이프라인이 X12로 인코딩된 메시지의 EDI 유효성 검사를 수행할 경우 파이프라인의 CharacterSet 속성에서 선택한 X12 문자 집합을 사용합니다. 이 속성을 설정하려면 수신 위치 또는 송신 포트의 속성 대화 상자를 열고 수신 또는 송신 파이프라인 옆에 있는 줄임표를 클릭한 다음 디스어셈블러 또는 어셈블러의 CharacterSet 속성을 설정합니다.
EDIFACT 또는 KEDIFACT와는 달리 X12로 인코딩된 교환은 문자 집합 측면에서 자기 기술적이지 않으므로 파이프라인의 CharacterSet 속성이 X12 교환의 유효성을 검사하는 데 사용됩니다. ISO 또는 UTF 인코딩이 사용된 ISA 헤더를 읽으면 규약 조회에 다른 값이 나타날 수 있습니다. 따라서 BizTalk가 규약에 적용할 수 있는 문자 집합을 얻으려면 규약 조회 이전에 메시지를 처리할 때 사용할 해당 문자 집합에 대해 알고 있어야 합니다.
양방향 규약 탭의 문자 집합 및 구분 기호 페이지에서 규약 유효성 검사에 사용할 X12 문자 집합을 지정하거나(규약이 정의된 경우) X12 대체 설정 대화 상자의 대체 규약 탭에 있는 문자 집합 및 구분 기호 페이지를 지정합니다(규약이 정의되지 않은 경우). 하지만 BizTalk는 이러한 설정을 사용자가 필드에서 이동하거나 다른 페이지를 표시할 때가 아니라 전체 속성 집합이 저장될 경우 관련된 속성에 입력된 값의 유효성을 검사할 경우에만 사용합니다. 수신 파이프라인 또는 송신 파이프라인은 이러한 문자 집합 속성을 무시합니다.
참고
규약 또는 대체 규약에 지정된 문자 집합이 수신 또는 송신 파이프라인에 대해 선택한 문자 집합과 일치하지 않으면 메시지 유효성 검사 오류가 발생할 수 있습니다. 그에 대한 예로 규약의 X12 문자 집합 속성이 확장으로 설정되었지만 파이프라인 속성의 X12 문자 속성이 기본으로 설정된 경우가 있습니다.
사용 가능한 문자 집합은 기본 및 확장(X12 사양/구현 가이드에서 설명됨)과 UTF8/유니코드입니다. 기본값은 UTF8입니다.
참고
양방향 규약 또는 대체 규약에서 데이터-요소 구분 기호, 구성 요소-요소 구분 기호 및 세그먼트 마침 표시에 입력된 값은 ASCII 문자 집합의 값으로 제한됩니다. 이러한 속성은 X12 문자 집합에 대해 유효성이 검사되지 않습니다.
기본 문자 집합에는 다음과 같은 대문자, 숫자, 공백 및 특수 문자가 포함됩니다. A~ Z, 0~9, ! " & ' ( ) * + , - . / : ; ? = (space).
확장 문자 집합에는 기본 문자 집합의 문자와 소문자, 언어 선택 문자 및 기타 특수 문자(a through z, % @ [ ] _ { } \ | <> ~ # $.