' This class is "generated" and will be overwritten.
' Your customizations should be made in PersonalSalaryRecord.vb

Imports System.Data.SqlTypes
Imports BaseClasses
Imports BaseClasses.Data
Imports BaseClasses.Data.SqlProvider

Namespace Persons.Business

''' <summary>
''' The generated superclass for the <see cref="PersonalSalaryRecord"></see> class.
''' </summary>
''' <remarks>
''' This class is not intended to be instantiated directly.  To obtain an instance of this class, 
''' use the methods of the <see cref="PersonalSalaryTable"></see> class.
''' </remarks>
''' <seealso cref="PersonalSalaryTable"></seealso>
''' <seealso cref="PersonalSalaryRecord"></seealso>

<Serializable()> Public Class BasePersonalSalaryRecord
	Inherits PrimaryKeyRecord
	

	Public Shared Shadows ReadOnly TableUtils As PersonalSalaryTable = PersonalSalaryTable.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 PersonalSalaryRecord_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 PersonalSalaryRec As PersonalSalaryRecord = CType(sender,PersonalSalaryRecord)
        Validate_Inserting()
        If Not PersonalSalaryRec Is Nothing AndAlso Not PersonalSalaryRec.IsReadOnly Then
                End If
    End Sub

	'Evaluates Initialize when->Updating record formulas specified at the data access layer
    Public Overridable Sub PersonalSalaryRecord_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 PersonalSalaryRec As PersonalSalaryRecord = CType(sender,PersonalSalaryRecord)
        Validate_Updating()
        If Not PersonalSalaryRec Is Nothing AndAlso Not PersonalSalaryRec.IsReadOnly Then
                End If
    End Sub
    
    'Evaluates Initialize when->Reading record formulas specified at the data access layer
    Public Overridable Sub PersonalSalaryRecord_ReadRecord(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.ReadRecord
        'Apply Initialize->Reading record formula only if validation is successful.
        	        Dim PersonalSalaryRec As PersonalSalaryRecord = CType(sender,PersonalSalaryRecord)
        If Not PersonalSalaryRec Is Nothing AndAlso Not PersonalSalaryRec.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"

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.id field.
	''' </summary>
	Public Function Getid0Value() As ColumnValue
		Return Me.GetValue(TableUtils.id0Column)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.id field.
	''' </summary>
	Public Function Getid0FieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.id0Column).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.PersonalId field.
	''' </summary>
	Public Function GetPersonalIdValue() As ColumnValue
		Return Me.GetValue(TableUtils.PersonalIdColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.PersonalId field.
	''' </summary>
	Public Function GetPersonalIdFieldValue() As String
		Return CType(Me.GetValue(TableUtils.PersonalIdColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PersonalId field.
	''' </summary>
	Public Sub SetPersonalIdFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.PersonalIdColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PersonalId field.
	''' </summary>
	Public Sub SetPersonalIdFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.PersonalIdColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryDate field.
	''' </summary>
	Public Function GetSalaryDateValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryDateColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryDate field.
	''' </summary>
	Public Function GetSalaryDateFieldValue() As DateTime
		Return CType(Me.GetValue(TableUtils.SalaryDateColumn).ToDateTime(), DateTime)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryDate field.
	''' </summary>
	Public Sub SetSalaryDateFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryDateColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryDate field.
	''' </summary>
	Public Sub SetSalaryDateFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.SalaryDateColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryDate field.
	''' </summary>
	Public Sub SetSalaryDateFieldValue(ByVal val As DateTime)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryDateColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryRank field.
	''' </summary>
	Public Function GetSalaryRankValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryRankColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryRank field.
	''' </summary>
	Public Function GetSalaryRankFieldValue() As String
		Return CType(Me.GetValue(TableUtils.SalaryRankColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRank field.
	''' </summary>
	Public Sub SetSalaryRankFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryRankColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRank field.
	''' </summary>
	Public Sub SetSalaryRankFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryRankColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Function GetSalaryStepValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryStepColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Function GetSalaryStepFieldValue() As Double
		Return CType(Me.GetValue(TableUtils.SalaryStepColumn).ToDouble(), Double)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Sub SetSalaryStepFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryStepColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Sub SetSalaryStepFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.SalaryStepColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Sub SetSalaryStepFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryStepColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Sub SetSalaryStepFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryStepColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Sub SetSalaryStepFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryStepColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryYear field.
	''' </summary>
	Public Function GetSalaryYearValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryYearColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryYear field.
	''' </summary>
	Public Function GetSalaryYearFieldValue() As String
		Return CType(Me.GetValue(TableUtils.SalaryYearColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryYear field.
	''' </summary>
	Public Sub SetSalaryYearFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryYearColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryYear field.
	''' </summary>
	Public Sub SetSalaryYearFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryYearColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Function GetSalaryRoundValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryRoundColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Function GetSalaryRoundFieldValue() As Decimal
		Return CType(Me.GetValue(TableUtils.SalaryRoundColumn).ToDecimal(), Decimal)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Sub SetSalaryRoundFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryRoundColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Sub SetSalaryRoundFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.SalaryRoundColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Sub SetSalaryRoundFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryRoundColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Sub SetSalaryRoundFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryRoundColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Sub SetSalaryRoundFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryRoundColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Function GetSalaryAmoutValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryAmoutColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Function GetSalaryAmoutFieldValue() As Decimal
		Return CType(Me.GetValue(TableUtils.SalaryAmoutColumn).ToDecimal(), Decimal)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Sub SetSalaryAmoutFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryAmoutColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Sub SetSalaryAmoutFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.SalaryAmoutColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Sub SetSalaryAmoutFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryAmoutColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Sub SetSalaryAmoutFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryAmoutColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Sub SetSalaryAmoutFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryAmoutColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryExtra_NotUsed field.
	''' </summary>
	Public Function GetSalaryExtra_NotUsedValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryExtra_NotUsedColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryExtra_NotUsed field.
	''' </summary>
	Public Function GetSalaryExtra_NotUsedFieldValue() As String
		Return CType(Me.GetValue(TableUtils.SalaryExtra_NotUsedColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryExtra_NotUsed field.
	''' </summary>
	Public Sub SetSalaryExtra_NotUsedFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryExtra_NotUsedColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryExtra_NotUsed field.
	''' </summary>
	Public Sub SetSalaryExtra_NotUsedFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryExtra_NotUsedColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Function GetSalaryPlusValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryPlusColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Function GetSalaryPlusFieldValue() As Decimal
		Return CType(Me.GetValue(TableUtils.SalaryPlusColumn).ToDecimal(), Decimal)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Sub SetSalaryPlusFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryPlusColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Sub SetSalaryPlusFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.SalaryPlusColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Sub SetSalaryPlusFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryPlusColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Sub SetSalaryPlusFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryPlusColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Sub SetSalaryPlusFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryPlusColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Function GetPositionSalaryValue() As ColumnValue
		Return Me.GetValue(TableUtils.PositionSalaryColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Function GetPositionSalaryFieldValue() As Decimal
		Return CType(Me.GetValue(TableUtils.PositionSalaryColumn).ToDecimal(), Decimal)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Sub SetPositionSalaryFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.PositionSalaryColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Sub SetPositionSalaryFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.PositionSalaryColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Sub SetPositionSalaryFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.PositionSalaryColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Sub SetPositionSalaryFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.PositionSalaryColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Sub SetPositionSalaryFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.PositionSalaryColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryCommand field.
	''' </summary>
	Public Function GetSalaryCommandValue() As ColumnValue
		Return Me.GetValue(TableUtils.SalaryCommandColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.SalaryCommand field.
	''' </summary>
	Public Function GetSalaryCommandFieldValue() As String
		Return CType(Me.GetValue(TableUtils.SalaryCommandColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryCommand field.
	''' </summary>
	Public Sub SetSalaryCommandFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SalaryCommandColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.SalaryCommand field.
	''' </summary>
	Public Sub SetSalaryCommandFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SalaryCommandColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.CommandDate field.
	''' </summary>
	Public Function GetCommandDateValue() As ColumnValue
		Return Me.GetValue(TableUtils.CommandDateColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's PersonalSalary_.CommandDate field.
	''' </summary>
	Public Function GetCommandDateFieldValue() As DateTime
		Return CType(Me.GetValue(TableUtils.CommandDateColumn).ToDateTime(), DateTime)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.CommandDate field.
	''' </summary>
	Public Sub SetCommandDateFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.CommandDateColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.CommandDate field.
	''' </summary>
	Public Sub SetCommandDateFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.CommandDateColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's PersonalSalary_.CommandDate field.
	''' </summary>
	Public Sub SetCommandDateFieldValue(ByVal val As DateTime)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.CommandDateColumn)
	End Sub



#End Region

#Region "Convenience methods to get field names"

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.id field.
	''' </summary>
	Public Property id0() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.id0Column).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.id0Column)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property id0Specified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.id0Column)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property id0Default() As String
        Get
            Return TableUtils.id0Column.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.PersonalId field.
	''' </summary>
	Public Property PersonalId() As String
		Get 
			Return CType(Me.GetValue(TableUtils.PersonalIdColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.PersonalIdColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property PersonalIdSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.PersonalIdColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property PersonalIdDefault() As String
        Get
            Return TableUtils.PersonalIdColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryDate field.
	''' </summary>
	Public Property SalaryDate() As DateTime
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryDateColumn).ToDateTime(), DateTime)
		End Get
		Set (ByVal val As DateTime) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.SalaryDateColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryDateSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryDateColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryDateDefault() As String
        Get
            Return TableUtils.SalaryDateColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryRank field.
	''' </summary>
	Public Property SalaryRank() As String
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryRankColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.SalaryRankColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryRankSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryRankColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryRankDefault() As String
        Get
            Return TableUtils.SalaryRankColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryStep field.
	''' </summary>
	Public Property SalaryStep() As Double
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryStepColumn).ToDouble(), Double)
		End Get
		Set (ByVal val As Double) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.SalaryStepColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryStepSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryStepColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryStepDefault() As String
        Get
            Return TableUtils.SalaryStepColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryYear field.
	''' </summary>
	Public Property SalaryYear() As String
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryYearColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.SalaryYearColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryYearSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryYearColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryYearDefault() As String
        Get
            Return TableUtils.SalaryYearColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryRound field.
	''' </summary>
	Public Property SalaryRound() As Decimal
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryRoundColumn).ToDecimal(), Decimal)
		End Get
		Set (ByVal val As Decimal) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.SalaryRoundColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryRoundSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryRoundColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryRoundDefault() As String
        Get
            Return TableUtils.SalaryRoundColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryAmout field.
	''' </summary>
	Public Property SalaryAmout() As Decimal
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryAmoutColumn).ToDecimal(), Decimal)
		End Get
		Set (ByVal val As Decimal) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.SalaryAmoutColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryAmoutSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryAmoutColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryAmoutDefault() As String
        Get
            Return TableUtils.SalaryAmoutColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryExtra_NotUsed field.
	''' </summary>
	Public Property SalaryExtra_NotUsed() As String
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryExtra_NotUsedColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.SalaryExtra_NotUsedColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryExtra_NotUsedSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryExtra_NotUsedColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryExtra_NotUsedDefault() As String
        Get
            Return TableUtils.SalaryExtra_NotUsedColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryPlus field.
	''' </summary>
	Public Property SalaryPlus() As Decimal
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryPlusColumn).ToDecimal(), Decimal)
		End Get
		Set (ByVal val As Decimal) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.SalaryPlusColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryPlusSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryPlusColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryPlusDefault() As String
        Get
            Return TableUtils.SalaryPlusColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.PositionSalary field.
	''' </summary>
	Public Property PositionSalary() As Decimal
		Get 
			Return CType(Me.GetValue(TableUtils.PositionSalaryColumn).ToDecimal(), Decimal)
		End Get
		Set (ByVal val As Decimal) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.PositionSalaryColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property PositionSalarySpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.PositionSalaryColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property PositionSalaryDefault() As String
        Get
            Return TableUtils.PositionSalaryColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.SalaryCommand field.
	''' </summary>
	Public Property SalaryCommand() As String
		Get 
			Return CType(Me.GetValue(TableUtils.SalaryCommandColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.SalaryCommandColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SalaryCommandSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SalaryCommandColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SalaryCommandDefault() As String
        Get
            Return TableUtils.SalaryCommandColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's PersonalSalary_.CommandDate field.
	''' </summary>
	Public Property CommandDate() As DateTime
		Get 
			Return CType(Me.GetValue(TableUtils.CommandDateColumn).ToDateTime(), DateTime)
		End Get
		Set (ByVal val As DateTime) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.CommandDateColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property CommandDateSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.CommandDateColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property CommandDateDefault() As String
        Get
            Return TableUtils.CommandDateColumn.DefaultValue
        End Get
    End Property



#End Region

End Class
End Namespace
