Skip to main content

EnsLib.EDI.EDIFACT.Segment

class EnsLib.EDI.EDIFACT.Segment extends %Library.RegisteredObject, EnsLib.EDI.Segment

Property Inventory

Method Inventory

Parameters

Properties

property CS as %String [ Calculated ];
Sub-element component separator character
Property methods: CSDisplayToLogical(), CSIsValid(), CSLogicalToDisplay(), CSLogicalToOdbc(), CSNormalize()
property DocTypeCategory as %String [ ReadOnly ];
the Category portion of the DocType
Property methods: DocTypeCategoryDisplayToLogical(), DocTypeCategoryGet(), DocTypeCategoryIsValid(), DocTypeCategoryLogicalToDisplay(), DocTypeCategoryLogicalToOdbc(), DocTypeCategoryNormalize(), DocTypeCategorySet()
property DocTypeName as %String [ ReadOnly ];
the Name portion of the DocType ( name [ ! required fields] - ordinal )
Property methods: DocTypeNameDisplayToLogical(), DocTypeNameGet(), DocTypeNameIsValid(), DocTypeNameLogicalToDisplay(), DocTypeNameLogicalToOdbc(), DocTypeNameNormalize()
property DocTypeTransactionSet as %String [ ReadOnly ];
the TransactionSet portion of the DocType
Property methods: DocTypeTransactionSetDisplayToLogical(), DocTypeTransactionSetGet(), DocTypeTransactionSetIsValid(), DocTypeTransactionSetLogicalToDisplay(), DocTypeTransactionSetLogicalToOdbc(), DocTypeTransactionSetNormalize()
property ES as %String [ Calculated ];
Data-element field separator character
Property methods: ESDisplayToLogical(), ESIsValid(), ESLogicalToDisplay(), ESLogicalToOdbc(), ESNormalize()
property ESC as %String [ Calculated ];
Replacement / Escape character
Property methods: ESCDisplayToLogical(), ESCIsValid(), ESCLogicalToDisplay(), ESCLogicalToOdbc(), ESCNormalize()
property FullSize as %Integer [ Calculated , ReadOnly ];
Size in bytes of the segment content (even if >32k)
Property methods: FullSizeDisplayToLogical(), FullSizeIsValid(), FullSizeLogicalToDisplay(), FullSizeNormalize()
Property methods: HeaderDisplayToLogical(), HeaderIsValid(), HeaderLogicalToDisplay(), HeaderLogicalToOdbc(), HeaderNormalize()
property RS as %String [ Calculated ];
Repetition separator character
Property methods: RSDisplayToLogical(), RSIsValid(), RSLogicalToDisplay(), RSLogicalToOdbc(), RSNormalize()
property Separators as %String (MAXLEN = 4, MINLEN = 4) [ InitialExpression = $$$EDIFACTDefSeparators ];
All 4 Separators as a single String
Property methods: SeparatorsDisplayToLogical(), SeparatorsGet(), SeparatorsIsValid(), SeparatorsLogicalToDisplay(), SeparatorsLogicalToOdbc(), SeparatorsNormalize()
property UNASegmentTerminator as %String;
Segment serminator character(s) if we are an UNA and it came with any
Property methods: UNASegmentTerminatorDisplayToLogical(), UNASegmentTerminatorGet(), UNASegmentTerminatorIsValid(), UNASegmentTerminatorLogicalToDisplay(), UNASegmentTerminatorLogicalToOdbc(), UNASegmentTerminatorNormalize(), UNASegmentTerminatorSet()

Methods

