EDIFACTReader Component
Properties Methods Events Config Settings Errors
The EDIFACTReader component efficiently parses complete EDIFACT transmissions, providing a convenient way to extract and explore data from all included messages.
Syntax
TedEDIFACTReader
Remarks
The component allows you to parse an incoming EDI document. To parse a document, first, use LoadSchema to load a schema file into the component. Next, select the document you want to process by setting InputFile or InputData and calling Parse.
As the component processes the document, its events will fire and the contents of the document will be available in the Interchange, FunctionalGroup, Message, Segment, Element, and Component properties. The corresponding *Index properties can be thought of as a path within the document. For example, setting the MessageIndex property will cause the SegmentCount property to be updated with the number of segments within the selected message, and then the SegmentIndex property can be used to select one of the segments within that message.
To manage the amount of memory used during processing, the BuildDOM property can be used to select how much of the message will be available in the properties at once:
- bdEntireDocument - The entire document will be available at once.
- bdInterchange - Only the current interchange and its contents will be available.
- bdMessage - Only the current message will be available.
- bdNone - Only the current segment and its elements will be available.
During parsing, the component performs basic validation of the incoming document. If an error is encountered, the ValidateWarning event will fire.
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
| AckType | Specifies the type of ACK that will be generated by GenerateAck . |
| BuildDOM | Controls how much of the document will be stored during parsing. |
| ComponentDataType | The type of data contained in the element. |
| ComponentIsComposite | Specifies whether the element is a simple or composite element. |
| ComponentMaxLen | For a simple element, this specifies the maximum length of the element according to the schema. |
| ComponentMinLen | For a simple element, this specifies the minimum length of the element according to the schema. |
| ComponentSchemaDesc | The description of the element as specified in the schema. |
| ComponentSchemaName | The name of the element as specified in the schema. |
| ComponentValue | If the element is a simple element, this property contains its value. |
| ComponentCount | The number of components in the current Element. |
| ComponentIndex | The index of the current Component. |
| DelimiterComponent | The character used to separate the components in a composite element. |
| DelimiterDecimal | The character used to separate the integer portion of a numeric value from the fractional portion. |
| DelimiterElement | The delimiter used to separate elements within a segment. |
| DelimiterRelease | The character used to escape other characters within a property. |
| DelimiterRepetition | The character used to indicate a repeating element or component. |
| DelimiterSegment | The character used to terminate a segment. |
| ElementDataType | The type of data contained in the element. |
| ElementIsComposite | Specifies whether the element is a simple or composite element. |
| ElementMaxLen | For a simple element, this specifies the maximum length of the element according to the schema. |
| ElementMinLen | For a simple element, this specifies the minimum length of the element according to the schema. |
| ElementSchemaDesc | The description of the element as specified in the schema. |
| ElementSchemaName | The name of the element as specified in the schema. |
| ElementValue | If the element is a simple element, this property contains its value. |
| ElementCount | The number of elements in the current Segment. |
| ElementIndex | The index of the current Element. |
| FGroupAppPassword | The application password as specified in the functional group header. |
| FGroupAppRecipientIdentification | The name or code of the intended recipient of the message group. |
| FGroupAppRecipientIDQualifier | The qualifier for the recipient's identification (if it contains a code value). |
| FGroupAppSenderIdentification | The name or code of the message group's sender. |
| FGroupAppSenderIDQualifier | The qualifier for the sender's identification (if it contains a code value). |
| FGroupAssociationAssignedCode | The assigned code for the message type. |
| FGroupControllingAgency | A code value that indicates the agency responsible for maintaining the message specifications. |
| FGroupDate | The date that the group of messages was prepared. |
| FGroupGroupIdentification | The identification value for the functional group. |
| FGroupMessageRelease | The message release number for the message type appearing in the message group. |
| FGroupMessageVersion | The message version number for message type appearing in the functional group. |
| FGroupReferenceNumber | The reference number for the functional group. |
| FGroupTime | The time that the group of messages was prepared. |
| FunctionalGroupCount | The number of FunctionalGroups in the current Interchange. |
| FunctionalGroupIndex | The index of the current FunctionalGroup. |
| Group | Specifies the group to load segments from. |
| InputData | The EDI message, specified as a string. |
| InputFile | The file containing the EDI message. |
| InterchangeAckRequest | If this property is '1', an ACK was requested in response to this interchange. |
| InterchangeAgreementIdentifier | The identifier for the communication agreement used by the interchange. |
| InterchangeApplicationReference | If the interchange contains only one type of message, this can contain the identifier for the type of message. |
| InterchangeCharacterEncoding | The character encoding used by the interchange. |
| InterchangeCodeListVersionNumber | The identifier for the communication agreement used by the interchange. |
| InterchangeDate | The date that the interchange was prepared. |
| InterchangeProcessingPriorityCode | A 1-character code that requests a specific processing priority for the interchange. |
| InterchangeRecipientIdentification | The identification for the interchange's recipient. |
| InterchangeRecipientIDQualifier | The qualifier for the recipient identification code. |
| InterchangeRecipientInternalIdentification | More specific recipient identification for internal use. |
| InterchangeRecipientInternalSubIdentification | A sub-identification string for the receiver for internal use. |
| InterchangeRecipientPassword | A password to be verified by the recipient, such as a system or network password. |
| InterchangeRecipientPasswordQualifier | A qualifier for the recipient password. |
| InterchangeReferenceNumber | A reference number for the interchange. |
| InterchangeSenderIdentification | The identification for the interchange's sender. |
| InterchangeSenderIDQualifier | The qualifier for the sender identification code. |
| InterchangeSenderInternalIdentification | More specific sender identification for internal use. |
| InterchangeSenderInternalSubIdentification | A sub-identification string for the sender for internal use. |
| InterchangeSyntaxIdentifier | A identifier specifying the controlling agency and valid character set. |
| InterchangeSyntaxVersionNumber | A 1-character numeric value indicating the syntax version. |
| InterchangeTestIndicator | If this property is '1', the interchange is a test interchange. |
| InterchangeTime | The time that the interchange was prepared. |
| InterchangeCount | The number of Interchanges in the document. |
| InterchangeIndex | The index of the current Interchange. |
| MsgAssociationAssignedCode | A code assigned to the message by the controlling organization. |
| MsgCodeListVersionNumber | The version number of the code list that should be used. |
| MsgCommonAccessReference | A reference value to associate this message with related messages. |
| MsgControllingAgency | A code that identifies the controlling agency for this message type. |
| MsgFirstAndLastTransfer | A single-character property that indicates the first and last messages in a related set. |
| MsgMessageImplControllingAgency | A code value that identifies the controlling agency for the message implementation. |
| MsgMessageImplIdentification | Identifies the message implementation. |
| MsgMessageImplRelease | Identifies the release number for the message implementation. |
| MsgMessageImplVersion | Identifies the version number for the message implementation. |
| MsgMessageRelease | Identifies the release number for the message. |
| MsgMessageSubsetControllingAgency | A code value that identifies the controlling agency for the message subset. |
| MsgMessageSubsetIdentification | Identifies the message subset. |
| MsgMessageSubsetRelease | Identifies the release number for the message subset. |
| MsgMessageSubsetVersion | Identifies the version number for the message subset. |
| MsgMessageType | A code identifying the message's type. |
| MsgMessageTypeSubFunctionIdentification | A code identifying the sub-function of the message's type. |
| MsgMessageVersion | Identifies the version number for the message. |
| MsgReferenceNumber | A unique reference number for the message. |
| MsgScenarioControllingAgency | Identifies the controlling agency for the message scenario. |
| MsgScenarioIdentification | The identifier for the message scenario. |
| MsgScenarioRelease | The message scenario's release number. |
| MsgScenarioVersion | The message scenario's version number. |
| MsgSequenceOfTransfers | Specifies the message's position in a sequence. |
| MessageCount | The number of message in the current Interchange or FunctionalGroup. |
| MessageIndex | The index of the current Message. |
| SegmentOptional | Specifies whether the segment is required or optional. |
| SegmentPath | Contains the path to the segment, including the groups that the segment is contained in. |
| SegmentSchemaPath | Contains a numeric representation of the path to the segment, using the indexes within the schema, such as \\4[3]\\5[6]\\7[8] . |
| SegmentTag | The tag of the segment, such as BGM , DTM , FTX , etc. |
| SegmentCount | The number of segments in the current Message. |
| SegmentIndex | The index of the current segment. |
| ValidateOnParse | When True , the component will validate any documents it parses. |
Method List
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
| Config | Sets or retrieves a configuration setting. |
| GenerateAck | Generates an ACK in response to the most recently parsed message. |
| GetElementValue | Returns the value of the element or component at the specified path. |
| LoadSchema | Loads schema information from a file or string data. |
| Parse | Parse the EDI document and fire parsing events. |
| Reset | Resets all properties to their default values. |
| SchemaCode | Defines a code value within a list of codes. |
| SchemaCodeList | Defines a list of codes. |
| SchemaComposite | Defines a composite element. |
| SchemaElement | Defines a simple element. |
| SchemaElementRef | Adds a reference to an element in a segment or composite element. |
| SchemaEnd | Ends a schema definition. |
| SchemaGroup | Defines a group of segments. |
| SchemaMessage | Defines a message. |
| SchemaSegment | Defines a segment. |
| SchemaSegmentRef | Adds a reference to a segment in a message or group. |
| SchemaStart | Starts a schema definition. |
| Validate | Validate the EDI document and warn about any errors encountered. |
Event List
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
| EndFunctionalGroup | Fires at the end of a functional group while parsing. |
| EndGroup | Fires at the end of a group while parsing a message. |
| EndInterchange | Fires at the end of an interchange while parsing. |
| EndMessage | Fires at the end of a message while parsing. |
| Error | Fires when an error occurs during message processing. Normally, the component fails with an error. |
| ResolveSchema | Fires whenever a new EDIFACT message is encountered and no schema is found for it. |
| Segment | Fires at the end of a Segment while parsing. |
| StartFunctionalGroup | Fires at the beginning of a functional group while parsing. |
| StartGroup | Fires at the beginning of a group while parsing a message. |
| StartInterchange | Fires at the beginning of an interchange while parsing. |
| StartMessage | Fires at the beginning of a message while parsing. |
| ValidateWarning | Fires to warn about validation errors. |
Config Settings
The following is a list of config settings for the component with short descriptions. Click on the links for further details.
| DelimitersFromUNA | A flag indicating if delimiters were read from UNA segment. |
| InputFormat | The format of the input document. |
| MaxValidationErrors | The maximum number of validation errors to return. |
AckType Property (EDIFACTReader Component)
Specifies the type of ACK that will be generated by GenerateAck .
Syntax
__property TedEDIFACTReaderAckTypes AckType = { read=FAckType, write=FSetAckType };
enum TedEDIFACTReaderAckTypes {
atFunctionalCONTRL=0,
atTechnicalCONTRL=1
};
Default Value
atFunctionalCONTRL
Remarks
This setting specifies the type of ACK that will be generated when GenerateAck is called. Options include:
| Functional CONTRL (atFunctionalCONTRL - 0) | A functional CONTRL message. If any syntax errors are encountered when parsing the message, the response will indicate the details of the issue. |
| Technical CONTRL (atTechnicalCONTRL - 1) | A technical CONTRL message, which confirms receipt of the message but not the results of parsing the message. |
This property is not available at design time.
Data Type
Integer
BuildDOM Property (EDIFACTReader Component)
Controls how much of the document will be stored during parsing.
Syntax
__property TedEDIFACTReaderBuildDOMs BuildDOM = { read=FBuildDOM, write=FSetBuildDOM };
enum TedEDIFACTReaderBuildDOMs {
bdEntireDocument=0,
bdInterchange=1,
bdMessage=2,
bdNone=3
};
Default Value
bdEntireDocument
Remarks
This property controls how much of the document will be stored in an internal model during parsing:
| 0 (bdEntireDocument) | The entire document. |
| 1 (bdInterchange) | The current interchange. |
| 2 (bdMessage) | The current message. |
| 3 (bdNone) | No data will be stored and only the events can be used to process the document. |
This property is not available at design time.
Data Type
Integer
ComponentDataType Property (EDIFACTReader Component)
The type of data contained in the element.
Syntax
__property String ComponentDataType = { read=FComponentDataType };
Default Value
""
Remarks
The type of data contained in the element.
Possible values for EDIFACT include:
| A | The element can only contain alphabetic characters. |
| AN | The element can contain any alphanumeric characters. |
| N | The element can only contain numeric characters. |
| composite | The element is a composite element containing multiple components. |
Possible values for X12 include:
| AN | The element can contain any alphanumeric characters. |
| ID | The element contains an identifier for a code value. |
| Nn | The element contains a numeric integer value. |
| R | The element contains a number with an optional decimal value. |
| DT | The element contains a string representing a date. |
| TM | The element contains a string representing a time. |
| B | The element contains binary data. |
| composite | The element is a composite element containing multiple components. |
This property is read-only and not available at design time.
Data Type
String
ComponentIsComposite Property (EDIFACTReader Component)
Specifies whether the element is a simple or composite element.
Syntax
__property bool ComponentIsComposite = { read=FComponentIsComposite };
Default Value
false
Remarks
Specifies whether the element is a simple or composite element. If true, the element is a composite element that contains other components.
This property is read-only and not available at design time.
Data Type
Boolean
ComponentMaxLen Property (EDIFACTReader Component)
For a simple element, this specifies the maximum length of the element according to the schema.
Syntax
__property int ComponentMaxLen = { read=FComponentMaxLen };
Default Value
0
Remarks
For a simple element, this specifies the maximum length of the element according to the schema.
This property is read-only and not available at design time.
Data Type
Integer
ComponentMinLen Property (EDIFACTReader Component)
For a simple element, this specifies the minimum length of the element according to the schema.
Syntax
__property int ComponentMinLen = { read=FComponentMinLen };
Default Value
0
Remarks
For a simple element, this specifies the minimum length of the element according to the schema.
This property is read-only and not available at design time.
Data Type
Integer
ComponentSchemaDesc Property (EDIFACTReader Component)
The description of the element as specified in the schema.
Syntax
__property String ComponentSchemaDesc = { read=FComponentSchemaDesc };
Default Value
""
Remarks
The description of the element as specified in the schema.
This property is read-only and not available at design time.
Data Type
String
ComponentSchemaName Property (EDIFACTReader Component)
The name of the element as specified in the schema.
Syntax
__property String ComponentSchemaName = { read=FComponentSchemaName };
Default Value
""
Remarks
The name of the element as specified in the schema.
This property is read-only and not available at design time.
Data Type
String
ComponentValue Property (EDIFACTReader Component)
If the element is a simple element, this property contains its value.
Syntax
__property String ComponentValue = { read=FComponentValue };
Default Value
""
Remarks
If the element is a simple element, this field contains its value.
This property is read-only and not available at design time.
Data Type
String
ComponentCount Property (EDIFACTReader Component)
The number of components in the current Element.
Syntax
__property int ComponentCount = { read=FComponentCount };
Default Value
0
Remarks
If the current Element is composite, this property contains the number of components within the element.
This property is read-only and not available at design time.
Data Type
Integer
ComponentIndex Property (EDIFACTReader Component)
The index of the current Component.
Syntax
__property int ComponentIndex = { read=FComponentIndex, write=FSetComponentIndex };
Default Value
1
Remarks
If the current Element is composite, this property is used to specify a Component within the element.
Note: When BuildDOM is set to bdentiredoc, after Parse is called the entire EDI document is parsed and stored in memory. You can then use InterchangeIndex, FunctionalGroupIndex, MessageIndex, SegmentIndex, ElementIndex and ComponentIndex to navigate to a specific Component within the parsed document.
This property is not available at design time.
Data Type
Integer
DelimiterComponent Property (EDIFACTReader Component)
The character used to separate the components in a composite element.
Syntax
__property String DelimiterComponent = { read=FDelimiterComponent, write=FSetDelimiterComponent };
Default Value
":"
Remarks
The character used to separate the components in a composite element.
This property is not available at design time.
Data Type
String
DelimiterDecimal Property (EDIFACTReader Component)
The character used to separate the integer portion of a numeric value from the fractional portion.
Syntax
__property String DelimiterDecimal = { read=FDelimiterDecimal, write=FSetDelimiterDecimal };
Default Value
"."
Remarks
The character used to separate the integer portion of a numeric value from the fractional portion.
This property is not available at design time.
Data Type
String
DelimiterElement Property (EDIFACTReader Component)
The delimiter used to separate elements within a segment.
Syntax
__property String DelimiterElement = { read=FDelimiterElement, write=FSetDelimiterElement };
Default Value
"+"
Remarks
The delimiter used to separate elements within a segment.
This property is not available at design time.
Data Type
String
DelimiterRelease Property (EDIFACTReader Component)
The character used to escape other characters within a property.
Syntax
__property String DelimiterRelease = { read=FDelimiterRelease, write=FSetDelimiterRelease };
Default Value
"?"
Remarks
The character used to escape other characters within a field. For example, with the default EDIFACT delimiters, "?+" should be considered "+" character that appears within a field, not an element separator.
This property is not available at design time.
Data Type
String
DelimiterRepetition Property (EDIFACTReader Component)
The character used to indicate a repeating element or component.
Syntax
__property String DelimiterRepetition = { read=FDelimiterRepetition, write=FSetDelimiterRepetition };
Default Value
"*(syntax 4) or empty(syntax 3)"
Remarks
The character used to indicate a repeating element or component.
This property is not available at design time.
Data Type
String
DelimiterSegment Property (EDIFACTReader Component)
The character used to terminate a segment.
Syntax
__property String DelimiterSegment = { read=FDelimiterSegment, write=FSetDelimiterSegment };
Default Value
"'"
Remarks
The character used to terminate a segment.
This property is not available at design time.
Data Type
String
ElementDataType Property (EDIFACTReader Component)
The type of data contained in the element.
Syntax
__property String ElementDataType = { read=FElementDataType };
Default Value
""
Remarks
The type of data contained in the element.
Possible values for EDIFACT include:
| A | The element can only contain alphabetic characters. |
| AN | The element can contain any alphanumeric characters. |
| N | The element can only contain numeric characters. |
| composite | The element is a composite element containing multiple components. |
Possible values for X12 include:
| AN | The element can contain any alphanumeric characters. |
| ID | The element contains an identifier for a code value. |
| Nn | The element contains a numeric integer value. |
| R | The element contains a number with an optional decimal value. |
| DT | The element contains a string representing a date. |
| TM | The element contains a string representing a time. |
| B | The element contains binary data. |
| composite | The element is a composite element containing multiple components. |
This property is read-only and not available at design time.
Data Type
String
ElementIsComposite Property (EDIFACTReader Component)
Specifies whether the element is a simple or composite element.
Syntax
__property bool ElementIsComposite = { read=FElementIsComposite };
Default Value
false
Remarks
Specifies whether the element is a simple or composite element. If true, the element is a composite element that contains other components.
This property is read-only and not available at design time.
Data Type
Boolean
ElementMaxLen Property (EDIFACTReader Component)
For a simple element, this specifies the maximum length of the element according to the schema.
Syntax
__property int ElementMaxLen = { read=FElementMaxLen };
Default Value
0
Remarks
For a simple element, this specifies the maximum length of the element according to the schema.
This property is read-only and not available at design time.
Data Type
Integer
ElementMinLen Property (EDIFACTReader Component)
For a simple element, this specifies the minimum length of the element according to the schema.
Syntax
__property int ElementMinLen = { read=FElementMinLen };
Default Value
0
Remarks
For a simple element, this specifies the minimum length of the element according to the schema.
This property is read-only and not available at design time.
Data Type
Integer
ElementSchemaDesc Property (EDIFACTReader Component)
The description of the element as specified in the schema.
Syntax
__property String ElementSchemaDesc = { read=FElementSchemaDesc };
Default Value
""
Remarks
The description of the element as specified in the schema.
This property is read-only and not available at design time.
Data Type
String
ElementSchemaName Property (EDIFACTReader Component)
The name of the element as specified in the schema.
Syntax
__property String ElementSchemaName = { read=FElementSchemaName };
Default Value
""
Remarks
The name of the element as specified in the schema.
This property is read-only and not available at design time.
Data Type
String
ElementValue Property (EDIFACTReader Component)
If the element is a simple element, this property contains its value.
Syntax
__property String ElementValue = { read=FElementValue };
Default Value
""
Remarks
If the element is a simple element, this field contains its value.
This property is read-only and not available at design time.
Data Type
String
ElementCount Property (EDIFACTReader Component)
The number of elements in the current Segment.
Syntax
__property int ElementCount = { read=FElementCount };
Default Value
0
Remarks
This property contains the number of elements in the current Segment.
This property is read-only and not available at design time.
Data Type
Integer
ElementIndex Property (EDIFACTReader Component)
The index of the current Element.
Syntax
__property int ElementIndex = { read=FElementIndex, write=FSetElementIndex };
Default Value
1
Remarks
This property is used to specify an Element within the current Segment.
Note: When BuildDOM is set to bdentiredoc, after Parse is called the entire EDI document is parsed and stored in memory. You can then use InterchangeIndex, FunctionalGroupIndex, MessageIndex, SegmentIndex and ElementIndex to navigate to specific Element within the parsed document.
This property is not available at design time.
Data Type
Integer
FGroupAppPassword Property (EDIFACTReader Component)
The application password as specified in the functional group header.
Syntax
__property String FGroupAppPassword = { read=FFGroupAppPassword, write=FSetFGroupAppPassword };
Default Value
""
Remarks
The application password as specified in the functional group header.
This is an alphanumeric field with a value up to 14 characters long.
This property is not available at design time.
Data Type
String
FGroupAppRecipientIdentification Property (EDIFACTReader Component)
The name or code of the intended recipient of the message group.
Syntax
__property String FGroupAppRecipientIdentification = { read=FFGroupAppRecipientIdentification, write=FSetFGroupAppRecipientIdentification };
Default Value
""
Remarks
The name or code of the intended recipient of the message group.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
FGroupAppRecipientIDQualifier Property (EDIFACTReader Component)
The qualifier for the recipient's identification (if it contains a code value).
Syntax
__property String FGroupAppRecipientIDQualifier = { read=FFGroupAppRecipientIDQualifier, write=FSetFGroupAppRecipientIDQualifier };
Default Value
""
Remarks
The qualifier for the recipient's identification (if it contains a code value).
This is an alphanumeric field with a value up to 4 characters long.
This property is not available at design time.
Data Type
String
FGroupAppSenderIdentification Property (EDIFACTReader Component)
The name or code of the message group's sender.
Syntax
__property String FGroupAppSenderIdentification = { read=FFGroupAppSenderIdentification, write=FSetFGroupAppSenderIdentification };
Default Value
""
Remarks
The name or code of the message group's sender.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
FGroupAppSenderIDQualifier Property (EDIFACTReader Component)
The qualifier for the sender's identification (if it contains a code value).
Syntax
__property String FGroupAppSenderIDQualifier = { read=FFGroupAppSenderIDQualifier, write=FSetFGroupAppSenderIDQualifier };
Default Value
""
Remarks
The qualifier for the sender's identification (if it contains a code value).
This is an alphanumeric field with a value up to 4 characters long.
This property is not available at design time.
Data Type
String
FGroupAssociationAssignedCode Property (EDIFACTReader Component)
The assigned code for the message type.
Syntax
__property String FGroupAssociationAssignedCode = { read=FFGroupAssociationAssignedCode, write=FSetFGroupAssociationAssignedCode };
Default Value
""
Remarks
The assigned code for the message type.
This is an alphanumeric field with a value up to 6 characters long.
This property is not available at design time.
Data Type
String
FGroupControllingAgency Property (EDIFACTReader Component)
A code value that indicates the agency responsible for maintaining the message specifications.
Syntax
__property String FGroupControllingAgency = { read=FFGroupControllingAgency, write=FSetFGroupControllingAgency };
Default Value
""
Remarks
A code value that indicates the agency responsible for maintaining the message specifications.
This is an alphanumeric field with a value up to 3 characters long.
This property is not available at design time.
Data Type
String
FGroupDate Property (EDIFACTReader Component)
The date that the group of messages was prepared.
Syntax
__property String FGroupDate = { read=FFGroupDate, write=FSetFGroupDate };
Default Value
""
Remarks
The date that the group of messages was prepared.
This property is not available at design time.
Data Type
String
FGroupGroupIdentification Property (EDIFACTReader Component)
The identification value for the functional group.
Syntax
__property String FGroupGroupIdentification = { read=FFGroupGroupIdentification, write=FSetFGroupGroupIdentification };
Default Value
""
Remarks
The identification value for the functional group.
This is an alphanumeric field with a value up to 6 characters long.
This property is not available at design time.
Data Type
String
FGroupMessageRelease Property (EDIFACTReader Component)
The message release number for the message type appearing in the message group.
Syntax
__property String FGroupMessageRelease = { read=FFGroupMessageRelease, write=FSetFGroupMessageRelease };
Default Value
""
Remarks
The message release number for the message type appearing in the message group.
This is an alphanumeric field with a value up to 3 characters long.
This property is not available at design time.
Data Type
String
FGroupMessageVersion Property (EDIFACTReader Component)
The message version number for message type appearing in the functional group.
Syntax
__property String FGroupMessageVersion = { read=FFGroupMessageVersion, write=FSetFGroupMessageVersion };
Default Value
""
Remarks
The message version number for message type appearing in the functional group.
This is an alphanumeric field with a value up to 3 characters long.
This property is not available at design time.
Data Type
String
FGroupReferenceNumber Property (EDIFACTReader Component)
The reference number for the functional group.
Syntax
__property String FGroupReferenceNumber = { read=FFGroupReferenceNumber, write=FSetFGroupReferenceNumber };
Default Value
""
Remarks
The reference number for the functional group.
This is an alphanumeric field with a value up to 14 characters long.
This property is not available at design time.
Data Type
String
FGroupTime Property (EDIFACTReader Component)
The time that the group of messages was prepared.
Syntax
__property String FGroupTime = { read=FFGroupTime, write=FSetFGroupTime };
Default Value
""
Remarks
The time that the group of messages was prepared.
This property is not available at design time.
Data Type
String
FunctionalGroupCount Property (EDIFACTReader Component)
The number of FunctionalGroups in the current Interchange.
Syntax
__property int FunctionalGroupCount = { read=FFunctionalGroupCount };
Default Value
0
Remarks
This property contains the number of FunctionalGroups in the current Interchange.
This property is read-only and not available at design time.
Data Type
Integer
FunctionalGroupIndex Property (EDIFACTReader Component)
The index of the current FunctionalGroup.
Syntax
__property int FunctionalGroupIndex = { read=FFunctionalGroupIndex, write=FSetFunctionalGroupIndex };
Default Value
1
Remarks
This property is used to specify a FunctionalGroup within the current Interchange.
Note: When BuildDOM is set to bdentiredoc, after Parse is called the entire EDI document is parsed and stored in memory, including all interchanges, and functional groups. You can then use InterchangeIndex and FunctionalGroupIndex to navigate to a specific FunctionalGroup within the parsed document.
This property is not available at design time.
Data Type
Integer
Group Property (EDIFACTReader Component)
Specifies the group to load segments from.
Syntax
__property String Group = { read=FGroup, write=FSetGroup };
Default Value
""
Remarks
When this property is set, only segments from the specified group and iteration will be available through the Segment properties.
A path for a group consists of the name of the group followed by an index indicating the iteration, like this:
reader.Group = "CPSGroup[2]";
If the group is nested inside of another group, the parent and child are connected by a ".":
reader.Group = "CPSGroup[2].LINGroup[2]";
That can be repeated if a group is nested more than one level deep.
This property is not available at design time.
Data Type
String
InputData Property (EDIFACTReader Component)
The EDI message, specified as a string.
Syntax
__property String InputData = { read=FInputData, write=FSetInputData };
Default Value
""
Remarks
Set this property to specify the input EDI message as a string. The message can then be parsed with Parse.
This property is not available at design time.
Data Type
String
InputFile Property (EDIFACTReader Component)
The file containing the EDI message.
Syntax
__property String InputFile = { read=FInputFile, write=FSetInputFile };
Default Value
""
Remarks
Set this property to specify a file to read the input EDI message from. The message can then be parsed with Parse.
This property is not available at design time.
Data Type
String
InterchangeAckRequest Property (EDIFACTReader Component)
If this property is '1', an ACK was requested in response to this interchange.
Syntax
__property String InterchangeAckRequest = { read=FInterchangeAckRequest, write=FSetInterchangeAckRequest };
Default Value
""
Remarks
If this field is '1', an ACK was requested in response to this interchange.
This property is not available at design time.
Data Type
String
InterchangeAgreementIdentifier Property (EDIFACTReader Component)
The identifier for the communication agreement used by the interchange.
Syntax
__property String InterchangeAgreementIdentifier = { read=FInterchangeAgreementIdentifier, write=FSetInterchangeAgreementIdentifier };
Default Value
""
Remarks
The identifier for the communication agreement used by the interchange.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeApplicationReference Property (EDIFACTReader Component)
If the interchange contains only one type of message, this can contain the identifier for the type of message.
Syntax
__property String InterchangeApplicationReference = { read=FInterchangeApplicationReference, write=FSetInterchangeApplicationReference };
Default Value
""
Remarks
If the interchange contains only one type of message, this can contain the identifier for the type of message.
This is an alphanumeric field with a value up to 14 characters long.
This property is not available at design time.
Data Type
String
InterchangeCharacterEncoding Property (EDIFACTReader Component)
The character encoding used by the interchange.
Syntax
__property String InterchangeCharacterEncoding = { read=FInterchangeCharacterEncoding, write=FSetInterchangeCharacterEncoding };
Default Value
""
Remarks
The character encoding used by the interchange.
This is an alphanumeric field with a value up to 3 characters long, and is only present for EDIFACT syntax 4.
This property is not available at design time.
Data Type
String
InterchangeCodeListVersionNumber Property (EDIFACTReader Component)
The identifier for the communication agreement used by the interchange.
Syntax
__property String InterchangeCodeListVersionNumber = { read=FInterchangeCodeListVersionNumber, write=FSetInterchangeCodeListVersionNumber };
Default Value
""
Remarks
The identifier for the communication agreement used by the interchange.
This is an alphanumeric field with a value up to 6 characters long.
This property is not available at design time.
Data Type
String
InterchangeDate Property (EDIFACTReader Component)
The date that the interchange was prepared.
Syntax
__property String InterchangeDate = { read=FInterchangeDate, write=FSetInterchangeDate };
Default Value
""
Remarks
The date that the interchange was prepared.
This property is not available at design time.
Data Type
String
InterchangeProcessingPriorityCode Property (EDIFACTReader Component)
A 1-character code that requests a specific processing priority for the interchange.
Syntax
__property String InterchangeProcessingPriorityCode = { read=FInterchangeProcessingPriorityCode, write=FSetInterchangeProcessingPriorityCode };
Default Value
""
Remarks
A 1-character code that requests a specific processing priority for the interchange.
This property is not available at design time.
Data Type
String
InterchangeRecipientIdentification Property (EDIFACTReader Component)
The identification for the interchange's recipient.
Syntax
__property String InterchangeRecipientIdentification = { read=FInterchangeRecipientIdentification, write=FSetInterchangeRecipientIdentification };
Default Value
""
Remarks
The identification for the interchange's recipient.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeRecipientIDQualifier Property (EDIFACTReader Component)
The qualifier for the recipient identification code.
Syntax
__property String InterchangeRecipientIDQualifier = { read=FInterchangeRecipientIDQualifier, write=FSetInterchangeRecipientIDQualifier };
Default Value
""
Remarks
The qualifier for the recipient identification code.
This is an alphanumeric field with a value up to 4 characters long.
This property is not available at design time.
Data Type
String
InterchangeRecipientInternalIdentification Property (EDIFACTReader Component)
More specific recipient identification for internal use.
Syntax
__property String InterchangeRecipientInternalIdentification = { read=FInterchangeRecipientInternalIdentification, write=FSetInterchangeRecipientInternalIdentification };
Default Value
""
Remarks
More specific recipient identification for internal use.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeRecipientInternalSubIdentification Property (EDIFACTReader Component)
A sub-identification string for the receiver for internal use.
Syntax
__property String InterchangeRecipientInternalSubIdentification = { read=FInterchangeRecipientInternalSubIdentification, write=FSetInterchangeRecipientInternalSubIdentification };
Default Value
""
Remarks
A sub-identification string for the receiver for internal use.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeRecipientPassword Property (EDIFACTReader Component)
A password to be verified by the recipient, such as a system or network password.
Syntax
__property String InterchangeRecipientPassword = { read=FInterchangeRecipientPassword, write=FSetInterchangeRecipientPassword };
Default Value
""
Remarks
A password to be verified by the recipient, such as a system or network password.
This is an alphanumeric field with a value up to 14 characters long.
This property is not available at design time.
Data Type
String
InterchangeRecipientPasswordQualifier Property (EDIFACTReader Component)
A qualifier for the recipient password.
Syntax
__property String InterchangeRecipientPasswordQualifier = { read=FInterchangeRecipientPasswordQualifier, write=FSetInterchangeRecipientPasswordQualifier };
Default Value
""
Remarks
A qualifier for the recipient password.
This is an alphanumeric field with a value up to 2 characters long.
This property is not available at design time.
Data Type
String
InterchangeReferenceNumber Property (EDIFACTReader Component)
A reference number for the interchange.
Syntax
__property String InterchangeReferenceNumber = { read=FInterchangeReferenceNumber, write=FSetInterchangeReferenceNumber };
Default Value
""
Remarks
A reference number for the interchange.
This is an alphanumeric field with a value up to 14 characters long.
This property is not available at design time.
Data Type
String
InterchangeSenderIdentification Property (EDIFACTReader Component)
The identification for the interchange's sender.
Syntax
__property String InterchangeSenderIdentification = { read=FInterchangeSenderIdentification, write=FSetInterchangeSenderIdentification };
Default Value
""
Remarks
The identification for the interchange's sender.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeSenderIDQualifier Property (EDIFACTReader Component)
The qualifier for the sender identification code.
Syntax
__property String InterchangeSenderIDQualifier = { read=FInterchangeSenderIDQualifier, write=FSetInterchangeSenderIDQualifier };
Default Value
""
Remarks
The qualifier for the sender identification code.
This is an alphanumeric field with a value up to 4 characters long.
This property is not available at design time.
Data Type
String
InterchangeSenderInternalIdentification Property (EDIFACTReader Component)
More specific sender identification for internal use.
Syntax
__property String InterchangeSenderInternalIdentification = { read=FInterchangeSenderInternalIdentification, write=FSetInterchangeSenderInternalIdentification };
Default Value
""
Remarks
More specific sender identification for internal use.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeSenderInternalSubIdentification Property (EDIFACTReader Component)
A sub-identification string for the sender for internal use.
Syntax
__property String InterchangeSenderInternalSubIdentification = { read=FInterchangeSenderInternalSubIdentification, write=FSetInterchangeSenderInternalSubIdentification };
Default Value
""
Remarks
A sub-identification string for the sender for internal use.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
InterchangeSyntaxIdentifier Property (EDIFACTReader Component)
A identifier specifying the controlling agency and valid character set.
Syntax
__property String InterchangeSyntaxIdentifier = { read=FInterchangeSyntaxIdentifier, write=FSetInterchangeSyntaxIdentifier };
Default Value
""
Remarks
A identifier specifying the controlling agency and valid character set.
This is an alphanumeric field with a value up to 4 characters long.
This property is not available at design time.
Data Type
String
InterchangeSyntaxVersionNumber Property (EDIFACTReader Component)
A 1-character numeric value indicating the syntax version.
Syntax
__property String InterchangeSyntaxVersionNumber = { read=FInterchangeSyntaxVersionNumber, write=FSetInterchangeSyntaxVersionNumber };
Default Value
""
Remarks
A 1-character numeric value indicating the syntax version.
This property is not available at design time.
Data Type
String
InterchangeTestIndicator Property (EDIFACTReader Component)
If this property is '1', the interchange is a test interchange.
Syntax
__property String InterchangeTestIndicator = { read=FInterchangeTestIndicator, write=FSetInterchangeTestIndicator };
Default Value
""
Remarks
If this field is '1', the interchange is a test interchange.
This property is not available at design time.
Data Type
String
InterchangeTime Property (EDIFACTReader Component)
The time that the interchange was prepared.
Syntax
__property String InterchangeTime = { read=FInterchangeTime, write=FSetInterchangeTime };
Default Value
""
Remarks
The time that the interchange was prepared.
This property is not available at design time.
Data Type
String
InterchangeCount Property (EDIFACTReader Component)
The number of Interchanges in the document.
Syntax
__property int InterchangeCount = { read=FInterchangeCount };
Default Value
0
Remarks
This property contains the number of Interchanges in the current document.
This property is read-only and not available at design time.
Data Type
Integer
InterchangeIndex Property (EDIFACTReader Component)
The index of the current Interchange.
Syntax
__property int InterchangeIndex = { read=FInterchangeIndex, write=FSetInterchangeIndex };
Default Value
1
Remarks
This property is used to specify an Interchange within the document.
Note: When BuildDOM is set to bdentiredoc, after Parse is called the entire EDI document is parsed and stored in memory, including all interchanges. You can then use InterchangeIndex to navigate to specific Interchange within the parsed document.
This property is not available at design time.
Data Type
Integer
MsgAssociationAssignedCode Property (EDIFACTReader Component)
A code assigned to the message by the controlling organization.
Syntax
__property String MsgAssociationAssignedCode = { read=FMsgAssociationAssignedCode, write=FSetMsgAssociationAssignedCode };
Default Value
""
Remarks
A code assigned to the message by the controlling organization.
This is an alphanumeric field with a value up to 6 characters long.
This property is not available at design time.
Data Type
String
MsgCodeListVersionNumber Property (EDIFACTReader Component)
The version number of the code list that should be used.
Syntax
__property String MsgCodeListVersionNumber = { read=FMsgCodeListVersionNumber, write=FSetMsgCodeListVersionNumber };
Default Value
""
Remarks
The version number of the code list that should be used.
This is an alphanumeric field with a value up to 6 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgCommonAccessReference Property (EDIFACTReader Component)
A reference value to associate this message with related messages.
Syntax
__property String MsgCommonAccessReference = { read=FMsgCommonAccessReference, write=FSetMsgCommonAccessReference };
Default Value
""
Remarks
A reference value to associate this message with related messages.
This is an alphanumeric field with a value up to 35 characters long.
This property is not available at design time.
Data Type
String
MsgControllingAgency Property (EDIFACTReader Component)
A code that identifies the controlling agency for this message type.
Syntax
__property String MsgControllingAgency = { read=FMsgControllingAgency, write=FSetMsgControllingAgency };
Default Value
""
Remarks
A code that identifies the controlling agency for this message type.
This is an alphanumeric field with a value up to 3 characters long.
This property is not available at design time.
Data Type
String
MsgFirstAndLastTransfer Property (EDIFACTReader Component)
A single-character property that indicates the first and last messages in a related set.
Syntax
__property String MsgFirstAndLastTransfer = { read=FMsgFirstAndLastTransfer, write=FSetMsgFirstAndLastTransfer };
Default Value
""
Remarks
A single-character field that indicates the first and last messages in a related set.
This property is not available at design time.
Data Type
String
MsgMessageImplControllingAgency Property (EDIFACTReader Component)
A code value that identifies the controlling agency for the message implementation.
Syntax
__property String MsgMessageImplControllingAgency = { read=FMsgMessageImplControllingAgency, write=FSetMsgMessageImplControllingAgency };
Default Value
""
Remarks
A code value that identifies the controlling agency for the message implementation.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageImplIdentification Property (EDIFACTReader Component)
Identifies the message implementation.
Syntax
__property String MsgMessageImplIdentification = { read=FMsgMessageImplIdentification, write=FSetMsgMessageImplIdentification };
Default Value
""
Remarks
Identifies the message implementation.
This is an alphanumeric field with a value up to 14 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageImplRelease Property (EDIFACTReader Component)
Identifies the release number for the message implementation.
Syntax
__property String MsgMessageImplRelease = { read=FMsgMessageImplRelease, write=FSetMsgMessageImplRelease };
Default Value
""
Remarks
Identifies the release number for the message implementation.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageImplVersion Property (EDIFACTReader Component)
Identifies the version number for the message implementation.
Syntax
__property String MsgMessageImplVersion = { read=FMsgMessageImplVersion, write=FSetMsgMessageImplVersion };
Default Value
""
Remarks
Identifies the version number for the message implementation.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageRelease Property (EDIFACTReader Component)
Identifies the release number for the message.
Syntax
__property String MsgMessageRelease = { read=FMsgMessageRelease, write=FSetMsgMessageRelease };
Default Value
""
Remarks
Identifies the release number for the message.
This is an alphanumeric field with a value up to 3 characters long.
This property is not available at design time.
Data Type
String
MsgMessageSubsetControllingAgency Property (EDIFACTReader Component)
A code value that identifies the controlling agency for the message subset.
Syntax
__property String MsgMessageSubsetControllingAgency = { read=FMsgMessageSubsetControllingAgency, write=FSetMsgMessageSubsetControllingAgency };
Default Value
""
Remarks
A code value that identifies the controlling agency for the message subset.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageSubsetIdentification Property (EDIFACTReader Component)
Identifies the message subset.
Syntax
__property String MsgMessageSubsetIdentification = { read=FMsgMessageSubsetIdentification, write=FSetMsgMessageSubsetIdentification };
Default Value
""
Remarks
Identifies the message subset.
This is an alphanumeric field with a value up to 14 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageSubsetRelease Property (EDIFACTReader Component)
Identifies the release number for the message subset.
Syntax
__property String MsgMessageSubsetRelease = { read=FMsgMessageSubsetRelease, write=FSetMsgMessageSubsetRelease };
Default Value
""
Remarks
Identifies the release number for the message subset.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageSubsetVersion Property (EDIFACTReader Component)
Identifies the version number for the message subset.
Syntax
__property String MsgMessageSubsetVersion = { read=FMsgMessageSubsetVersion, write=FSetMsgMessageSubsetVersion };
Default Value
""
Remarks
Identifies the version number for the message subset.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageType Property (EDIFACTReader Component)
A code identifying the message's type.
Syntax
__property String MsgMessageType = { read=FMsgMessageType, write=FSetMsgMessageType };
Default Value
""
Remarks
A code identifying the message's type.
This is an alphanumeric field with a value up to 6 characters long.
This property is not available at design time.
Data Type
String
MsgMessageTypeSubFunctionIdentification Property (EDIFACTReader Component)
A code identifying the sub-function of the message's type.
Syntax
__property String MsgMessageTypeSubFunctionIdentification = { read=FMsgMessageTypeSubFunctionIdentification, write=FSetMsgMessageTypeSubFunctionIdentification };
Default Value
""
Remarks
A code identifying the sub-function of the message's type.
This is an alphanumeric field with a value up to 6 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgMessageVersion Property (EDIFACTReader Component)
Identifies the version number for the message.
Syntax
__property String MsgMessageVersion = { read=FMsgMessageVersion, write=FSetMsgMessageVersion };
Default Value
""
Remarks
Identifies the version number for the message.
This is an alphanumeric field with a value up to 3 characters long.
This property is not available at design time.
Data Type
String
MsgReferenceNumber Property (EDIFACTReader Component)
A unique reference number for the message.
Syntax
__property String MsgReferenceNumber = { read=FMsgReferenceNumber, write=FSetMsgReferenceNumber };
Default Value
""
Remarks
A unique reference number for the message.
This is an alphanumeric field with a value up to 14 characters long.
This property is not available at design time.
Data Type
String
MsgScenarioControllingAgency Property (EDIFACTReader Component)
Identifies the controlling agency for the message scenario.
Syntax
__property String MsgScenarioControllingAgency = { read=FMsgScenarioControllingAgency, write=FSetMsgScenarioControllingAgency };
Default Value
""
Remarks
Identifies the controlling agency for the message scenario.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgScenarioIdentification Property (EDIFACTReader Component)
The identifier for the message scenario.
Syntax
__property String MsgScenarioIdentification = { read=FMsgScenarioIdentification, write=FSetMsgScenarioIdentification };
Default Value
""
Remarks
The identifier for the message scenario.
This is an alphanumeric field with a value up to 14 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgScenarioRelease Property (EDIFACTReader Component)
The message scenario's release number.
Syntax
__property String MsgScenarioRelease = { read=FMsgScenarioRelease, write=FSetMsgScenarioRelease };
Default Value
""
Remarks
The message scenario's release number.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgScenarioVersion Property (EDIFACTReader Component)
The message scenario's version number.
Syntax
__property String MsgScenarioVersion = { read=FMsgScenarioVersion, write=FSetMsgScenarioVersion };
Default Value
""
Remarks
The message scenario's version number.
This is an alphanumeric field with a value up to 3 characters long. This field only appears in EDIFACT syntax version 4.
This property is not available at design time.
Data Type
String
MsgSequenceOfTransfers Property (EDIFACTReader Component)
Specifies the message's position in a sequence.
Syntax
__property String MsgSequenceOfTransfers = { read=FMsgSequenceOfTransfers, write=FSetMsgSequenceOfTransfers };
Default Value
""
Remarks
Specifies the message's position in a sequence.
This is an alphanumeric field with a value up to 2 characters long.
This property is not available at design time.
Data Type
String
MessageCount Property (EDIFACTReader Component)
The number of message in the current Interchange or FunctionalGroup.
Syntax
__property int MessageCount = { read=FMessageCount };
Default Value
0
Remarks
This property contains the number of messages in the current Interchange or FunctionalGroup.
This property is read-only and not available at design time.
Data Type
Integer
MessageIndex Property (EDIFACTReader Component)
The index of the current Message.
Syntax
__property int MessageIndex = { read=FMessageIndex, write=FSetMessageIndex };
Default Value
1
Remarks
This property is used to specify a Message within the current Interchange or FunctionalGroup.
Note: When BuildDOM is set to bdentiredoc, after Parse is called the entire EDI document is parsed and stored in memory, including all interchanges, functional groups, and messages. You can then use InterchangeIndex, FunctionalGroupIndex and MessageIndex to navigate to a specific Message within the parsed document.
This property is not available at design time.
Data Type
Integer
SegmentOptional Property (EDIFACTReader Component)
Specifies whether the segment is required or optional.
Syntax
__property bool SegmentOptional = { read=FSegmentOptional };
Default Value
False
Remarks
Specifies whether the segment is required or optional. If true, the element is optional.
This property is read-only and not available at design time.
Data Type
Boolean
SegmentPath Property (EDIFACTReader Component)
Contains the path to the segment, including the groups that the segment is contained in.
Syntax
__property String SegmentPath = { read=FSegmentPath };
Default Value
""
Remarks
Contains the path to the segment, including the groups that the segment is contained in.
This property is read-only and not available at design time.
Data Type
String
SegmentSchemaPath Property (EDIFACTReader Component)
Contains a numeric representation of the path to the segment, using the indexes within the schema, such as \\4[3]\\5[6]\\7[8] .
Syntax
__property String SegmentSchemaPath = { read=FSegmentSchemaPath };
Default Value
""
Remarks
Contains a numeric representation of the path to the segment, using the indexes within the schema, such as \4[3]\5[6]\7[8].
This property is read-only and not available at design time.
Data Type
String
SegmentTag Property (EDIFACTReader Component)
The tag of the segment, such as BGM , DTM , FTX , etc.
Syntax
__property String SegmentTag = { read=FSegmentTag };
Default Value
""
Remarks
The tag of the segment, such as BGM, DTM, FTX, etc.
This property is read-only and not available at design time.
Data Type
String
SegmentCount Property (EDIFACTReader Component)
The number of segments in the current Message.
Syntax
__property int SegmentCount = { read=FSegmentCount };
Default Value
0
Remarks
This property contains the number of elements in the current Message.
This property is read-only and not available at design time.
Data Type
Integer
SegmentIndex Property (EDIFACTReader Component)
The index of the current segment.
Syntax
__property int SegmentIndex = { read=FSegmentIndex, write=FSetSegmentIndex };
Default Value
1
Remarks
This property is used to specify a Segment within the current Message.
Note: When BuildDOM is set to bdentiredoc, after Parse is called the entire EDI document is parsed and stored in memory. You can then use InterchangeIndex, FunctionalGroupIndex, MessageIndex and SegmentIndex to navigate to specific Segment within the parsed document.
This property is not available at design time.
Data Type
Integer
ValidateOnParse Property (EDIFACTReader Component)
When True , the component will validate any documents it parses.
Syntax
__property bool ValidateOnParse = { read=FValidateOnParse, write=FSetValidateOnParse };
Default Value
False
Remarks
When this property is set to True, the component will perform validation on the document when Parse is called. The ValidateWarning event will fire for each error it encounters.
This property is not available at design time.
Data Type
Boolean
Config Method (EDIFACTReader Component)
Sets or retrieves a configuration setting.
Syntax
String __fastcall Config(String ConfigurationString);
Remarks
Config is a generic method available in every component. It is used to set and retrieve configuration settings for the component.
These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.
To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).
To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.
GenerateAck Method (EDIFACTReader Component)
Generates an ACK in response to the most recently parsed message.
Syntax
String __fastcall GenerateAck();
Remarks
After parsing a message, call this method to generate an ACK that you can send back in response. The type of ACK generated can be controlled by setting the AckType property.
GetElementValue Method (EDIFACTReader Component)
Returns the value of the element or component at the specified path.
Syntax
String __fastcall GetElementValue(String Path);
Remarks
This method returns the value of the element at the specified path. The path starts at the current Message and consists of groups (with indexes to indicate the iteration), a segment tag, and 1-2 indexes to indicate the element or component.
For a simple element the path should include the path to a specific iteration of a group (as in the Group property), followed by a segment tag and an index for the element position within the segment, each separated by a ".":
reader.GetElementValue("CPSGroup[2].LINGroup[2].LIN.1");
When selecting a component of a composite element, the component index should be added after the element index:
reader.GetElementValue("CPSGroup[2].LINGroup[2].QTY.1.2");
LoadSchema Method (EDIFACTReader Component)
Loads schema information from a file or string data.
Syntax
void __fastcall LoadSchema(String fileOrData, String messageName);
Remarks
This method loads schema information for use when parsing, validating, and translating messages.
The FileOrData parameter can be set to the path of a file containing schema data, or can be set to the contents of a schema file directly.
MessageName can be set to the name of a specific message to load only the specified message's schema information. If left empty or set to "*", the entire schema will be loaded.
Parse Method (EDIFACTReader Component)
Parse the EDI document and fire parsing events.
Syntax
void __fastcall Parse();
Remarks
This method parses the input EDI document, firing the following events as it parses:
- StartInterchange
- StartFunctionalGroup
- ResolveSchema
- StartMessage
- StartGroup
- Segment
- EndGroup
- EndMessage
- EndFunctionalGroup
- EndInterchange
When multiple input sources are specified, only the highest-priority input will be used, in the following order:
Reset Method (EDIFACTReader Component)
Resets all properties to their default values.
Syntax
void __fastcall Reset();
Remarks
This method resets all properties of the component to their default values as specified in the property definitions.
SchemaCode Method (EDIFACTReader Component)
Defines a code value within a list of codes.
Syntax
void __fastcall SchemaCode(String SchemaId, String CodeListId, String Value, String Description);
Remarks
Creates a schema definition for a code value within a particular list of codes.
This method can be used when defining a schema instead of loading one from a file.
SchemaCodeList Method (EDIFACTReader Component)
Defines a list of codes.
Syntax
void __fastcall SchemaCodeList(String SchemaId, String CodeListId, String Description);
Remarks
Creates a schema definition for an empty list of codes. SchemaCode can be used to add code values to the list.
This method can be used when defining a schema instead of loading one from a file.
SchemaComposite Method (EDIFACTReader Component)
Defines a composite element.
Syntax
void __fastcall SchemaComposite(String SchemaId, String CompositeId, String Description);
Remarks
Creates a schema definition for a composite element. SchemaElementRef can be used to add components to the element.
This method can be used when defining a schema instead of loading one from a file.
SchemaElement Method (EDIFACTReader Component)
Defines a simple element.
Syntax
void __fastcall SchemaElement(String SchemaId, String ElementId, String DataType, int MinLength, int MaxLength, String CodeId, String Description);
Remarks
Creates a schema definition for a simple element.
This method can be used when defining a schema instead of loading one from a file.
SchemaElementRef Method (EDIFACTReader Component)
Adds a reference to an element in a segment or composite element.
Syntax
void __fastcall SchemaElementRef(String SchemaId, String ParentId, String ElementId, String RefId, bool Required, int MaxCount);
Remarks
Adds a reference to an element to the specified parent, which can be the most recently defined segment or composite element.
This method can be used when defining a schema instead of loading one from a file.
SchemaEnd Method (EDIFACTReader Component)
Ends a schema definition.
Syntax
void __fastcall SchemaEnd();
Remarks
Ends a schema definition when a schema is being defined manually instead of loaded from a file.
SchemaGroup Method (EDIFACTReader Component)
Defines a group of segments.
Syntax
void __fastcall SchemaGroup(String SchemaId, String GroupPath, String GroupId, bool Required, int MaxCount);
Remarks
Creates a schema definition for a group of segments. SchemaSegmentRef can be used to add references to defined segments.
This method can be used when defining a schema instead of loading one from a file.
SchemaMessage Method (EDIFACTReader Component)
Defines a message.
Syntax
void __fastcall SchemaMessage(String SchemaId, String MessageId, String Description);
Remarks
Creates a schema definition for a message. SchemaSegmentRef and SchemaGroup can be used to add segment references and groups to the message.
This method can be used when defining a schema instead of loading one from a file.
SchemaSegment Method (EDIFACTReader Component)
Defines a segment.
Syntax
void __fastcall SchemaSegment(String SchemaId, String SegmentId, String Description);
Remarks
Creates a schema definition for a segment. SchemaElementRef can be used to add component references to the segment.
This method can be used when defining a schema instead of loading one from a file.
SchemaSegmentRef Method (EDIFACTReader Component)
Adds a reference to a segment in a message or group.
Syntax
void __fastcall SchemaSegmentRef(String SchemaId, String SegmentPath, String SegmentId, bool Required, int MaxCount);
Remarks
Adds a reference to a segment to the specified path.
This method can be used when defining a schema instead of loading one from a file.
SchemaStart Method (EDIFACTReader Component)
Starts a schema definition.
Syntax
void __fastcall SchemaStart(String SchemaId);
Remarks
Starts manually defining a schema, as an alternative to loading one from a file.
Validate Method (EDIFACTReader Component)
Validate the EDI document and warn about any errors encountered.
Syntax
void __fastcall Validate();
Remarks
This method parses the input EDI document, firing the ValidateWarning event for any non-blocking errors it encounters.
EndFunctionalGroup Event (EDIFACTReader Component)
Fires at the end of a functional group while parsing.
Syntax
typedef struct {
String Tag;
int MessageCount;
String ReferenceNumber;
} TedEDIFACTReaderEndFunctionalGroupEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderEndFunctionalGroupEvent)(System::TObject* Sender, TedEDIFACTReaderEndFunctionalGroupEventParams *e);
__property TedEDIFACTReaderEndFunctionalGroupEvent OnEndFunctionalGroup = { read=FOnEndFunctionalGroup, write=FOnEndFunctionalGroup };
Remarks
This event fires when the component encounters the end of a functional group while parsing a document.
EndGroup Event (EDIFACTReader Component)
Fires at the end of a group while parsing a message.
Syntax
typedef struct {
String Name;
int SchemaIndex;
} TedEDIFACTReaderEndGroupEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderEndGroupEvent)(System::TObject* Sender, TedEDIFACTReaderEndGroupEventParams *e);
__property TedEDIFACTReaderEndGroupEvent OnEndGroup = { read=FOnEndGroup, write=FOnEndGroup };
Remarks
This event fires when the component encounters the end of a group while parsing a message.
EndInterchange Event (EDIFACTReader Component)
Fires at the end of an interchange while parsing.
Syntax
typedef struct {
String Tag;
int GroupCount;
String ReferenceNumber;
} TedEDIFACTReaderEndInterchangeEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderEndInterchangeEvent)(System::TObject* Sender, TedEDIFACTReaderEndInterchangeEventParams *e);
__property TedEDIFACTReaderEndInterchangeEvent OnEndInterchange = { read=FOnEndInterchange, write=FOnEndInterchange };
Remarks
This event fires at the end of an interchange while parsing a document.
EndMessage Event (EDIFACTReader Component)
Fires at the end of a message while parsing.
Syntax
typedef struct {
String Tag;
int SegmentCount;
String ReferenceNumber;
} TedEDIFACTReaderEndMessageEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderEndMessageEvent)(System::TObject* Sender, TedEDIFACTReaderEndMessageEventParams *e);
__property TedEDIFACTReaderEndMessageEvent OnEndMessage = { read=FOnEndMessage, write=FOnEndMessage };
Remarks
This event fires when the component encounters the end of a message while parsing a document.
Error Event (EDIFACTReader Component)
Fires when an error occurs during message processing. Normally, the component fails with an error.
Syntax
typedef struct {
int ErrorCode;
String Description;
} TedEDIFACTReaderErrorEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderErrorEvent)(System::TObject* Sender, TedEDIFACTReaderErrorEventParams *e);
__property TedEDIFACTReaderErrorEvent OnError = { read=FOnError, write=FOnError };
Remarks
The Error event is fired in case of exceptional conditions during message processing. Normally, the component raises an exception.
ConnectionId is the associated client Id, ErrorCode contains an error code, and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to the Error Codes section.
ResolveSchema Event (EDIFACTReader Component)
Fires whenever a new EDIFACT message is encountered and no schema is found for it.
Syntax
typedef struct {
String MessageVersion;
String MessageType;
} TedEDIFACTReaderResolveSchemaEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderResolveSchemaEvent)(System::TObject* Sender, TedEDIFACTReaderResolveSchemaEventParams *e);
__property TedEDIFACTReaderResolveSchemaEvent OnResolveSchema = { read=FOnResolveSchema, write=FOnResolveSchema };
Remarks
This method fires when the component encounters an EDIFACT message it has not loaded a schema for. The parameters of the event can be used to locate the correct schema and load it with LoadSchema.
MessageVersion - The EDIFACT version of the message, such as D97A.
MessageType - The type of message, such as INVOIC.
After the event fires, if the component still doesn't have a matching schema, then it will attempt schema-less parsing of the EDIFACT message.
Segment Event (EDIFACTReader Component)
Fires at the end of a Segment while parsing.
Syntax
typedef struct {
String Tag;
String SchemaPath;
bool Optional;
int ElementCount;
int SchemaIndex;
int SegmentIndex;
int MaxCount;
String Path;
} TedEDIFACTReaderSegmentEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderSegmentEvent)(System::TObject* Sender, TedEDIFACTReaderSegmentEventParams *e);
__property TedEDIFACTReaderSegmentEvent OnSegment = { read=FOnSegment, write=FOnSegment };
Remarks
Fires at the end of a Segment while parsing a document
StartFunctionalGroup Event (EDIFACTReader Component)
Fires at the beginning of a functional group while parsing.
Syntax
typedef struct {
String Tag;
String AppSenderIdentification;
String AppRecipientIdentification;
String DateTime;
String ReferenceNumber;
} TedEDIFACTReaderStartFunctionalGroupEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderStartFunctionalGroupEvent)(System::TObject* Sender, TedEDIFACTReaderStartFunctionalGroupEventParams *e);
__property TedEDIFACTReaderStartFunctionalGroupEvent OnStartFunctionalGroup = { read=FOnStartFunctionalGroup, write=FOnStartFunctionalGroup };
Remarks
This event fires when the component encounters the start of a functional group while parsing a document.
StartGroup Event (EDIFACTReader Component)
Fires at the beginning of a group while parsing a message.
Syntax
typedef struct {
String Name;
int SchemaIndex;
int MaxCount;
String Path;
} TedEDIFACTReaderStartGroupEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderStartGroupEvent)(System::TObject* Sender, TedEDIFACTReaderStartGroupEventParams *e);
__property TedEDIFACTReaderStartGroupEvent OnStartGroup = { read=FOnStartGroup, write=FOnStartGroup };
Remarks
This event fires when the component encounters the start of a group while parsing a message.
StartInterchange Event (EDIFACTReader Component)
Fires at the beginning of an interchange while parsing.
Syntax
typedef struct {
String Tag;
String SyntaxIdentifier;
String SyntaxVersion;
String SenderIdentification;
String RecipientIdentification;
String DateTime;
String ReferenceNumber;
} TedEDIFACTReaderStartInterchangeEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderStartInterchangeEvent)(System::TObject* Sender, TedEDIFACTReaderStartInterchangeEventParams *e);
__property TedEDIFACTReaderStartInterchangeEvent OnStartInterchange = { read=FOnStartInterchange, write=FOnStartInterchange };
Remarks
This event fires at the beginning of an interchange while parsing a document.
StartMessage Event (EDIFACTReader Component)
Fires at the beginning of a message while parsing.
Syntax
typedef struct {
String Tag;
String MessageRelease;
String MessageType;
String ReferenceNumber;
bool SchemaLoaded;
} TedEDIFACTReaderStartMessageEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderStartMessageEvent)(System::TObject* Sender, TedEDIFACTReaderStartMessageEventParams *e);
__property TedEDIFACTReaderStartMessageEvent OnStartMessage = { read=FOnStartMessage, write=FOnStartMessage };
Remarks
This event fires when the component encounters the start of a message while parsing a document.
ValidateWarning Event (EDIFACTReader Component)
Fires to warn about validation errors.
Syntax
typedef struct {
__int64 Position;
int Line;
int Column;
String ErrorCode;
String ErrorMessage;
int ErrorType;
} TedEDIFACTReaderValidateWarningEventParams;
typedef void __fastcall (__closure *TedEDIFACTReaderValidateWarningEvent)(System::TObject* Sender, TedEDIFACTReaderValidateWarningEventParams *e);
__property TedEDIFACTReaderValidateWarningEvent OnValidateWarning = { read=FOnValidateWarning, write=FOnValidateWarning };
Remarks
When the component encounters a non-blocking error while validating a document, this event fires with information about the error.
Config Settings (EDIFACTReader Component)
The component accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.EDIFACTReader Config Settings
| 0 (default) | EDIFACT |
| 1 | XML |
Trappable Errors (EDIFACTReader Component)
EDIFACTReader Errors
| 202 | Invalid argument. |
| 304 | Cannot write to file. |
| 1003 | Could not find the selected schema in the chosen file. |
| 1099 | Encountered an unexpected segment tag. |
| 1100 | Attempted to perform an action while the component was busy, or close an incomplete interchange. |
| 1044 | Tried to load an invalid schema file. |
| 1201 | The index is out of range. |
| 1202 | The selected ACK type is invalid. |
| 1203 | Encountered an error while validating the UNA segment. |