Open Exchange
Global Masters
Home > Class Reference > ENSLIB namespace > EnsLib.RecordMap.Model.ComplexBatch
Private  Storage   


class EnsLib.RecordMap.Model.ComplexBatch extends
%RegisteredObject, %XML.Adaptor, Ens.Util.PortalModelBase

Model of the Complex RecordMap structures that is used to manage and manipulate ComplexBatch definitions.


Parameters Properties Methods Queries Indices ForeignKeys Triggers
2 7 9


Elements Header ReadOnly Timestamp
Trailer annotation charEncoding name

%%OIDGet %AddToSaveSet %BindExport %BuildObjectGraph
%ClassIsLatestVersion %ClassName %Close %ConstructClone
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Extends
%GetParameter %IncrementCount %IsA %IsModified
%New %NormalizeObject %ObjectModified %OriginalNamespace
%PackageName %RemoveFromSaveSet %SerializeObject %SetModified
%ValidateObject %XMLGenerate CheckIdentifierCollisions CheckNameCollisions
Exists LoadFromClass SaveToClass XMLAfterExport
XMLBeforeExport XMLDTD XMLExport XMLExportInternal
XMLExportToStream XMLExportToString XMLGetSchemaImports XMLImport
XMLImportInternal XMLIsObjectEmpty XMLNew XMLSchema
XMLSchemaNamespace XMLSchemaType checkSequence checkSequenceIdentifiers


• parameter NAMESPACE = "http://www.intersystems.com/Ensemble/RecordMap";
NAMESPACE specifies the XML namespace to be used when projecting the class to XML. If NAMESPACE = "", the default namespace is used for the XML schema is used as the namespace for his class.
• parameter XMLSEQUENCE = 1;
If the XMLSEQUENCE = 1, then the order of the XML elements must match the order of the class properties. This allows us to deal with XML where the same field appears multiple times and is distinguished by the order.


• property Elements as list of EnsLib.RecordMap.Model.BatchElement(XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Required ];
The main sequence of RecordReference and RecordSequence objects.
• property Header as EnsLib.RecordMap.Model.HeaderRecord;
An optional Header that precedes the main part of the batch.
• property Trailer as EnsLib.RecordMap.Model.TrailerRecord;
An optional Trailer that appears after the main part of the batch.
• property annotation as %String(MAXLEN=1024);
Comments for the ComplexBatch. This text will appear as part of the class comments.
• property charEncoding as %String(XMLNAME="char_encoding",XMLPROJECTION="ATTRIBUTE") [ InitialExpression = "UTF-8",Required ];
Character encoding for imported data records
• property name as %String(MAXLEN=210,XMLPROJECTION="ATTRIBUTE") [ Required ];
Name of the ComplexMap.
• property targetClassname as %String(MAXLEN=220,XMLPROJECTION="ATTRIBUTE") [ Required ];
Name of the InterSystems IRIS class to represent the persistent Complex RecordMap. This class will be generated as a subclass of EnsLib.RecordMap.ComplexBatch. If the RECORDMAPGENERATED parameter of the existing class is 0, then the target class will not be modified by the RecordMap framework - all changes are then the responsibility of the user.


• private method %OnValidateObject() as %Status
Ensure that the model is valid.
• method CheckIdentifierCollisions() as %Status
Method that checks for identifier collisions in a Complex Batch definition.
• method CheckNameCollisions(pValidate As %Boolean = 0) as %Status
Method that checks for name collisions in a Complex Batch definition.
• classmethod Exists(pComplexBatchName As %String, Output pStatus As %Status) as %Boolean
• classmethod LoadFromClass(pClassname As %String, Output pStatus As %Status, Output pReadOnly As %Boolean, pConcurrency As %Integer = -1) as EnsLib.RecordMap.Model.ComplexBatch
Deserialize the XML from the ComplexBatch XData block into a ComplexBatch model.
• method SaveToClass() as %Status
Validates and then serializes the current Complex RecordMap structure into XML inside the ComplexBatch XData block in the relevant Complex RecordMap class.
• method checkSequence(pSequence As EnsLib.RecordMap.Model.RecordSequence, ByRef pNames As %String, pValidate As %Boolean = 0) as %Status
Helper method to check that a supplied sequence doesn't contain any name collisions.
• method checkSequenceIdentifiers(pSequence As EnsLib.RecordMap.Model.RecordSequence) as %Status
Helper method to check that a supplied sequence doesn't contain any identifier collisions.
• classmethod validatePropertyName(pPropName As %String) as %Status