method CSGet() as %String
method CSSet(newval) as %Status
method CopyValues(pSource As EnsLib.EDI.EDIFACT.Segment, pSourcePath As %String, pTargetPath As %String, pAction As %String, pKey As %String, pEmptyFieldAsNull As %Boolean = 0, pIgnoreMissingSource As %Boolean = 0) as %Status
Inherited description: Copy a whole set of values from source to target when iteration is implied between 2 VDocs pSourcePath contains the property path to the source set
pTargetPath contains the property path to the target set
pAction contains an action code: "set", etc..
pKey contains an optional key value or a set of comma-separated key values to be used as array indices where empty array index placeholders are present in pPropertyPath.
method DocTypeSet(pDocType As %String) as %Status
method DumpMaps() as %Status
method ESCGet() as %String
method ESCSet(newval) as %Status
method ESGet() as %String
method ESSet(newval) as %Status
classmethod EnumerateDocTypesClose(ByRef qHandle As %Binary) as %Status
classmethod EnumerateDocTypesExecute(ByRef qHandle As %Binary, Category As %String, IncludeBase As %Boolean, ExpandedDocType As %Boolean = 0) as %Status
classmethod EnumerateDocTypesFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status
classmethod EnumerateTypeCategoriesClose(ByRef qHandle As %Binary) as %Status
classmethod EnumerateTypeCategoriesExecute(ByRef qHandle As %Binary, Standard As %String = "") as %Status
classmethod EnumerateTypeCategoriesFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status
method Escape(pData) as %String
method FullSizeGet() as %String
method GetBinaryStreamAt(ByRef pStream As %Stream, pPath As %String) as %Status
classmethod GetContentArray(Output pContents, pMode As %String, pDocType As %String, pLevel As %Integer, pIncludeBase As %Boolean = 0) as %Status
Inherited description: Returns array of properties that make up the contents of this object.
This method in implemented within the document class.
The content array is in the form:
pContents(n,"type")="%String"
pContents(n,"name")="Field"
pContents(n,"alias")=alias code
If pContents(n) is non-zero then the property is a composite type with
sub-properties. The sub-properties are indexed with a similar structure under
pContents(n,m) where m is the index of the subtype property.
method GetNextIndex(pPath As %String, pIndex As %String, ByRef pStatus As %Status = $$$OK) as %String
Gets the next index in an array
method GetValueAt(pPropertyPath As %String, pSeparators As %String, Output pStatus As %Status) as %String
pPropertyPath is of syntax: element [ ( array ) ] [ . component ] Returns the value at the specified property path. pSeparators is used to specify the separators to be used when a non-atomic value is returned. All property path elements must be either name or index.
classmethod ImportFromIOStream(pIOStream As %IO.I.CharacterStream, Output pStatus As %Status = $$$OK, pSeparators As %String, pIOFormatClassname As %String = "") as EnsLib.EDI.EDIFACT.Document
classmethod ImportFromString(pString As %String, Output pStatus As %Status, pSeparators As %String, ByRef pConfigItem As %String = "", pIOFormatClassname As %String) as EnsLib.EDI.EDIFACT.Segment
method OutputHTML() as %Status
Display Segment as HTML, using DocType info if available
method OutputHTMLZen() as %Status
Display Segment as HTML, using DocType info if available
method OutputToDevice(pSeparators As %String, pSegNum As %String, pSegPath As %String, pParentDoc As EnsLib.EDI.Document, pIOFormatClassname As %String) as %Status
method OutputToIOStream(pIOStream As %IO.I.CharacterStream, pSeparators As %String, pSegNum As %String, pSegPath As %String, pParentDoc As EnsLib.EDI.Document, pIOFormatClassname As %String = "") as %Status
Convert segments back to Stream
method OutputToLibraryStream(pLibStream As %Stream.Object, pSeparators As %String, pSegNum As %String, pSegPath As %String, pParentDoc As EnsLib.EDI.Document, pIOFormatClassname As %String) as %Status
method OutputToString(pSeparators As %String, Output pStatus As %Status, pCharEncoding As %String = "", pSegNum As %String, pSegPath As %String, pParentDoc As EnsLib.EDI.Document, pIOFormatClassname As %String) as %String
method PokeDocType(pDocType As %String) as %Status
method RSGet() as %String
method RSSet(newval) as %Status
method ReadRawDataStream(ByRef pStream As %Stream.Object, pPropertyPath As %String = "") as %Status
Read a field from a >32k segment, or the whole segment, into a stream. Note that this will return the entire remainder of the segment, not stopping at the end of the field specified in pPropertyPath
method SaveData(pSeparators As %String = "") as %Status
Compose the segment and store it at a new ID
method SeparatorsSet(newvalue As %String) as %Status
method SetValueAt(pValue As %String, pPropertyPath As %String = "", pAction As %String = "set", pKey As %String = "") as %Status
Sets the value at the specified property path. pPropertyPath is of syntax: element [ ( array ) ] [ . component ] All property path elements must be either name or index. pKey is used to append an array index to the value at the given property path. pAction corresponds to the actions in the DTL statement.
method StoreRawDataStream(pStream As %Stream.Object, pPropertyPath As %String = "") as %Status
Write a >32k field or whole segment stream to a segment. Note that this renders the segment immutable after completing, and therefore works only once per segment.
method Unescape(pData) as %String
method decompose() as %Status
Decompose the segment from a single string into a multidimensional array
method decomposeData(pData As %String) as %Status
method getAtFromArray(pPropertyPath As %String = "", pSeparators As %String, Output pStatus As %Status) as %String
method getAtFromGlobal(pPropertyPath As %String = "", pSeparators As %String, Output pStatus As %Status) as %String
method init(pSegID As %String, pMutable As %Boolean, pDocType As %String, pSegData As %String) as %Status
Inherited description: Initialize a segment. The segid is typically an index into the Segment storage global. Mutable indicates whether the initialized segment may be modified or not and SegType is used to determine the segment schema to be used for interpretation of segment contents
method outputHTMLSeg(pSeparators As %String, pSegNum As %String = "", pSegPath As %String = "", pDocument As EnsLib.EDI.Document = $$$NULLOREF) as %Status
method outputHTMLSegZen(pSeparators As %String, pSegNum As %String = "", pSegPath As %String = "", pDocument As EnsLib.EDI.Document = $$$NULLOREF) as %Status
method parsePropertyPath(pPropertyPath As %String, Output pElem As %Integer, Output pArray As %Integer, Output pComponent As %Integer) as %Status
Given a property path, determine the Element, Repeat and Component positions
classmethod replaceSeparators(pInputData, oSeparators) as %String

Queries

query EnumerateDocTypes(Category As %String = "", IncludeBase As %Boolean = 0, ExpandedDocType As %Boolean = 0)
Selects Type As %String
Returns a list of available DocTypes for this document class.
The DocType is returned as the first column in the result set.
The Category parameter can be used to restrict the list.
If Category is:
0 - return only DocTypes in standard categories
+ - return only DocTypes in user-defined categories
empty - return DocTypes from all categories
a category name - return only DocTypes in the named category
a partial name suffixed with '%' - return only DocTypes in categories matching the partial category name
other - return nothing
If IncludeBase is:
0 - return only DocTypes defined in the current schema category itself
1 - return all DocTypes in the current schema category's base category in addition to those defined in the current category itself
If ExpandedDocType is:
0 - return SegTypes as Category:SegName
1 - return SegTypes as Category:DocStruct:Segment-Ordinal
query EnumerateTypeCategories(Standard As %String = "")
Selects Category As %String, Description As %String, IsStandard As %Boolean, Base As %String
Returns a list of document type schema categories for the document class.
The Standard parameter can be used to restrict the list.
If Standard is: 0 - return only standard categories + - return only user-defined categories empty - return all categories a category name - return only the named category a partial name suffixed with '%' - return only categories matching the partial category name other - return nothing

Inherited Members

Inherited Properties

Inherited Methods

FeedbackOpens in a new tab