Você está na página 1de 8

EDIFACT CONTRL Message as Functional Acknowledgment

 06/07/2017

If you have selected to generate a functional acknowledgment in business profile


settings or trading partner agreement (or fallback agreement if no agreement is
defined between the two business profiles), or if the UNB9 field in the message is set
to "1", a CONTRL message will be generated as a functional acknowledgment (ACK).
This ACK reports the results of syntax checks of the interchange.
The CONTRL functional ACK includes the following segments:

 UNH message header (mandatory)


 A UCI segment that identifies the subject interchange and indicates the
status interchange receipt, and contains references to the UNA, UNB, and
UNZ segments of the received interchange (mandatory). The UCI segment
has a max occurrence of 1; as a result, it reports the first error encountered
in one of the control segments.

 A UCF segment that identifies a group segment (encapsulated by the UNG


header and UNE trailer) and indicates the nature of any error (mandatory if
the UNG segment exists)

 A UCM segment that identifies a message segment (encapsulated by the


UNH header and UNT trailer) and indicates the nature of any error
(mandatory)

 A UCS segment that identifies a transaction set and indicates the nature of
any error (mandatory)

 A UCD segment that identifies an erroneous composite or component data


element and indicates the nature of the error (conditional)

 UNT message trailer (mandatory).

If a received CONTRL functional acknowledgment only contains UNH, UCI, and


UNT segments, the EDIReceive pipeline will process the acknowledgment as a
CONTRL receipt (technical) acknowledgment.
Each instance of a segment at a reporting level (i.e., the UCI, UCF, UCM,
UCS, and UCD segments) can report only one error.

Notes:
The CONTRL message contains several mandatory data elements that will be copied
from the received interchange. If the data element in the interchange is missing or is
syntactically invalid, a syntactically valid CONTRL message cannot be generated. The
error must then be reported by some means other than a CONTRL message.

In BizTalk Server, a CONTRL message (receipt acknowledgment, acceptance, or


rejection) is sent in response to a received interchange that contains only one or
more CONTRL messages. In BizTalk Server 2013 R2, no CONTRL message (receipt
acknowledgment, acceptance, or rejection) is sent in response to a received
interchange that contains only one or more CONTRL messages. Errors in received
CONTRL messages must be reported by a means other than a CONTRL message. If
one or more CONTRL messages are contained in an interchange that contains data
messages, the CONTRL message generated as a response to that interchange will be
generated as if no CONTRL messages were contained in the received interchange.

SG Loops
The CONTRL functional ACK will be structured differently depending upon whether
the received interchange includes one or more groups. If the interchange includes a
group, the ACK will contain one UCF segment per group. Each UCF segment will
contain one UCM segment per message, and each UCM segment will include a series
of UCS and UCD segments in tandem.

The XML form of the ACK message will include an SG3Loop element that
encapsulates each UCF segment, an SG4Loop element that encapsulates each UCM
element, and an SG5Loop element that encapsulates each pair of UCS and UCD
elements. SG loop tags are not present in the native EDI format of the message.
If the interchange does not include a group, the ACK will not contain any UCF
segments. Instead it will include one UCM segment per message, and each UCM
segment will include a series of UCS and UCD segments in tandem.
The XML form of the ACK message will include an SG1Loop element that
encapsulates each UCM element, and an SG2Loop element that encapsulates each
pair of UCS and UCD elements. As with interchanges that include groups, the SG
tags are not present in the native format of the ACK.
Note:
By default and industry usage, SG1/SG4 loops are not expected for accepted
transaction sets. However, to support compliance with standards, you can force
generation of SG1/SG4 by selecting the Generate SG1/SG4 loop for accepted
transaction sets checkbox in the Acknowledgements page of the Agreement
Properties dialog box for an agreement between two business profiles (or the
Acknowledgements page of the EDI Settings tab for a business profile). If this
checkbox is selected, the receive pipeline will generate SG1/SG4 loops whether the
transaction set is accepted or rejected. Otherwise, these loops will be generated only
for erroneous transaction sets (for which UCM5 != 7).

Data Elements
The CONTRL functional ACK includes the following data elements:
Data
Name Usage
Element
Message reference
UNH1 -
number
The subcomponents are:

- 1 = CONTRL

Message identifier
UNH2 -2=4
subcomponents

-3=1

- 4 = UN
Interchange
UCI1 Mapped from the UNB5 field of the received message.
control number
Mapped from the UNB2 field of the received message.
Interchange The first subcomponent (identification) is mandatory.
UCI2
sender The second subcomponent (code qualifier) and the third
component (reverse routing address) are optional.
Data
Name Usage
Element
Mapped from the UNB3 field of the received message.
Interchange
UCI3 The first subcomponent (identification) is mandatory.
recipient
The second subcomponent (code qualifier) is optional.
The action codes are:

