Learning
Documentation
Community
Open Exchange
Global Masters
Home / Class Reference / ENSLIB namespace / EnsLib.EDI.X12.Document
Private  Storage   

EnsLib.EDI.X12.Document


persistent class EnsLib.EDI.X12.Document extends
%Persistent, EnsLib.EDI.BatchDocument, EnsLib.EDI.Segmented, EnsLib.EDI.X12.MsgBodyMethods

Represents an Interchange or a TransactionSet. FunctionalGroups are represented as Segments within an Interchange.

Inventory


Parameters Properties Methods Queries Indices ForeignKeys Triggers
7 29 111 3 3 1


Summary


Properties
%ClonedId %Concurrency %maps Attachments
AutoBuildMap BuildMapStatus CacheSegsGotten ChildCount
ComponentSeparator DocType DocTypeCategory DocTypeName
ElementSeparator Envelope FullSize Identifier
IsMutable Name OriginalDocId Parent
ParentGE ParentGEId ParentGS ParentGSId
ParentIEA ParentIEAId ParentISA ParentISAId
ParentId ParentIds ParentInterchange RawContent
RepetitionSeparator SegCount SegmentTerminator Separators
Source TimeCreated TopParentId TypeVersion
UserValues useValSchema

Methods
%%OIDGet %1Check %AddJrnObjToSyncSet %AddToSaveSet
%AddToSyncSet %BMEBuilt %BindExport %BuildIndices
%BuildIndicesAsync %BuildIndicesAsyncResponse %BuildIndicesSegment %BuildObjectGraph
%CheckConstraints %CheckConstraintsForExtent %ClassIsLatestVersion %ClassName
%Close %CompareContents %ComposeOid %ConstructClone
%Delete %DeleteExtent %DeleteId %DispatchClassMethod
%DispatchGetModified %DispatchGetProperty %DispatchMethod %DispatchSetModified
%DispatchSetMultidimProperty %DispatchSetProperty %DowngradeConcurrency %DrawHTMLForm
%DrawHTMLTable %ExecuteAfterTriggers %ExecuteBeforeTriggers %Exists
%ExistsId %Extends %FileIndices %FileIndicesBuffered
%GUID %GUIDSet %GetContentType %GetLock
%GetParameter %GetSwizzleObject %Id %IncrementCount
%InsertBatch %IsA %IsModified %IsNull
%JournalObject %KillExtent %KillExtentData %LoadFromMemory
%LockExtent %LockId %New %NormalizeObject
%ObjectIsNull %ObjectModified %Oid %OnBeforeAddToSync
%OnDetermineClass %OnTimeout %Open %OpenId
%OriginalNamespace %PackageName %PhysicalAddress %ProcessSubmit
%PurgeIndices %Reload %RemoveFromSaveSet %ResolveConcurrencyConflict
%RollBack %SQLAcquireLock %SQLAcquireTableLock %SQLAfterTriggers
%SQLBeforeTriggers %SQLBuildIndices %SQLBuildPurgeIndexForRow %SQLBuildPurgeIndices
%SQLCheckUnique %SQLCheckUniqueIndices %SQLCheckUniqueKeys %SQLCopyIcolIntoName
%SQLCopyNameIntoIcol %SQLCreateInsDelTables %SQLDefineiDjVars %SQLDelete
%SQLDeleteChildren %SQLDeleteTempStreams %SQLEExit %SQLExists
%SQLFKeyDelLock %SQLFastInsert %SQLFieldValidate %SQLGetLock
%SQLGetOld %SQLGetOldAll %SQLGetOldIndex %SQLInsert
%SQLInsertComputes %SQLInsertStreams %SQLInvalid %SQLInvalid2
%SQLMVDelete %SQLMVIndexDelete %SQLMVIndexInsert %SQLMVIndexUpdate
%SQLMVInsert %SQLMVUpdate %SQLMissing %SQLNormalizeCompFields
%SQLNormalizeFields %SQLPurgeIndices %SQLQuickBulkInsert %SQLQuickBulkLoad
%SQLQuickBulkSave %SQLQuickBulkUpdate %SQLQuickDelete %SQLQuickDeleteChildren
%SQLQuickFindPKeyByRowID %SQLQuickFindRowIDByPKey %SQLQuickInsert %SQLQuickLoad
%SQLQuickLoadChildren %SQLQuickLogicalToOdbc %SQLQuickOdbcToLogical %SQLQuickUpdate
%SQLReleaseLock %SQLReleaseTableLock %SQLStorageValidation %SQLTrigDelTab
%SQLTrigInsTab %SQLUnlock %SQLUnlock2 %SQLUnlockError
%SQLUnlockRef %SQLUpdate %SQLUpdateComputes %SQLUpdateStreams
%SQLValidateCompFields %SQLValidateFields %SQLicompView %SQLnBuild
%Save %SaveDirect %SaveIndices %SerializeObject
%SetModified %ShowContents %ShowContentsHead %SortBegin
%SortEnd %SyncObjectIn %SyncTransport %UnlockExtent
%UnlockId %UpgradeConcurrency %ValidateIndices %ValidateObject
AddAttachment AddChild AddChildArray AddEndSegment
AddFunctionalGroup AddTransactionSet AppendSegment AppendSegmentId
BuildMap ChildCountGet Clear ComponentSeparatorGet
CopyValues DetermineReplyVersion DocTypeSet DrawFormButtons
DrawHTMLContentsForm DrawHTMLForm DumpMaps ElementSeparatorGet
EnumerateDocTypesClose EnumerateDocTypesExecute EnumerateDocTypesFetch EnumerateSegTypesClose
EnumerateSegTypesExecute EnumerateSegTypesFetch EnumerateTypeCategoriesClose EnumerateTypeCategoriesExecute
EnumerateTypeCategoriesFetch EnumerateVDocsClose EnumerateVDocsExecute EnumerateVDocsFetch
FindSegment FindSegmentValues FindSegmentValuesArray FullSizeGet
GetAlias GetChildIdsArray GetContentArray GetFullSize
GetManagerLinks GetMutableSegmentAt GetNewManagerLinks GetNextGroupPath
GetNextIndex GetReplyGroupSegs GetSegmentAt GetSegmentIdAt
GetSegmentIndex GetSegmentPath GetSegmentTypeAt GetStatsDimension
GetValueAt GetValues GetValuesArray IdentifierGet
ImportFromDevice ImportFromFile ImportFromIOStream ImportFromLibraryStream
ImportFromString InsertSegmentAt InsertSegmentIdAt IsMutableSet
KillGlobals NameGet New997OuterGroupSegs NewControlID
NewDocumentReply997Segs NewGroupReply997Segs NewReplyDocument NewReplyGroupSegs
NewReplyHeaderSegs NewReplyTA1Seg NewSegment NextChild
NextChildId OutputHTML OutputHTMLZen OutputToDevice
OutputToFile OutputToIOStream OutputToLibraryStream OutputToString
ParentGEGet ParentGEIdGet ParentGSGet ParentGSIdGet
ParentGet ParentGetObjectId ParentIEAGet ParentIEAIdGet
ParentISAGet ParentISAIdGet ParentIdsGet ParentInterchangeGet
ParentInterchangeGetObjectId PokeDocType Purge RawContentGet
RemoveSegmentAt RepetitionSeparatorGet SegCountGet SegmentTerminatorGet
SetSegmentAt SetSegmentIdAt SetValueAt SourceGet
TopParentIdGet TotalCount TypeVersionGet Validate
buildRuntimeIndexFromPath buildRuntimePathFromIndex checkDocType chooseDocType
commitSegmentByIndex commitSegmentByPath convertRuntimePathToSchemaPath getChildCount
getGEId getGSId getIEAId getISAId
getId getIdentifier getMutableSegmentByIndex getMutableSegmentByPath
getName getNextChildId getOrderKeyFromRuntimePath getParentIds
getSegmentByIndex getSegmentByPath getSegmentIdByIndex getSegmentIdByPath
getSegsAsString getTestNewArg getTypeVersion getValsArray
removeSegmentByIndex removeSegmentByPath resolveChildDocType setSegmentByIndex
setSegmentByPath setSegmentIdByIndex setSegmentIdByPath


