EnsLib.EDI.X12.Scanner

class EnsLib.EDI.X12.Scanner extends EnsLib.EDI.SEF.Util.Scanner

Method Inventory

Parameters

parameter AllowedPunct = !"&'()*+,-./:;?= %~@[]_{}\|<>^`#$;
This holds the base character set

Methods

method Binary(pMinLen As %Integer, pMaxLen As %Integer, Output pData As %String, ByRef pErrors As %String) as %Status [ Language = objectscript ]
Binary consists on 1..n bytes. The length is provided in a preceding element of the segment
method Date(pMinLen As %Integer, pMaxLen As %Integer, Output pDate As %Integer, ByRef pErrors As %String) as %Status [ Language = objectscript ]
This corresponds to the 'DT' data element type, in practive only 6 (YYMMDD) and 8 (YYYMMDD) min/maxlength values are allowed ::= | ::= ::= ::= "01" | "02" | ... | "12" ::= "01" | "02" | ... | "31"
method Decimal(pMinLen As %Integer, pMaxLen As %Integer, Output pDec As %Float, ByRef pErrors As %String) as %Status [ Language = objectscript ]
This corresponds to the 'R' data element type. Neither the leading minus sign or period contribute to the length of the value ::= ['-'] [] ::= 'E' ::= [-] ::= | '.' | '.' {}
method DisplayContext() as %String [ Language = objectscript ]
Return a string which displays the current context
method Identifier(pMinLen As %Integer, pMaxLen As %Integer, Output pID As %String, ByRef pErrors As %String) as %Status [ Language = objectscript ]
This corresponds to the 'ID' data element type. The ID must be drawn from a list of specfied codes for the element (where they can be determined). The standard does not define the legal character set for identifiers but examiniation of extant transactions shows only letters,digits and spaces allowed. ::= {} {} ::= |
method Initialize(initvalue) as %Status [ Language = objectscript ]
Override initialize to remove CR/LF
classmethod IsValidChar(pChar As %String) [ Language = objectscript ]
classmethod IsValidSeparator(pChar As %String) [ Language = objectscript ]
method Numeric(pMinLen As %Integer, pMaxLen As %Integer, pLevel As %Integer, Output pNum As %Integer, ByRef pErrors As %String) as %Status [ Language = objectscript ]
This corresponds to the 'Nn' data element type. The leading minus sign does not contribute to the length of the value. The 'n' is the level which indicates the number of decimal positions to the right of the implied decimal pooint ::= [-] ::= {}
This skips to the specified terminator and over it
method SkipWhitespace(pInUseDelims As %String) as %Integer [ Language = objectscript ]
This skips spaces and tabs returning the next token found
method String(pMinLen As %Integer, pMaxLen As %Integer, pDelims As %String, Output pStr As %String, ByRef pErrors As %String) as %Status [ Language = objectscript ]
This corresponds to the AN data element type ::= { | } { | } ::= | | | | | |
method Time(pMinLen As %Integer, pMaxLen As %Integer, Output pTime As %Integer, ByRef pErrors As %String) as %Status [ Language = objectscript ]
This corresponds to the 'TM' data element type, in practive ony 4 (HHMM) and 6 (HHMMSS) min/max length values are allowed

Inherited Members

Inherited Properties

Inherited Methods

Subclasses

Feedback