Azure Logic Apps의 X12 메시지에 대한 997 기능 승인 및 오류 코드
적용 대상: Azure Logic Apps(사용량 + 표준)
Azure Logic Apps에서는 X12 작업을 사용하는 경우 EDI(전자 데이터 교환) 통신용 X12 메시지를 처리하는 워크플로를 만들 수 있습니다. EDI 메시징에서 승인은 EDI 교환 처리의 상태를 제공합니다. 교환을 받을 때 X12 디코딩 작업은 사용하도록 설정된 승인 유형과 지정된 수준의 유효성을 기준으로 보낸 사람에게 하나 이상의 승인 유형을 반환할 수 있습니다.
예를 들어 수신기는 처리 중에 발생하는 각 오류와 함께 997 기능 승인(ACK)을 전송 하여 수신된 X12로 인코딩된 메시지에서 GS(기능 그룹 헤더) 및 GE(기능 그룹 트레일러) 의 유효성을 검사하여 상태를 보고합니다. X12 디코딩 작업은 항상 4010 규격 997 ACK를 생성하는 반면, X12 인코딩 작업 및 X12 디코딩 작업은 모두 5010 규격 997 ACK의 유효성을 검사할 수 있습니다.
수신기는 GS(기능 그룹 헤더) 및 GE(기능 그룹 트레일러) 봉투 내에 997 ACK를 보냅니다. 그러나 이 GS 및 GE 봉투는 다른 트랜잭션 집합과 다르지 않습니다.
이 항목에서는 교환의 997 ACK 세그먼트 및 해당 세그먼트에 사용되는 오류 코드를 포함하여 X12 997 ACK에 대한 간략한 개요를 제공합니다. 기타 관련 정보는 다음 설명서를 검토하세요.
- X12 TA1 기술 승인 및 오류 코드
- B2B 엔터프라이즈 통합을 위한 X12 메시지 교환
- B2B 엔터프라이즈 통합을 위한 EDIFACT 메시지 교환
- Azure Logic Apps란?
- Azure Logic Apps 및 엔터프라이즈 통합 팩을 사용하는 B2B 엔터프라이즈 통합 솔루션
997 ACK 세그먼트
다음 표에서는 교환의 997 ACK 세그먼트에 대해 설명하고 다음 정의를 사용합니다.
- M = 필수
- O = 선택 사항
Position | 세그먼트 ID | 속성 | 필수 지정 (Req. Des.) |
최대 사용 | 루프 반복 |
---|---|---|---|---|---|
010 | ST | 트랜잭션 집합 헤더(승인) | M | 1 | - |
020 | AK1 | 기능 그룹 응답 헤더 | M | 1 | - |
030 | AK2 | 트랜잭션 집합 응답 헤더 | O | 1 | 999999 (루프 ID = AK2) |
040 | AK3 | 데이터 세그먼트 참고 사항 | O | 1 | 999999 (루프 ID = AK2 또는 AK3) |
050 | AK4 | Data 요소 참고 | O | 9 9 | - |
060 | AK5 | 트랜잭션 집합 응답 트레일러 | M | 1 | - |
070 | AK9 | 기능 그룹 응답 트레일러 | M | 1 | - |
080 | SE | 승인에 대한 트랜잭션 집합 트레일러 | M | 1 | - |
다음 섹션에서는 각 AK 세그먼트에 대한 자세한 정보를 제공합니다. AK2에서 AK5까지의 루프에서 세그먼트는 트랜잭션 집합의 오류에 대한 정보를 제공합니다.
AK1
필수 AK1 세그먼트는 다음 데이터 요소를 사용하여 승인되는 기능 그룹을 식별합니다.
요소 | 설명 |
---|---|
AK101 | 필수로, 승인할 기능 그룹의 GS01(기능 그룹 ID)을 식별합니다. |
AK102 | 필수로, 승인할 기능 그룹의 그룹 제어 번호(GS06 및 GE02)를 식별합니다. |
AK103 | 선택 사항으로, 원래 트랜잭션에서 GS08에서 전송된 EDI 구현 버전을 식별합니다. AK103은 인바운드 5010 규격 997 ACK를 지원합니다. |
AK2
선택적 AK2 세그먼트에는 수신된 기능 그룹의 트랜잭션 집합에 대한 승인이 포함됩니다. 여러 AK2 세그먼트가 있는 경우 일련의 루프로 전송됩니다. 각 AK2 루프는 받은 주문을 사용하여 트랜잭션 집합을 식별합니다. 트랜잭션 집합이 오류인 경우 AK2 루프에는 AK3, AK4 및 AK5 세그먼트가 포함됩니다. 자세한 내용은 이 항목의 뒷부분에 있는 세그먼트 설명을 검토하세요.
AK2 세그먼트는 다음 데이터 요소를 사용하여 트랜잭션 집합을 식별합니다.
요소 | 설명 |
---|---|
AK201 | 필수로, 승인할 트랜잭션 집합의 ST01(트랜잭션 집합 ID)을 식별합니다. |
AK202 | 필수로, 승인할 트랜잭션 집합의 트랜잭션 집합 제어 번호(ST02 및 SE02)를 식별합니다. |
AK203 | 선택 사항으로, 원래 트랜잭션의 ST03에서 전송된 EDI 구현 버전을 식별합니다. AK203은 인바운드 5010 규격 997을 지원합니다. |
AK2 세그먼트 생성
모든 수락 및 거부된 트랜잭션 집합에 대해 AK2 세그먼트를 생성하거나 거부된 트랜잭션 집합에 대해서만 생성하도록 지정할 수 있습니다. 그 외의 경우에는 거부된 트랜잭션 집합에 대해서만 Azure Logic Apps가 AK2 루프를 생성합니다. 응답하는 교환에 대한 규약이 해결되지 않으면 997 세대 설정은 기본적으로 대체 규약 설정으로 설정되며, AK2 세그먼트는 허용된 트랜잭션 집합에 대해 생성되지 않습니다.
Azure Logic Apps가 AK501 == A인 허용되는 트랜잭션 집합에 대한 AK2 세그먼트를 생성하도록 하려면 다음 단계를 수행합니다.
Azure Portal에서 통합 계정을 연 다음 X12 거래 업체 간에 X12 규약 아티팩트가 열립니다.
수신 설정 창을 열고 FA 예상이 선택되어 있는지 확인합니다. 그런 다음, AK2/IK2 루프 포함을 선택할 수 있습니다.
AK3
선택적 AK3 세그먼트는 데이터 세그먼트의 오류를 보고하고 데이터 세그먼트의 위치를 식별합니다. 하나 이상의 오류가 있는 트랜잭션 집합의 각 세그먼트에 대해 AK3 세그먼트가 만들어집니다. 여러 AK3 세그먼트가 있는 경우 루프당 하나의 세그먼트가 있는 일련의 루프로 전송됩니다. AK3 세그먼트는 오류에 있는 각 세그먼트의 위치를 지정하고 다음 데이터 요소를 사용하여 해당 위치에 있는 구문 오류의 유형을 보고합니다.
요소 | 설명 |
---|---|
AK301 | 필수는 X12 세그먼트 ID(예: NM1)를 사용하여 오류 세그먼트를 식별합니다. |
AK302 | 필수, 오류 세그먼트의 세그먼트 수를 식별합니다. ST 세그먼트는 1 이며 각 세그먼트는 세그먼트 수를 1씩 증가합니다. |
AK303 | 필수는 LS(루프 시작) 세그먼트와 LE(루프 끝) 세그먼트로 둘러싸인 루프인 경계 루프를 식별합니다. AK303에는 세그먼트를 오류로 바인딩한 LS 및 LE 세그먼트의 값이 포함되어 있습니다. |
AK304 | 선택 사항으로, 데이터 세그먼트의 오류에 대한 코드를 지정합니다. AK304는 선택 사항이지만 식별된 세그먼트에 대한 오류가 있는 경우 요소가 필요합니다. AK304 오류 코드의 경우 997 ACK 오류 코드 - 데이터 세그먼트 참고를 검토합니다. |
AK4
선택적 AK4 세그먼트는 데이터 요소 또는 복합 데이터 구조의 오류를 보고하고 데이터 요소의 위치를 식별합니다. AK4 세그먼트는 AK304 데이터 요소가 있을 때 전송되며 "8", "Segment has data element errors"
각 AK3 세그먼트 내에서 최대 99회 반복할 수 있습니다. AK4 세그먼트는 각 데이터 요소 또는 복합 데이터 구조의 위치를 오류로 지정하고 다음 데이터 요소를 사용하여 해당 위치에 있는 구문 오류 유형을 보고합니다.
요소 | 설명 |
---|---|
AK401 | 필수, AK41.1, AK41.2 및 AK41.3 필드가 있는 복합 데이터 요소 - AK401.1: 숫자 수를 사용하여 오류의 데이터 요소 또는 복합 데이터 구조를 식별합니다. 예를 들어 세그먼트에 있는 두 번째 데이터 요소에 오류가 발생한 경우 AK401은 |
AK402 | 선택 사항으로, 오류가 발생한 요소의 단순 X12 데이터 요소 번호를 식별합니다. 예를 들어 NM101은 간단한 X12 데이터 요소 번호 98입니다. |
AK403 | 필수로 식별된 요소의 오류를 보고합니다. AK403 오류 코드의 경우 997 ACK 오류 코드인 Data Element Note를 검토합니다. |
AK404 | 선택 사항으로, 식별된 데이터 요소의 복사본을 오류로 포함합니다. 오류가 잘못된 문자를 나타내는 경우 AK404는 사용되지 않습니다. |
AK5
AK5 세그먼트는 AK2 세그먼트에서 식별된 트랜잭션 집합이 허용 또는 거부되는지 여부와 그 이유를 보고합니다. AK5 세그먼트는 선택적 AK2 루프가 승인에 포함된 경우 필수입니다. AK4 세그먼트는 단일 필수 데이터 요소를 사용하여 트랜잭션 집합의 상태를 지정하고 트랜잭션 집합의 구문 편집에 따라 1~5개의 선택적 데이터 요소를 사용하는 오류 코드를 제공합니다.
요소 | 설명 |
---|---|
AK501 | 필수, 식별된 트랜잭션 집합이 승인 또는 거부되었는지 여부를 지정합니다. AK501 오류 코드의 경우 997 ACK 오류 코드 - 트랜잭션 응답 트레일러를 검토합니다. |
AK502 - AK506 | 선택 사항으로 오류의 특성을 나타냅니다. AK502 오류 코드의 경우 997 ACK 오류 코드 - 트랜잭션 집합 응답 트레일러를 검토합니다. |
AK9
필수 AK9 세그먼트는 AK1 세그먼트에서 식별된 기능 그룹이 허용 또는 거부되는지 여부와 그 이유를 나타냅니다. AK9 세그먼트는 네 개의 필수 데이터 요소를 사용하여 트랜잭션 집합의 상태와 오류의 특성을 지정합니다. 세그먼트는 1~5개의 선택적 요소를 사용하여 기록된 오류를 지정합니다.
요소 | 설명 |
---|---|
AK901 | 필수로, AK1에서 식별된 기능 그룹이 수락 또는 거부되는지 여부를 지정합니다. AK901 오류 코드의 경우 997 ACK 오류 코드 - 기능 그룹 응답 트레일러를 검토합니다. |
AK902 | 필수, 식별된 기능 그룹 트레일러(GE01)에 포함된 트랜잭션 집합의 수를 지정합니다. |
AK903 | 필수로 수신된 트랜잭션 집합의 수를 지정합니다. |
AK904 | 필수로, 식별된 기능 그룹에서 허용되는 트랜잭션 집합 수를 지정합니다. |
AK905 - AK909 | 선택 사항으로, 식별된 기능 그룹에 기록된 1~5개의 오류를 나타냅니다. AK905~AK909 오류 코드의 경우 997 ACK 오류 코드 - 기능 그룹 응답 트레일러를 검토합니다. |
997 ACK 오류 코드
이 섹션에서는 997 ACK 세그먼트에 사용되는 오류 코드에 대해 설명합니다. 각 테이블에는 Azure Logic Apps에서 X12 메시지 처리를 위해 X12 사양에 정의된 대로 지원되는 오류 코드와 지원되지 않는 오류 코드가 나열되어 있습니다.
AK304 오류 코드 - 데이터 세그먼트 참고
다음 표에서는 AK3 세그먼트의 AK304 데이터 요소에 사용되는 오류 코드(데이터 세그먼트 참고)를 나열합니다.
오류 코드 | 조건 | 지원 여부 |
---|---|---|
1 | 인식할 수 없는 세그먼트 ID | 예 |
2 | 예기치 않은 세그먼트입니다 | 예 |
3 | 필수 세그먼트 누락 | 예 |
4 | 루프는 최대 시간에 걸쳐 발생합니다. | 예 |
5 | 세그먼트가 최대 사용량 초과 | 예 |
6 | 정의된 트랜잭션 집합에 없는 세그먼트 | 예 |
7 | 세그먼트가 적절한 순서로 표시되지 않음 | 예 |
8 | 세그먼트에 데이터 요소 오류가 있습니다 | 예 |
511 | 후행 구분 기호가 발견됨(사용자 지정 코드) | 예 |
AK403 오류 코드 - 데이터 요소 메모
다음 표에서는 AK4 세그먼트의 AK403 데이터 요소에 사용되는 오류 코드를 나열합니다(데이터 요소 참고).
오류 코드 | 조건 | 지원 여부 |
---|---|---|
1 | 필수 데이터 요소가 없습니다 | 예 |
2 | 조건부 필수 데이터 요소가 없습니다. | 예 |
3 | 너무 많은 데이터 요소 | 예 |
4 | 데이터 요소가 너무 짧음 | 예 |
5 | 데이터 요소가 너무 깁니다. | 예 |
6 | 데이터 요소의 잘못된 문자 | 예 |
7 | 잘못된 코드 값 | 예 |
8 | 잘못된 날짜 | 예 |
9 | 잘못된 형식 | 예 |
10 | 제외 조건을 위반했습니다. | 예 |
AK501 오류 코드 - 트랜잭션 집합 응답 트레일러
다음 표에서는 AK5 세그먼트의 AK501 데이터 요소에 사용되는 오류 코드(트랜잭션 집합 응답 트레일러)를 나열합니다.
오류 코드 | 조건 | 지원 여부 |
---|---|---|
A | 수락됨 | 예 |
E | 수락되었지만 오류가 기록되었습니다. | 예
참고: |
M | 거부됨, MAC(메시지 인증 코드) 실패 | 아니요 |
P | 부분적으로 수락되었으므로 하나 이상의 트랜잭션 집합이 거부되었습니다. | 예 |
R | 거부됨 | 예 |
수 | 거부됨, 보증 실패 유효성 테스트 | 아니요 |
X | 거부됨, 암호 해독 후의 콘텐츠를 분석할 수 없음 | 아니요 |
AK502에서 AK506으로 오류 코드 - 트랜잭션 집합 응답 트레일러
다음 표에서는 AK5 세그먼트의 AK502에서 AK506 데이터 요소에 사용되는 오류 코드(트랜잭션 집합 응답 트레일러)를 나열합니다.
오류 코드 | 조건 | 지원되거나 상관 관계가 있나요? |
---|---|---|
1 | 트랜잭션 집합이 지원되지 않음 | 예, R |
2 | 트랜잭션 세트 트레일러가 없습니다. | 예, R |
3 | 헤더 및 트레일러의 트랜잭션 집합 컨트롤 번호가 일치하지 않음 | 예, R |
4 | 포함된 세그먼트 수가 실제 개수와 일치하지 않음 | 예, R |
5 | 하나 이상의 세그먼트 오류 발생 | 예, R |
6 | 트랜잭션 집합 식별자가 없거나 잘못되었습니다. | 예, R |
7 | 트랜잭션 집합 컨트롤 번호가 없거나 잘못되었습니다. 중복 트랜잭션 번호가 발생했을 수 있습니다. | 예, R |
8~27 | - | 아니요 |
AK901 오류 코드 - 기능 그룹 응답 트레일러
다음 표에는 AK9 세그먼트의 AK901 데이터 요소에서 사용되는 오류 코드가 나열되어 있습니다(기능 그룹 응답 트레일러).
오류 코드 | 조건 | 지원되거나 상관 관계가 있나요? |
---|---|---|
A | 수락됨 | 예 |
E | 수락되었지만 오류가 기록되었습니다. | 예 |
M | 거부됨, MAC(메시지 인증 코드) 실패 | 아니요 |
P | 부분적으로 수락되었으므로 하나 이상의 트랜잭션 집합이 거부되었습니다. | 예 |
R | 거부됨 | 예 |
수 | 거부됨, 보증 실패 유효성 테스트 | 아니요 |
X | 거부됨, 암호 해독 후의 콘텐츠를 분석할 수 없음 | 아니요 |
AK905에서 AK909로 오류 코드 - 기능 그룹 응답 트레일러
다음 표에는 AK9 세그먼트의 AK905 ~ AK909 데이터 요소에서 사용되는 오류 코드가 나열되어 있습니다(기능 그룹 응답 트레일러).
오류 코드 | 조건 | 지원되거나 상관 관계가 있나요? |
---|---|---|
1 | 기능 그룹이 지원되지 않음 | 아니요 |
2 | 기능 그룹 버전이 지원되지 않음 | 아니요 |
3 | 기능 그룹 트레일러 누락 | 예 |
4 | 기능 그룹 헤더 및 트레일러의 그룹 컨트롤 번호가 동의하지 않음 | 예 |
5 | 포함된 트랜잭션 집합 수가 실제 개수와 일치하지 않음 | 예 |
6 | 그룹 컨트롤 번호가 구문을 위반하면 중복된 그룹 컨트롤 번호가 발생했을 수 있습니다. | 예 |
7 ~ 26 | - | 아니요 |