Parameters


• parameter DEFSEARCHCLASS = "EnsLib.EDI.X12.SearchTable";
Name of the default SearchTable indexing class used in UI choices and MessageBank submissions
• parameter DOCCLASSFULLNAME = "ASC X12 EDI Document";
Full descriptive name for this subclass of document
• parameter DOCCLASSNAME = "X12 Document";
Compact descriptive name for this subclass of document
• parameter DOCSHORTNAME = "X12";
• parameter DOMAIN = "Ensemble";
Use our own domain for localization
• parameter EXTENTSIZE = 2000000;
The EXTENTSIZE parameter is used to inform the SQL Query Optimizer of the approximate number of instances in the extent containing instances of this class.

For example, a class that expects to have about 1,000,000 instances should define:

parameter EXTENTSIZE = 1000000;
• parameter SCHEMACLASS = "EnsLib.EDI.X12.Schema:DS";
Name of the associated schema class and after a colon the schema element code that represents a DocType

Properties


• property %ClonedId as %RawString [ InitialExpression = 0,Transient,ReadOnly ];
Id of original object if we are a mutable clone (also used as a legal subscript that will result in $G(xxx(..%ClonedId))="" instead of a error)
• property %maps  [ MultiDimensional,Transient ];
A local array of orefs "orefs" - a local map of integer ids to segment objects And either a subscript into ^IRIS.Temp for this object's LVD maps (for notes on LVD implementation see EnsEDI.inc) or local storage for these additional maps: "runtimeIndex" - array for runtime index to segment; will always be defined unless mapRuntimePath is defined "runtimePath" - array for runtime path to segment "bidirectionalLink" - array for runtime path and index linkage
• property Attachments as array of Ens.StreamContainer;
Attachment streams associated with this document
• property ChildCount as %Integer [ Calculated,Transient,ReadOnly ];
Number of Children
• property ComponentSeparator as %String [ Calculated,Transient ];
Sub-element component separator character
• property DocTypeCategory as %String [ Transient,ReadOnly ];
the category portion of the DocType
• property DocTypeName as %String [ Transient,ReadOnly ];
Stored raw document type name ; the secondary type name portion of the DocType
• property ElementSeparator as %String [ Calculated,Transient ];
Data-element separator character
• property Envelope as %String(MAXLEN="");
XML or other 'envelope' for the X12 document message. The X12 document will be inserted in place of the "<!--X12DOC-->" string If present, otherwise after the end of the Envelope.
• property FullSize as %Integer [ Calculated,Transient,ReadOnly ];
Size in bytes of the message content (assuming 1-byte segment terminators, including segments >32k)
• property Identifier as %String [ Calculated,Transient,ReadOnly ];
Unique document identification string found in document content
• property Name as %String [ Calculated,Transient,ReadOnly ];
Raw type name of document
• property ParentGE as EnsLib.EDI.X12.Segment [ Calculated,Transient,ReadOnly ];
• property ParentGEId as %Integer [ Calculated,Transient,ReadOnly ];
Id of the GE segment of the FunctionalGroup in the Interchange within which this TransactionSet arrived or Id of the IEA segment of the Interchange within which this FunctionGroup arrived
• property ParentGS as EnsLib.EDI.X12.Segment [ Calculated,Transient,ReadOnly ];
• property ParentGSId as %Integer [ Calculated,Transient,ReadOnly ];
Id of the GS segment of the FunctionalGroup in the Interchange within which this TransactionSet arrived or Id of the ISA segment of the Interchange within which this FunctionGroup arrived
• property ParentIEA as EnsLib.EDI.X12.Segment [ Calculated,Transient,ReadOnly ];
• property ParentIEAId as %Integer [ Calculated,Transient,ReadOnly ];
Id of the IEA segment of the Interchange within which this TransactionSet arrived
• property ParentISA as EnsLib.EDI.X12.Segment [ Calculated,Transient,ReadOnly ];
• property ParentISAId as %Integer [ Calculated,Transient,ReadOnly ];
Id of the ISA segment of the Interchange within which this TransactionSet arrived
• property ParentIds as %String [ Calculated,Transient,ReadOnly ];
A $List of the Ids of all the enclosing parent documents of this nested document, if nested, in order from from immediate to outermost E.g. for Id of enclosing EncounterBatch if we are an Encounter
• property ParentInterchange as EnsLib.EDI.X12.Document [ Calculated,Transient,ReadOnly ];
• property RawContent as %String(MAXLEN=10000) [ Calculated,Transient,ReadOnly ];
The raw text content of the document. Note that this is a truncated version suitable for use in SQL results and visual inspection, but not a complete or definitive representation of the document.
• property RepetitionSeparator as %String [ Calculated,Transient ];
Repetition separator character
• property SegCount as %Integer [ Calculated,Transient,ReadOnly ];
Count of segments composing this document
• property SegmentTerminator as %String [ Calculated,Transient ];
Segment Terminator character(s)
• property Separators as %String(MAXLEN=6,MINLEN=3) [ Transient ];
All 3 Separators as a String, plus optionally SegmentTerminator: ELESEP_COMSEP_REPSEP Additional characters will be output as the Segment Terminator; may have up to 3 additional chars for output with newlines
• property TypeVersion as %String [ Calculated,Transient,ReadOnly ];
Raw type version name of message found at MSH:12 in message content
• property useValSchema as %String [ Transient,ReadOnly ];
Look up the schema structure referenced by DocType in the old-style 'Validation' schema not the new style schema"

