Learning
Documentation
Community
Open Exchange
Global Masters
Home > Class Reference > ENSLIB namespace > EnsLib.RecordMap.Model.Record
Private  Storage   

EnsLib.RecordMap.Model.Record


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

Object representation of a RecordMap Record Note that this class is responsible for the persistence and swizzling of the Contents object graph containing Field and Composite objects

Inventory


Parameters Properties Methods Queries Indices ForeignKeys Triggers
2 18 5


Summary


Properties
Contents ReadOnly Separators Timestamp
allowEarlyTerminator annotation batchClass charEncoding
complexBatchManaged escapeSequence escaping fieldSeparator
label name padFromLeft paddingChars
recordTerminator repeatSeparator targetClassname type

Methods
%%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 Exists LoadFromClass
SaveToClass ValidateObjectMap XMLAfterExport XMLBeforeExport
XMLDTD XMLExport XMLExportInternal XMLExportToStream
XMLExportToString XMLGetSchemaImports XMLImport XMLImportInternal
XMLIsObjectEmpty XMLNew XMLSchema XMLSchemaNamespace
XMLSchemaType


Parameters


• 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.

Properties


• property Contents as list of EnsLib.RecordMap.Model.RecordProperty(XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Required ];
List of all Composite and Field objects which are contained in the first level of this Record - each Composite object must contain at least one embedded Composite or Field, and those embedded objects do not appear directly in this list.
• property Separators as list of %String(XMLITEMNAME="Separator");
Property for delimited Record types only. The Record will fail validation if this is set for other Record types. This is a list of Separators (or delimiters), in nesting order from outermost to innermost.
• property allowEarlyTerminator as EnsLib.RecordMap.Model.DataType.Boolean(XMLPROJECTION="ATTRIBUTE");
Property for fixedwidth Record types only. The Record will fail validation if this is set for other Record types. When true, this flag indicates whether an earlier than expected record terminator will simply set all subsequent properties to "" instead of treating the short record as invalid.
• property annotation as %String(MAXLEN=1024);
Comments for the Record. This text will appear as part of the class comments.
• property batchClass as %String(MAXLEN=220,XMLPROJECTION="ATTRIBUTE");
Name of the batch class (if any) which should be associated with this RecordMap. NOTE: This only applies to simple Batch classes which extend EnsLib.RecordMap.Batch.
• property charEncoding as %String(XMLNAME="char_encoding",XMLPROJECTION="ATTRIBUTE") [ InitialExpression = "UTF-8",Required ];
Character encoding for imported data records
• property complexBatchManaged as EnsLib.RecordMap.Model.DataType.Boolean(XMLPROJECTION="ATTRIBUTE");
Flag to indicate whether the RecordMap can be included in a ComplexMap.
• property escapeSequence as %String(XMLPROJECTION="ATTRIBUTE");
Property for delimited Record types only. The Record will fail validation if this is set for other Record types. This represents the character(s) used for escaping as determined by the value of the escaping property.
• property escaping as %String(VALUELIST=",,quote,all",XMLPROJECTION="ATTRIBUTE");
Property for delimited Record types only. The Record will fail validation if this is set for other Record types. Indicate which escape strategy is in use, where the escapeSequence captures the characters to be used.
• property fieldSeparator as %String(XMLPROJECTION="ATTRIBUTE");
Property for fixed width Record types only. The Record will fail validation if this is set for other Record types. This indicates whether a character (or characters) must appear between all Fields. Note that the width of this separator will be included in calculations for later Fields.
• property label as %String(MAXLEN="",XMLPROJECTION="ATTRIBUTE");
Leading character data prior to the actual record contents.
• property name as %String(MAXLEN=220,XMLPROJECTION="ATTRIBUTE") [ Required ];
Name of the RecordMap.
• property padFromLeft as EnsLib.RecordMap.Model.DataType.Boolean(XMLPROJECTION="ATTRIBUTE");
Controls right justification (i.e. padding from the left).
• property paddingChars as %String(XMLPROJECTION="ATTRIBUTE");
Character(s) to use for padding. Required for fixed width Records
• property recordTerminator as %String(XMLPROJECTION="ATTRIBUTE");
Character(s) used to indicate the end of a particular record.
• property repeatSeparator as %String(XMLPROJECTION="ATTRIBUTE");
Property for delimited Record types only. The Record will fail validation if this is set for other Record types. If a delimited record contains repeating fields, this separator indicates what character(s) should be used to delimit the repeating data.
• property targetClassname as %String(MAXLEN=220,XMLPROJECTION="ATTRIBUTE") [ Required ];
Name of the InterSystems IRIS class to represent the Record. This class will be generated as a subclass of EnsLib.RecordMap.Base. 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.
• property type as EnsLib.RecordMap.Model.DataType.RecordType(XMLPROJECTION="ATTRIBUTE") [ InitialExpression = "delimited",Required ];
The type of Record; options include delimited and fixed width types.

Methods


• private method %OnValidateObject() as %Status
Perform validation on properties specific to the particular Record type
• classmethod Exists(pRecordMapName As %String, ByRef pStatus As %Status) as %Boolean
Method to check whether a specified RecordMap exists.
• classmethod LoadFromClass(pClassname As %String, Output pStatus As %Status, Output pReadOnly As %Boolean, pConcurrency As %Integer = -1) as EnsLib.RecordMap.Model.Record
Deserialize the XML from the RecordMap XData block and create a Record object based on that XML.
• method SaveToClass() as %Status
Validates and then serializes the current RecordMap structure into XML inside the RecordMap XData block in the relevant RecordMap class.
• classmethod ValidateObjectMap(pRecord As EnsLib.RecordMap.Model.Record) as %Status
Check for collisions in object names before save