The TEDIInterchangeControl object contains and manages
TEDIFunctionalGroup objects.
In JclEDI_UNEDIFACT.pas: The TEDIInterchangeControl
object contains and manages TEDIFunctionalGroup and/or TEDIMessage objects.
Since JclEDI_UNEDIFACT.pas uses two different object types
in TEDIInterchangeControl there are some differences in the implementation
of TEDIInterchangeControl between JclEDI_ANSIX12.pas and JclEDI_UNEDIFACT.pas
units.
|
Procedure
|
|
procedure InternalCreateHeaderTrailerSegments; virtual;
|
InternalCreateHeaderTrailerSegments creates the
EDI interchange control header and trailer segments and is called in the
constructor.
In JclEDI_UNEDIFACT.pas: The service string advice
segment is also created.
It is important to note that the TEDIInterchangeControl
object does not make any assumptions on the data contained within the interchange
control header or trailer segments, and it is up the programmer to accurately
maintain the data within these segments.
For custom EDI implementations the interchange control header
and trailer segments can be used with a varying number of elements.
|
In JclEDI_ANSIX12.pas: Properties
|
|
property SegmentISA: TEDIInterchangeControlSegment
read FISASegment write SetISASegment;
property SegmentIEA: TEDIInterchangeControlSegment
read FIEASegment write SetIEASegment;
|
The SegmentISA property is the interchange control header
segment. The "ISA" segment contains the following data elements in ANSI X12.
- Authorization Information Qualifier
- Authorization Information
- Security Information Qualifier
- Security Information
- Interchange ID Qualifier
- Interchange Sender ID
- Interchange ID Qualifier
- Interchange Receiver ID
- Interchange Date
- Interchange Time
- Interchange Control Standards Identifier
- Interchange Control Version Number
- Interchange Control Number
- Acknowledgment Requested
- Usage Indicator
- Component Element Separator
The SegmentIEA property is the interchange control trailer
segment. The "IEA" segment contains the following data elements in ANSI X12.
- Number of Included Functional Groups
- Interchange Control Number
|
In JclEDI_UNEDIFACT.pas: Properties
|
|
property SegmentUNA: TEDIInterchangeControlSegment read FUNASegment;
property SegmentUNB: TEDIInterchangeControlSegment
read FUNBSegment write SetUNBSegment;
property SegmentUNZ: TEDIInterchangeControlSegment
read FUNZSegment write SetUNZSegment;
|
The SegmentUNA property is the service string advice
segment.
The SegmentUNB property is the interchange control header
segment.
The SegmentUNZ property is the interchange control trailer
segment.
|
Function
|
|
function Assemble: string; override;
|
This function implements the assembling of EDI data
into EDI file format.
|
Procedure
|
|
procedure Disassemble; override;
|
This procedure implements the disassembling of EDI data
from EDI file format.
|
Function
|
|
function InternalCreateFunctionalGroup: TEDIFunctionalGroup; virtual;
|
InternalCreateFunctionalGroup will create a
TEDIFunctionalGroup object and is used by InternalCreateEDIDataObject.
|
In JclEDI_UNEDIFACT.pas: Function
|
|
function InternalCreateMessage: TEDIMessage; virtual;
|
InternalCreateMessage will create a TEDIMessage object
and is used by InternalCreateEDIDataObject.
|
Function
|
|
function InternalAssignDelimiters: TEDIDelimiters; override;
|
Currently returns nil.
|
Function
|
|
function InternalCreateEDIDataObject: TEDIDataObject; override;
|
In JclEDI_ANSIX12.pas: This function calls
InternalCreateFunctionalGroup.
In JclEDI_UNEDIFACT.pas: This function calls
InternalCreateFunctionalGroup or InternalCreateMessage.
|
In JclEDI_ANSIX12.pas: Functions and Procedures
|
|
function AddFunctionalGroup: Integer;
function AppendFunctionalGroup(FunctionalGroup: TEDIFunctionalGroup): Integer;
function InsertFunctionalGroup(InsertIndex: Integer): Integer; overload;
function InsertFunctionalGroup(InsertIndex: Integer;
FunctionalGroup: TEDIFunctionalGroup): Integer; overload;
procedure DeleteFunctionalGroup(Index: Integer); overload;
procedure DeleteFunctionalGroup(FunctionalGroup: TEDIFunctionalGroup); overload;
function AddFunctionalGroups(Count: Integer): Integer;
function AppendFunctionalGroups(FunctionalGroupArray: TEDIFunctionalGroupArray): Integer;
function InsertFunctionalGroups(InsertIndex, Count: Integer): Integer; overload;
function InsertFunctionalGroups(InsertIndex: Integer;
FunctionalGroupArray: TEDIFunctionalGroupArray): Integer; overload;
procedure DeleteFunctionalGroups; overload;
procedure DeleteFunctionalGroups(Index, Count: Integer); overload;
|
Functional group item management functions and procedures.
|
In JclEDI_UNEDIFACT.pas: Functions and Procedures
|
|
function AddFunctionalGroup: Integer;
function AppendFunctionalGroup(FunctionalGroup: TEDIFunctionalGroup): Integer;
function InsertFunctionalGroup(InsertIndex: Integer): Integer; overload;
function InsertFunctionalGroup(InsertIndex: Integer;
FunctionalGroup: TEDIFunctionalGroup): Integer; overload;
function AddFunctionalGroups(Count: Integer): Integer;
function AppendFunctionalGroups(
FunctionalGroupArray: TEDIFunctionalGroupArray): Integer;
function InsertFunctionalGroups(InsertIndex, Count: Integer): Integer; overload;
function InsertFunctionalGroups(InsertIndex: Integer;
FunctionalGroupArray: TEDIFunctionalGroupArray): Integer; overload;
function AddMessage: Integer;
function AppendMessage(Message: TEDIMessage): Integer;
function InsertMessage(InsertIndex: Integer): Integer; overload;
function InsertMessage(InsertIndex: Integer; Message: TEDIMessage): Integer; overload;
function AddMessages(Count: Integer): Integer;
function AppendMessages(MessageArray: TEDIMessageArray): Integer;
function InsertMessages(InsertIndex, Count: Integer): Integer; overload;
function InsertMessages(InsertIndex: Integer;
MessageArray: TEDIMessageArray): Integer; overload;
|
Functional group and message item management functions
and procedures.
|
In JclEDI_ANSIX12.pas: Property
|
|
property FunctionalGroup[Index: Integer]: TEDIFunctionalGroup
read GetFunctionalGroup write SetFunctionalGroup; default;
|
This property allows direct and easy access to the
TEDIFunctionalGroup objects managed by the object list in TEDIInterchangeControl.
In JclEDI_UNEDIFACT.pas: This property does not
exist because of the management of two different subtypes in the object list
of TEDIInterchangeControl. Use the inherited EDIDataObject property instead
and typecast as necessary.
|
In JclEDI_ANSIX12.pas: Property
|
|
property FunctionalGroups: TEDIDataObjectList read FEDIDataObjects;
|
A property that exposes the object list in
TEDIInterchangeControl.
In JclEDI_UNEDIFACT.pas: This property does not
exist because of the management of two different subtypes in the object list
of TEDIInterchangeControl. Use the inherited EDIDataObjects property instead
|
In JclEDI_ANSIX12.pas: Property
|
|
property FunctionalGroupCount: Integer read GetCount;
|
The count of functional groups in the interchange.
In JclEDI_UNEDIFACT.pas: This property does not
exist because of the management of two different subtypes in the object list
of TEDIInterchangeControl. Use the inherited EDIDataObjectCount property
instead.
|
In JclEDI_ANSIX12.pas: Property
|
|
property TA1Segments: TEDIObjectList read FTA1Segments;
|
When TEDIInterchangeControl.Disassemble is called and
there are "TA1" (Interchange Acknowledgment) segments they will be added
to this TEDIObjectList property rather than being added directly to the
TEDIInterchangeControl object list.
|