Methods


• private method %OnAfterSave(insert As %Boolean) as %Status
This callback method is invoked by the %Save method to provide notification that the object is being saved. It is called after the object's data has been successfully written to disk.

insert will be set to 1 if this object is being saved for the first time.

If this method returns an error then the call to %Save will fail.

• private method %OnClose() as %Status
This callback method is invoked by the %Close method to provide notification that the current object is being closed.

The return value of this method is ignored.

• private method %OnConstructClone(object As %RegisteredObject, deep As %Boolean = 0, ByRef cloned As %String) as %Status
This callback method is invoked by the %ConstructClone method to provide notification that a clone of an object is being created. It passes in the oref of the object that was cloned in object.

If this method returns an error then the object will not be created.

• private classmethod %OnDelete(oid As %ObjectIdentity) as %Status
This callback method is invoked by the %Delete method to provide notification that the object specified by oid is being deleted.

If this method returns an error then the object will not be deleted.

• private method %OnNew(initvalue As %RawString = "") as %Status
create an object based on id=initvalue but editable
• private method %OnOpen() as %Status
This callback method is invoked by the %Open method to provide notification that the object specified by oid is being opened.

If this method returns an error then the object will not be opened.

• method AddAttachment(pStream As %Stream.Object) as %Status
• method AddEndSegment() as %Status
• method AddFunctionalGroup(pGS As EnsLib.EDI.X12.Segment, Output pGroupSegIndex As %Integer = "") as %Status
• method AddTransactionSet(pTxnSet As EnsLib.EDI.X12.Document, pGroupSegIndex As %Integer, pAttachment As %Stream.Object = $$$NULLOREF) as %Status
Add a TransactionSet to the Interchange. Add it to a group given the segment index of the placeholder segment between GS and GE segments.
• method BuildMap(pKeepParsingAfterError As %Boolean = 1) as %Status
pKeepParsingAfterError means keep trying to parse after errors are encountered; returned Status will contain all errors encountered
• method Clear() as %Status
Delete All Content and reset all properties
• method ComponentSeparatorGet() as %String
This is a Get accessor method for the ComponentSeparator property.
• method CopyValues(pSource As EnsLib.EDI.X12.Document, pSourcePath As %String, pTargetPath As %String, pAction As %String, pKey As %String, pEmptyFieldAsNull As %Boolean = 0, pIgnoreMissingSource As %Boolean = 0) as %Status
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.
• classmethod DetermineReplyVersion(pIGRef As %String) as %String
Determine the reply type to use with the given Implementation Guide reference. We send a 999 response to HIPAA standard transactions with version 5010 or greater. Otherwise we send a 997 response.
• method DocTypeSet(pDocType As %String, pBuildMap As %Boolean = 1) as %Status
This is a Set accessor method for the DocType property.
• method DumpMaps() as %Status
• method ElementSeparatorGet() as %String
This is a Get accessor method for the ElementSeparator property.
• classmethod EnumerateDocTypesClose(ByRef qHandle As %Binary) as %Status
• classmethod EnumerateDocTypesExecute(ByRef qHandle As %Binary, Category As %String, IncludeBase As %Boolean) as %Status
• classmethod EnumerateDocTypesFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer) as %Status
• classmethod EnumerateSegTypesClose(ByRef qHandle As %Binary) as %Status
• classmethod EnumerateSegTypesExecute(ByRef qHandle As %Binary, Category As %String, Level As %String, IncludeBase As %Boolean) as %Status
• classmethod EnumerateSegTypesFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer) 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) as %Status
• method FindSegment(pSegName As %String, ByRef pIndex As %String = "", Output pStatus As %Status) as EnsLib.EDI.X12.Segment
Gets the next segment after index pIndex with name pSegName. Supports pSegName = '*' to match any segment.
• method FullSizeGet() as %Integer
This is a Get accessor method for the FullSize property.
• classmethod GetAlias(pContentArrayName As %String, pArrayPos As %String) as %String
This method computes the Alias string for a property name, given the property's node in the Content Array.
• classmethod GetContentArray(Output pContents, pMode As %String, pDocType As %String, pLevel As %Integer, pIncludeBase As %Boolean) as %Status
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.
• classmethod GetFullSize(pMsgId) as %Integer
• classmethod GetManagerLinks(Output pColumns) as %Boolean
Returns an array of links to manager pages for this type of VDoc; item 0 is the family description
• method GetNextGroupPath(pGroup As %String, pPath As %String, ByRef pStatus As %Status = $$$OK) as %String
Gets the next path in a group
• method GetNextIndex(pPath As %String, pIndex As %String, ByRef pStatus As %Status = $$$OK) as %String
Gets the next index in an array
• classmethod GetReplyGroupSegs(pLocalApplicationID As %String = "", pOriginalReceiversCode As %String, pOriginalSendersCode As %String, pVersion As %String, Output pReplyGESeg As EnsLib.EDI.X12.Segment, Output pSC As %Status) as EnsLib.EDI.X12.Segment
Create new GS/GE group segments as a reply, having been given relevant values from original ISA or GS
• method GetSegmentIndex(pPath As %String, Output pStatus As %Status) as %Integer
Given a segment path, find the corresponding segment index
• method GetSegmentPath(pIndex As %Integer, Output pStatus As %Status) as %String
Given a segment index, find the corresponding segment path
• method GetValueAt(pSegmentPropertyPath As %String, pSeparators As %String, Output pStatus As %Status, pTreatEmptyAsNull As %Boolean = 0) as %String
Return the value of the designated virtual property.
pPropertyPath contains a text expression representing the address within the document of the value of interest.
pFormat contains additional context that may be used to influence the form of the result value
If no value can be found matching pPropertyPath in the current document an empty string is returned and output argument pStatus returns status information explaining the failure
pTreatEmptyFieldAsNull indicates whether repeating fields which have a separator but are empty should be considered to have a count of 1 (if false) or 0 (if true) This is implemented by the document subclass.
• method IdentifierGet() as %String
This is a Get accessor method for the Identifier property.
• classmethod ImportFromDevice(Output pStatus As %Status, ByRef pConfigItem As %String, pIOFormatClassname As %String, pDefaultRepSep As %String = "", pDefaultCompSep As %String = "", pDefaultSegTerminator As %String = "") as EnsLib.EDI.X12.Document
• classmethod ImportFromFile(pFilename As %String, pDocNum As %Integer = 1, Output pStatus As %Status, ByRef pConfigItem As %String, pIOFormatClassname As %String, pDefaultRepSep As %String = "", pDefaultCompSep As %String = "", pDefaultSegTerminator As %String = "") as EnsLib.EDI.X12.Document
• classmethod ImportFromIOStream(pIOStream As %IO.I.CharacterStream, Output pStatus As %Status = $$$OK, ByRef pConfigItem As %String = "", pIOFormatClassname As %String = "", pDefaultRepSep As %String = "", pDefaultCompSep As %String = "", pDefaultSegTerminator As %String = "") as EnsLib.EDI.X12.Document
• classmethod ImportFromLibraryStream(pLibStream As %Stream.Object, Output pStatus As %Status, ByRef pConfigItem As %String, pIOFormatClassname As %String, pDefaultRepSep As %String = "", pDefaultCompSep As %String = "", pDefaultSegTerminator As %String = "") as EnsLib.EDI.X12.Document
• classmethod ImportFromString(pString As %String, Output pStatus As %Status, ByRef pConfigItem As %String, pIOFormatClassname As %String, pDefaultRepSep As %String = "", pDefaultCompSep As %String = "", pDefaultSegTerminator As %String = "") as EnsLib.EDI.X12.Document
• classmethod KillGlobals(Output pDeletedCount, pKeepExtentCount=0, pDisplayLog=1)
• method NameGet() as %String
This is a Get accessor method for the Name property.
• classmethod New997OuterGroupSegs(pOriginalISASeg As EnsLib.EDI.X12.Segment, pLocalApplicationID As %String = "", pFuncID As %String, pVersion As %String, Output pReplyGESeg As EnsLib.EDI.X12.Segment, Output pSC As %Status) as EnsLib.EDI.X12.Segment
Create new 997 GS/GE group segment as a reply corresponding to an original ISA segment
• classmethod NewControlID(pType As %String) as %Integer
Get an new unique control number. Control number type can be Interchange control numbers "I", group Control numbers "G", TransactionSet control numbers "T".
• classmethod NewDocumentReply997Segs(pOriginalSTSeg As EnsLib.EDI.X12.Segment, pCodes As %String = 0, Output pReplyAK5Seg As EnsLib.EDI.X12.Segment, Output pSC As %Status, pGSGreater As %String = "") as EnsLib.EDI.X12.Segment
Create new AK2/AK5 acknowledgement segments as a reply corresponding to an original ST Transaction Set
• classmethod NewGroupReply997Segs(pOriginalGSSeg As EnsLib.EDI.X12.Segment, pOriginalGESeg As EnsLib.EDI.X12.Segment, pCodes As %String = 0, Output pReplyAK1Seg As EnsLib.EDI.X12.Segment, Output pReplyAK9Seg As EnsLib.EDI.X12.Segment, Output pReplySESeg As EnsLib.EDI.X12.Segment, Output pSC As %Status) as EnsLib.EDI.X12.Segment
Create new ST(997)/AK1/AK9/SE group reply segments as a reply corresponding to an original GS segment
• method NewReplyDocument(pDocType As %String = "", pLocalApplicationID As %String, Output pSC As %Status) as EnsLib.EDI.X12.Document
• classmethod NewReplyGroupSegs(pOriginalGSSeg As EnsLib.EDI.X12.Segment, pLocalApplicationID As %String = "", pFuncID As %String, pVersion As %String, Output pReplyGESeg As EnsLib.EDI.X12.Segment, Output pSC As %Status) as EnsLib.EDI.X12.Segment
Create new GS/GE group segment as a reply corresponding to an original GS segment
• classmethod NewReplyHeaderSegs(pOriginalISASeg As EnsLib.EDI.X12.Segment, pLocalApplicationID As %String = "", Output pReplyIEASeg As EnsLib.EDI.X12.Segment, Output pSC As %Status) as EnsLib.EDI.X12.Segment
Create new ISA/IEA interchange segments as a reply corresponding to an original ISA segment
• classmethod NewReplyTA1Seg(pOriginalISASeg As EnsLib.EDI.X12.Segment, pCode As %String = 0, Output pSC As %Status) as EnsLib.EDI.X12.Segment
Create a new TA1 acknowledgement segment as a reply corresponding to an original ISA segment
• method OutputHTML() as %Status
Display Segments as HTML, using DocType info if available
• method OutputHTMLZen() as %Status
Display Segments as HTML, using DocType info if available
• method OutputToDevice(pSeparators As %String, pIOFormatClassname As %String) as %Status
• method OutputToFile(pFilename As %String, pOverwrite As %Boolean, pSeparators As %String, pIOFormatClassname As %String) as %Status
• method OutputToIOStream(pIOStream As %IO.I.CharacterStream, pSeparators As %String, pFlush As %Boolean = 1, pIOFormatClassname As %String = "") as %Status
• method OutputToLibraryStream(pLibStream As %Stream.Object, pSeparators As %String, pIOFormatClassname As %String) as %Status
• method OutputToString(pSeparators As %String, Output pStatus As %Status, pIOFormatClassname As %String) as %String
• method ParentGEGet() as EnsLib.EDI.X12.Segment
This is a Get accessor method for the ParentGE property.
• method ParentGEIdGet() as %String
This is a Get accessor method for the ParentGEId property.
• method ParentGSGet() as EnsLib.EDI.X12.Segment
This is a Get accessor method for the ParentGS property.
• method ParentGSIdGet() as %String
This is a Get accessor method for the ParentGSId property.
• method ParentIEAGet() as EnsLib.EDI.X12.Segment
This is a Get accessor method for the ParentIEA property.
• method ParentIEAIdGet() as %String
This is a Get accessor method for the ParentIEAId property.
• method ParentISAGet() as EnsLib.EDI.X12.Segment
This is a Get accessor method for the ParentISA property.
• method ParentISAIdGet() as %String
This is a Get accessor method for the ParentISAId property.
• method ParentInterchangeGet() as EnsLib.EDI.X12.Document
This is a Get accessor method for the ParentInterchange property.
• method ParentInterchangeGetObjectId(force As %Integer) as %String
Required for AutoForm
• method PokeDocType(pDocType As %String) as %Status
• classmethod Purge(Output pDeletedCount As %Integer, pDaysToKeep As %Integer = 7, pDummy As %Boolean = 0) as %Status
• method RawContentGet() as %String
This is a Get accessor method for the RawContent property.
• method RepetitionSeparatorGet() as %String
This is a Get accessor method for the RepetitionSeparator property.
• method SegCountGet() as %Integer
This is a Get accessor method for the SegCount property.
• method SegmentTerminatorGet() as %String
This is a Get accessor method for the SegmentTerminator property.
• method SetValueAt(pValue As %String, pSegmentPropertyPath As %String, pAction As %String = "set", pKey As %String = "") as %Status
Set the value of the designated virtual property.
pValue contains the value to set.
pPropertyPath contains a text expression representing the address within the document of the value of interest.
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.
pAction contains an action code: "set", "clear", "append", etc.
• method SourceGet() as %String
Retrieve Source document name from parent, if available
• classmethod TotalCount() as %Integer
• method TypeVersionGet() as %String
Subclasses should override this if the version can be gotten from the document content
• method buildRuntimeIndexFromPath(pClearSegTypes As %Boolean = 0) as %Status
• method buildRuntimePathFromIndex(pId As %String, pPath As %String, pContentArray As %String, pType As %String, ByRef pCurrSeg As %Integer, pParentGrpOpt As %Boolean, pSC As %Status, pKeepParsingAfterError As %Boolean) as %Status
Build a segment map for the current segment index array based on the document schema
If pKeepParsingAfterError is false then stop parsing when first error is encountered
• classmethod checkDocType(ByRef pDocType As %String) as %Status
• method commitSegmentByIndex(pIndex As %Integer) as %Status
collapse segment object into just ID; Save if necessary
• method commitSegmentByPath(pPath As %String) as %Status
collapse segment object into just Id; Save if necessary
• method convertRuntimePathToSchemaPath(pPath As %String) as %String
• classmethod getGEId(pId As %RawString) as %String
• classmethod getGSId(pId As %RawString) as %String
• classmethod getIEAId(pParentId As %RawString) as %String
• classmethod getISAId(pParentId As %RawString) as %String
• method getId() as %String
The same as %Id(), but allocates the Id even if the object hasn't been saved already
• classmethod getIdentifier(pId As %RawString) as %String
• method getMutableSegmentByIndex(pIndex As %Integer, Output pStatus As %Status) as EnsLib.EDI.X12.Segment
• method getMutableSegmentByPath(pPath As %String, Output pStatus As %Status) as EnsLib.EDI.X12.Segment
• classmethod getName(pId As %RawString) as %String
• method getOrderKeyFromRuntimePath(pRuntimePath As %String) as %String
Given a runtime path, this method generates the key used for collation
• method getSegmentByIndex(pIndex As %Integer, Output pStatus As %Status) as EnsLib.EDI.X12.Segment
• method getSegmentByPath(pPath As %String, Output pStatus As %Status) as EnsLib.EDI.X12.Segment
• method getSegmentIdByIndex(pIndex As %Integer, Output pStatus As %Status) as %String
• method getSegmentIdByPath(pPath As %String, Output pStatus As %Status) as %String
• classmethod getSegsAsString(pId As %String, pMaxLen As %Integer = 10000, pStartOffset As %Integer = 1) as %String
This method is for use from the RawContent property's SQL Compute invocation
• classmethod getTypeVersion(pId As %RawString, pParentId As %String) as %String
• method removeSegmentByIndex(pIndex As %Integer) as %Status
• method removeSegmentByPath(pPath As %String) as %Status
• method resolveChildDocType() as %String
Return the DocType of this document
• method setSegmentByIndex(pSegObj As EnsLib.EDI.X12.Segment, pIndex As %Integer, pInsert As %Boolean) as %Status
• method setSegmentByPath(pSegObj As EnsLib.EDI.X12.Segment, pPath As %String) as %Status
• method setSegmentIdByIndex(pSegId As %String, pIndex As %Integer, pInsert As %Boolean) as %Status
• method setSegmentIdByPath(pSegId As %String, pPath As %String) as %Status

Queries


• query EnumerateDocTypes(Category As %String = "", IncludeBase 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
• query EnumerateSegTypes(Category As %String = "", Level As %String = "", IncludeBase As %Boolean = 0)
Selects SegType As %String, Field As %String, Description As %String, IsStandard As %Boolean
Returns a list of schema categories and segment types and segment fields for this document class.
The Category and Level parameters can be used to restrict the list.
If Category is:
0 - return only standard categories
+ - return only user-defined categories
empty - return all categories
a category name - return only SegTypes in the named category
a category name:segment type name - return only information about the named SegType
a partial name suffixed with '%' - return only SegTypes in categories matching the partial category name
other - return nothing
If Level is:
0 - return all segment names
n - return the given number of levels of nested field names within each segment
empty - return all levels of nested field names within each segment
If IncludeBase is:
0 - return only segment names defined in the current schema category itself
1 - return all segment names in the current schema category's base category in addition to those defined in the current category itself
• 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 partial category name - return only categories starting with the given category name part
other - return nothing

Indices


•index (Extent on ) [Extent,Type = bitmap];
•index (OriginalDocId on OriginalDocId);
•index (ParentId on ParentId);

Triggers


•trigger OnDelete (BEFORE event DELETE)