- 8 if the interchange is accepted

- 7 if the interchange is accepted but some transaction


UCI4 Action code sets are rejected

- 4 if the interchange is rejected because of an error in


the UNA or UNB segment

This is a mandatory data element.


Identifies the error condition in reception of the
interchange (if any). For more information, see
UCI5 Syntax Error Code EDIFACT CONTRL Acknowledgment Error Codes.

This data element has conditional optionality.


Identifies the segment that has the error condition
Service Segment identified in the UCI.5 data element.
UCI6
Tag
This data element has conditional optionality.
Identifies the data elements that have the error
condition identified in the UCI.5 data element. The
subcomponents of UCI7 are:

- Position of erroneous data element in segment


Data element (mandatory)
UCI7
identification
- Position of erroneous component data element in
segment (conditional optionality)

- Occurrence of erroneous data element in segment


(conditional optionality)
Data
Name Usage
Element
UCI8 - -
Mapped from the UNG5 field of the received message.
Group Reference
UCF1
Number
This is a mandatory data element.
Mapped from the UNG2 field of the received message
Application
along with sub components
UCF2 Sender’s
Identification
This is a conditional data element.
Mapped from the UNG3 field of the received message
Application
along with sub components.
UCF3 Recipient’s
Identification
This is a conditional data element.
The action codes are:

- 7 if the interchange is accepted

- 4 if the interchange is rejected because of an error in


UCF4 Action Coded
the UNA or UNB segment

The code applies to this level and all lower levels.

This is a mandatory data element.


Identifies the error condition in the group (if any). For
more information, see EDIFACT CONTRL
Syntax Error,
UCF5 Acknowledgment Error Codes.
Coded

This data element has conditional optionality.


Identifies the erroneous segment in the group.
Service Segment
UCF6
Tag
This data element has conditional optionality.
UCF7 Data element Identifies the data elements that have the error
identification condition identified in the UCF5 data element. The
subcomponents of UCF7 are:

- Position of erroneous data element in segment


Data
Name Usage
Element
(mandatory)

- Position of erroneous component data element in


segment (conditional optionality)

- Occurrence of erroneous data element in segment


(mandatory)
Mapped from the UNH1 field of the received message.
Message
UCM1
Reference Number
This is a mandatory data element.
Mapped from the UNH2 field of the received message
along with sub components
UCM2 Message Identifier

This is a conditional data element.


The action codes are:

- 7 if the interchange is accepted

- 4 if the interchange is rejected because of an error in


UCM3 Action Coded
the UNA or UNB segment

The code applies to this level and all lower levels.

This is a mandatory data element.


Identifies the error condition in the group (if any). For
more information, see EDIFACT CONTRL
Syntax Error,
UCM4 Acknowledgment Error Codes.
Coded

This data element has conditional optionality.


Identifies the UNH or UNT segment in error.
Service Segment
UCM5
Tag
This data element has conditional optionality.
UCM7 Data element Identifies the data elements that have the error
identification condition identified in the UCM5 data element. The
subcomponents of UCM7 are:
Data
Name Usage
Element

- Position of erroneous data element in segment


(mandatory)

- Position of erroneous component data element in


segment (conditional optionality)

- Occurrence of erroneous data element in segment


(mandatory)
Count of the position of the erroneous segment,
starting with UNH as 1. To report that a segment is
missing, this is the numerical count position of the last
segment that was processed before the position where
Segment position
UCS1 the missing segment was expected to be. A missing
in message body
segment group is denoted by identifying the first
segment in the group as missing.

This is a mandatory data element.


Identifies the error condition in the group (if any). For
more information, see EDIFACT CONTRL
Syntax Error
UCS2 Acknowledgment Error Codes.
Coded

This data element has conditional optionality.


Identifies the error condition in the group (if any). For
more information, see EDIFACT CONTRL
Acknowledgment Error Codes.

Syntax Error
UCD1 This data element has conditional optionality.
Coded

Note: If an XSD validation failure occurs, the UCD1


data element will report a code value of 12, Invalid
Value.
UCD2 Data element Identifies the data elements that have the error
identification condition identified in the UCD1 data element. The
subcomponents of UCD2 are:
Data
Name Usage
Element

- Position of erroneous data element in segment


(mandatory)

- Position of erroneous component data element in


segment (conditional optionality)

- Occurrence of erroneous data element in segment


(mandatory)
UNT1 Count of segments -
Message reference
UNT2
number

Você também pode gostar