Skip to main content

EnsLib.EDI.EDIFACT.Parser

class EnsLib.EDI.EDIFACT.Parser extends %Library.RegisteredObject

This is the EDIFACT Interchange parser

Property Inventory

Method Inventory

Properties

property %CharCount as %Integer;
Property methods: %CharCountDisplayToLogical(), %CharCountGet(), %CharCountIsValid(), %CharCountLogicalToDisplay(), %CharCountNormalize(), %CharCountSet()
property %CurrentDocument as EnsLib.EDI.Document;
The current Document
Property methods: %CurrentDocumentGet(), %CurrentDocumentGetSwizzled(), %CurrentDocumentIsValid(), %CurrentDocumentNewObject(), %CurrentDocumentSet()
property %CurrentParentSegIndex as %String;
The segment position within the current parent Document
Property methods: %CurrentParentSegIndexDisplayToLogical(), %CurrentParentSegIndexGet(), %CurrentParentSegIndexIsValid(), %CurrentParentSegIndexLogicalToDisplay(), %CurrentParentSegIndexLogicalToOdbc(), %CurrentParentSegIndexNormalize(), %CurrentParentSegIndexSet()
property %CurrentParents [ InitialExpression = 0 , MultiDimensional ];
List of enclosing parent objects ordered from outermost to immediate As EnsLib.EDI.Document
Property methods: %CurrentParentsDisplayToLogical(), %CurrentParentsGet(), %CurrentParentsIsValid(), %CurrentParentsLogicalToDisplay(), %CurrentParentsLogicalToOdbc(), %CurrentParentsNormalize(), %CurrentParentsSet()
property %LineCount as %Integer;
Property methods: %LineCountDisplayToLogical(), %LineCountGet(), %LineCountIsValid(), %LineCountLogicalToDisplay(), %LineCountNormalize(), %LineCountSet()
property %LookaheadLine as %String;
Lookahead line left over from previous document parse
Property methods: %LookaheadLineDisplayToLogical(), %LookaheadLineGet(), %LookaheadLineIsValid(), %LookaheadLineLogicalToDisplay(), %LookaheadLineLogicalToOdbc(), %LookaheadLineNormalize(), %LookaheadLineSet()
property %LookaheadLineIsNew as %Boolean;
Lookahead buffer for line terminator of unframed MSH
Property methods: %LookaheadLineIsNewDisplayToLogical(), %LookaheadLineIsNewGet(), %LookaheadLineIsNewIsValid(), %LookaheadLineIsNewLogicalToDisplay(), %LookaheadLineIsNewNormalize(), %LookaheadLineIsNewSet()
property %LookaheadLineTerminator as %String;
Lookahead buffer for line terminator of unframed MSH
Property methods: %LookaheadLineTerminatorDisplayToLogical(), %LookaheadLineTerminatorGet(), %LookaheadLineTerminatorIsValid(), %LookaheadLineTerminatorLogicalToDisplay(), %LookaheadLineTerminatorLogicalToOdbc(), %LookaheadLineTerminatorNormalize(), %LookaheadLineTerminatorSet()
property %NumChildren as %Integer [ MultiDimensional ];
List of counts of nested documents, ordered from outer to innermost
Property methods: %NumChildrenDisplayToLogical(), %NumChildrenGet(), %NumChildrenIsValid(), %NumChildrenLogicalToDisplay(), %NumChildrenNormalize(), %NumChildrenSet()
property %ParentIds as %String;
List of enclosing parent objects ordered from immediate to outermost
Property methods: %ParentIdsDisplayToLogical(), %ParentIdsGet(), %ParentIdsIsValid(), %ParentIdsLogicalToDisplay(), %ParentIdsLogicalToOdbc(), %ParentIdsNormalize(), %ParentIdsSet()
property %SegmentCount as %Integer;
Count of Segments tallied during parse of a TransactionSet
Property methods: %SegmentCountDisplayToLogical(), %SegmentCountGet(), %SegmentCountIsValid(), %SegmentCountLogicalToDisplay(), %SegmentCountNormalize(), %SegmentCountSet()
property %ServiceInterface as EnsLib.EDI.ServiceInterface;
The config provider
Property methods: %ServiceInterfaceGet(), %ServiceInterfaceGetSwizzled(), %ServiceInterfaceIsValid(), %ServiceInterfaceNewObject(), %ServiceInterfaceSet()
property %Stream as %IO.I.CharacterStream;
Property methods: %StreamGet(), %StreamGetSwizzled(), %StreamIsValid(), %StreamNewObject(), %StreamSet()
property ControlVersion as %String (MAXLEN = 5);
This allows you to pre-set a ControlVersion to use when reading TransactionSets without an UNA or UNG
Property methods: ControlVersionDisplayToLogical(), ControlVersionGet(), ControlVersionIsValid(), ControlVersionLogicalToDisplay(), ControlVersionLogicalToOdbc(), ControlVersionNormalize(), ControlVersionSet()
property Done as %Boolean [ Calculated , ReadOnly ];
Property methods: DoneDisplayToLogical(), DoneIsValid(), DoneLogicalToDisplay(), DoneNormalize()
property ReadTimeout as %Numeric (MINVAL = -1) [ InitialExpression = 5 ];
Number of seconds to wait for each read of document data inside a started document to be available on the input stream
Property methods: ReadTimeoutDisplayToLogical(), ReadTimeoutGet(), ReadTimeoutIsValid(), ReadTimeoutLogicalToDisplay(), ReadTimeoutNormalize(), ReadTimeoutSet()
property SegmentTerminator as %String (MAXLEN = 1, MINLEN = 1);
This remembers the terminator defined in the UNA, but you can pre-set it to read TransactionSets without an UNA
Property methods: SegmentTerminatorDisplayToLogical(), SegmentTerminatorGet(), SegmentTerminatorIsValid(), SegmentTerminatorLogicalToDisplay(), SegmentTerminatorLogicalToOdbc(), SegmentTerminatorNormalize(), SegmentTerminatorSet()
property Separators as %String (MAXLEN = 4, MINLEN = 4);
This remembers separators defined in the UNA, but you can pre-set it to read TransactionSets without an UNA
Property methods: SeparatorsDisplayToLogical(), SeparatorsGet(), SeparatorsIsValid(), SeparatorsLogicalToDisplay(), SeparatorsLogicalToOdbc(), SeparatorsNormalize(), SeparatorsSet()
property StartTimeout as %Numeric (MINVAL = -1) [ InitialExpression = 5 ];
Number of seconds to wait for the start of a document to be available on the input stream
Property methods: StartTimeoutDisplayToLogical(), StartTimeoutGet(), StartTimeoutIsValid(), StartTimeoutLogicalToDisplay(), StartTimeoutNormalize(), StartTimeoutSet()
property TransactionSetCount as %Integer;
Count of TransactionSets in a Group
Property methods: TransactionSetCountDisplayToLogical(), TransactionSetCountGet(), TransactionSetCountIsValid(), TransactionSetCountLogicalToDisplay(), TransactionSetCountNormalize(), TransactionSetCountSet()
property Whitespace as %String;
This property controls the skipping of whitespace in the data stream. Set it to a string of characters that should be considered whitespace and not part of the data
Property methods: WhitespaceDisplayToLogical(), WhitespaceGet(), WhitespaceIsValid(), WhitespaceLogicalToDisplay(), WhitespaceLogicalToOdbc(), WhitespaceNormalize(), WhitespaceSet()

Methods

method DoneGet() as %Boolean
method ParseIOStream(pIOStream As %IO.I.CharacterStream, Output pDocument As EnsLib.EDI.EDIFACT.Document, ByRef pControlVersion As %String = "", pInbound As %Boolean = 0) as %Status
Parse a complete EDIFACT interchange document from the stream, including any nested TransactionSet documents inside it. An Interchange contains zero or more functional groups which in turn contain TransactionSets.
method Reset()
method ResetPosition()
method StripWhitespace(pLine As %String) as %String
Strip off leading whitespace from the line

Inherited Members

Inherited Methods

FeedbackOpens in a new tab