' This class is "generated" and will be overwritten. ' Your customizations should be made in RelationRecord.vb Imports System.Data.SqlTypes Imports BaseClasses Imports BaseClasses.Data Imports BaseClasses.Data.SqlProvider Namespace Persons.Business ''' ''' The generated superclass for the class. ''' ''' ''' This class is not intended to be instantiated directly. To obtain an instance of this class, ''' use the methods of the class. ''' ''' ''' Public Class BaseRelationRecord Inherits PrimaryKeyRecord Public Shared Shadows ReadOnly TableUtils As RelationTable = RelationTable.Instance ' Constructors Protected Sub New() MyBase.New(TableUtils) End Sub Protected Sub New(ByVal record As PrimaryKeyRecord) MyBase.New(record, TableUtils) End Sub 'Evaluates Initialize when->Inserting record formulas specified at the data access layer Public Overridable Sub RelationRecord_InsertingRecord(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles Me.InsertingRecord 'Apply Initialize->Inserting record formula only if validation is successful. Dim RelationRec As RelationRecord = CType(sender,RelationRecord) Validate_Inserting() If Not RelationRec Is Nothing AndAlso Not RelationRec.IsReadOnly Then End If End Sub 'Evaluates Initialize when->Updating record formulas specified at the data access layer Public Overridable Sub RelationRecord_UpdatingRecord(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles Me.UpdatingRecord 'Apply Initialize->Updating record formula only if validation is successful. Dim RelationRec As RelationRecord = CType(sender,RelationRecord) Validate_Updating() If Not RelationRec Is Nothing AndAlso Not RelationRec.IsReadOnly Then End If End Sub 'Evaluates Initialize when->Reading record formulas specified at the data access layer Public Overridable Sub RelationRecord_ReadRecord(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.ReadRecord 'Apply Initialize->Reading record formula only if validation is successful. Dim RelationRec As RelationRecord = CType(sender,RelationRecord) If Not RelationRec Is Nothing AndAlso Not RelationRec.IsReadOnly Then End If End Sub 'Evaluates Validate when->Inserting formulas specified at the data access layer Public Overridable Sub Validate_Inserting () Dim fullValidationMessage As String = "" Dim validationMessage As String = "" dim formula as String = "" If validationMessage <> "" AndAlso validationMessage.ToLower() <> "true" Then fullValidationMessage &= validationMessage & vbCrLf End If If fullValidationMessage <> "" Then Throw New Exception(fullValidationMessage) End If End Sub 'Evaluates Validate when->Updating formulas specified at the data access layer Public Overridable Sub Validate_Updating () Dim fullValidationMessage As String = "" Dim validationMessage As String = "" dim formula as String = "" If validationMessage <> "" AndAlso validationMessage.ToLower() <> "true" Then fullValidationMessage &= validationMessage & vbCrLf End If If fullValidationMessage <> "" Then Throw New Exception(fullValidationMessage) End If End Sub Public Overridable Function EvaluateFormula(ByVal formula As String, Optional ByVal dataSourceForEvaluate As BaseClasses.Data.BaseRecord = Nothing, Optional ByVal format As String = Nothing) As String Dim e As Data.BaseFormulaEvaluator = New Data.BaseFormulaEvaluator() ' All variables referred to in the formula are expected to be ' properties of the DataSource. For example, referring to ' UnitPrice as a variable will refer to DataSource.UnitPrice e.DataSource = dataSourceForEvaluate Dim resultObj As Object = e.Evaluate(formula) If resultObj Is Nothing Then Return "" End If Return resultObj.ToString() End Function #Region "Convenience methods to get/set values of fields" ''' ''' This is a convenience method that provides direct access to the value of the record's Relation_.RelationId field. ''' Public Function GetRelationIdValue() As ColumnValue Return Me.GetValue(TableUtils.RelationIdColumn) End Function ''' ''' This is a convenience method that provides direct access to the value of the record's Relation_.RelationId field. ''' Public Function GetRelationIdFieldValue() As Int32 Return CType(Me.GetValue(TableUtils.RelationIdColumn).ToInt32(), Int32) End Function ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.RelationId field. ''' Public Sub SetRelationIdFieldValue(ByVal val As ColumnValue) Me.SetValue(val, TableUtils.RelationIdColumn) End Sub ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.RelationId field. ''' Public Sub SetRelationIdFieldValue(ByVal val As String) Me.SetString(val, TableUtils.RelationIdColumn) End Sub ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.RelationId field. ''' Public Sub SetRelationIdFieldValue(ByVal val As Double) Dim colValue As ColumnValue = New ColumnValue(val) Me.SetValue(colValue, TableUtils.RelationIdColumn) End Sub ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.RelationId field. ''' Public Sub SetRelationIdFieldValue(ByVal val As Decimal) Dim colValue As ColumnValue = New ColumnValue(val) Me.SetValue(colValue, TableUtils.RelationIdColumn) End Sub ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.RelationId field. ''' Public Sub SetRelationIdFieldValue(ByVal val As Int64) Dim colValue As ColumnValue = New ColumnValue(val) Me.SetValue(colValue, TableUtils.RelationIdColumn) End Sub ''' ''' This is a convenience method that provides direct access to the value of the record's Relation_.Relation field. ''' Public Function GetRelationValue() As ColumnValue Return Me.GetValue(TableUtils.RelationColumn) End Function ''' ''' This is a convenience method that provides direct access to the value of the record's Relation_.Relation field. ''' Public Function GetRelationFieldValue() As String Return CType(Me.GetValue(TableUtils.RelationColumn).ToString(), String) End Function ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.Relation field. ''' Public Sub SetRelationFieldValue(ByVal val As ColumnValue) Me.SetValue(val, TableUtils.RelationColumn) End Sub ''' ''' This is a convenience method that allows direct modification of the value of the record's Relation_.Relation field. ''' Public Sub SetRelationFieldValue(ByVal val As String) Dim colValue As ColumnValue = New ColumnValue(val) Me.SetValue(colValue, TableUtils.RelationColumn) End Sub #End Region #Region "Convenience methods to get field names" ''' ''' This is a convenience property that provides direct access to the value of the record's Relation_.RelationId field. ''' Public Property RelationId() As Int32 Get Return CType(Me.GetValue(TableUtils.RelationIdColumn).ToInt32(), Int32) End Get Set (ByVal val As Int32) Dim colValue As ColumnValue = New ColumnValue(val) Me.SetValue(colValue, TableUtils.RelationIdColumn) End Set End Property ''' ''' This is a convenience method that can be used to determine that the column is set. ''' Public ReadOnly Property RelationIdSpecified() As Boolean Get Dim val As ColumnValue = Me.GetValue(TableUtils.RelationIdColumn) If val Is Nothing OrElse val.IsNull Then Return False End If Return True End Get End Property ''' ''' This is a convenience method that can be used to get the default value of a column. ''' Public ReadOnly Property RelationIdDefault() As String Get Return TableUtils.RelationIdColumn.DefaultValue End Get End Property ''' ''' This is a convenience property that provides direct access to the value of the record's Relation_.Relation field. ''' Public Property Relation() As String Get Return CType(Me.GetValue(TableUtils.RelationColumn).ToString(), String) End Get Set (ByVal Value As String) Me.SetString(value, TableUtils.RelationColumn) End Set End Property ''' ''' This is a convenience method that can be used to determine that the column is set. ''' Public ReadOnly Property RelationSpecified() As Boolean Get Dim val As ColumnValue = Me.GetValue(TableUtils.RelationColumn) If val Is Nothing OrElse val.IsNull Then Return False End If Return True End Get End Property ''' ''' This is a convenience method that can be used to get the default value of a column. ''' Public ReadOnly Property RelationDefault() As String Get Return TableUtils.RelationColumn.DefaultValue End Get End Property #End Region End Class End Namespace