How to fix ColumnIsNullException error in Script transform in SSIS 2014

  • Hello all. I encountered the following error after migrating the ssis packages from SQl 2005 to SQL 2014. It seems to work fine in 2005 but failed in 2014. It is a custom script transformation inside a data flow task. NOT a script task.

    Error: System.Data.EvaluateException: Cannot perform '=' operation on System.Date and system.Int32.

    at Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost.HandleUserException(Exception e)

    at Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost.ProcessInput(Int32 inputID, PipelineBuffer buffer)

    at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostProcessInput(IDTSManagedComponentWrapper100 wrapper, Int32 inputID, IDTSBuffer100 pDTSBuffer, IntPtr bufferWirePacket)

    My code is below. Please note that in the pattern " + Row.XXXX.ToString() + " in the below code, the XXXX is the input column name from Input0.

    Scriptmain.vb

    Imports System

    Imports System.Data

    Imports System.Math

    Imports Microsoft.SqlServer.Dts.Runtime

    Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper

    Imports Microsoft.SqlServer.Dts.Runtime.Wrapper

    Imports System.Data.OleDb

    Imports System.Data.SqlClient

    Imports System.Xml

    <Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute> _

    <CLSCompliant(False)> _

    Public Class ScriptMain

    Inherits UserComponent

    ' The execution engine calls this method when the task executes.

    ' To access the object model, use the Dts object. Connections, variables, events,

    ' and logging features are available as static members of the Dts class.

    ' Before returning from this method, set the value of Dts.TaskResult to indicate success or failure.

    '

    ' To open Code and Text Editor Help, press F1.

    ' To open Object Browser, press Ctrl+Alt+J.

    Dim oleDA As New OleDbDataAdapter

    Dim command As New OleDbCommand

    Dim dt As New DataTable

    Dim dtrow() As DataRow

    Dim col As DataColumn

    Dim UnknownTimeKey As Int32

    Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)

    If Row.BaslGuarRatingDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.BaslGuarRatingDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.BaslGuarRatingTimeKey = CInt(dtrow(0)(0))

    Else

    Row.BaslGuarRatingTimeKey = UnknownTimeKey

    End If

    End If

    If Row.CODt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.CODt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.COTimeKey = CInt(dtrow(0)(0))

    Else

    Row.COTimeKey = UnknownTimeKey

    End If

    End If

    If Row.EffectiveDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.EffectiveDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.EffectiveTimeKey = CInt(dtrow(0)(0))

    Else

    Row.EffectiveTimeKey = UnknownTimeKey

    End If

    End If

    If Row.RiskRatingDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.RiskRatingDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.RiskRatingTimekey = CInt(dtrow(0)(0))

    Else

    Row.RiskRatingTimekey = UnknownTimeKey

    End If

    End If

    If Row.LastRenewDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.LastRenewDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.LastRenewTimeKey = CInt(dtrow(0)(0))

    Else

    Row.LastRenewTimeKey = UnknownTimeKey

    End If

    End If

    If Row.LegalMaturDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.LegalMaturDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.LegalMaturTimeKey = CInt(dtrow(0)(0))

    Else

    Row.LegalMaturTimeKey = UnknownTimeKey

    End If

    End If

    If Row.NextDueDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.NextDueDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.NextDueTimeKey = CInt(dtrow(0)(0))

    Else

    Row.NextDueTimeKey = UnknownTimeKey

    End If

    End If

    If Row.NextReprcDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.NextReprcDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.NextReprcTimeKey = CInt(dtrow(0)(0))

    Else

    Row.NextReprcTimeKey = UnknownTimeKey

    End If

    End If

    If Row.ObgtnEffDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.ObgtnEffDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.ObgtnEffTimeKey = CInt(dtrow(0)(0))

    Else

    Row.ObgtnEffTimeKey = UnknownTimeKey

    End If

    End If

    If Row.ObgtnOrigDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.ObgtnOrigDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.ObgtnOrigTimeKey = CInt(dtrow(0)(0))

    Else

    Row.ObgtnOrigTimeKey = UnknownTimeKey

    End If

    End If

    If Row.ObgtnPostDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.ObgtnPostDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.ObgtnPostTimeKey = CInt(dtrow(0)(0))

    Else

    Row.ObgtnPostTimeKey = UnknownTimeKey

    End If

    End If

    If Row.OrigMaturDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.OrigMaturDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.OrigMaturTimeKey = CInt(dtrow(0)(0))

    Else

    Row.OrigMaturTimeKey = UnknownTimeKey

    End If

    End If

    If Row.PastDueDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.PastDueDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.PastDueTimeKey = CInt(dtrow(0)(0))

    Else

    Row.PastDueTimeKey = UnknownTimeKey

    End If

    End If

    If Row.PrincPaidToDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.PrincPaidToDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.PrincPaidToTimeKey = CInt(dtrow(0)(0))

    Else

    Row.PrincPaidToTimeKey = UnknownTimeKey

    End If

    End If

    If Row.PrincPrevDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.PrincPrevDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.PrincPrevTimekey = CInt(dtrow(0)(0))

    Else

    Row.PrincPrevTimekey = UnknownTimeKey

    End If

    End If

    If Row.REAMNextSchedDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.REAMNextSchedDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.REAMNextSchedTimeKey = CInt(dtrow(0)(0))

    Else

    Row.REAMNextSchedTimeKey = UnknownTimeKey

    End If

    End If

    If Row.REAMPeriodDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.REAMPeriodDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.REAMPeriodTimeKey = CInt(dtrow(0)(0))

    Else

    Row.REAMPeriodTimeKey = UnknownTimeKey

    End If

    End If

    If Row.StatChngDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.StatChngDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.StatChngTimeKey = CInt(dtrow(0)(0))

    Else

    Row.StatChngTimeKey = UnknownTimeKey

    End If

    End If

    If Row.RenewPostDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.RenewPostDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.RenewPostTimeKey = CInt(dtrow(0)(0))

    Else

    Row.RenewPostTimeKey = UnknownTimeKey

    End If

    End If

    If Row.CloseDt_IsNull = True Then

    dtrow = dt.Select("Full_Dt = 65540")

    Else

    dtrow = dt.Select("Full_Dt = '" + Row.CloseDt.ToString() + "'")

    If dtrow.GetUpperBound(0) = 0 Then

    Row.CloseTimeKey = CInt(dtrow(0)(0))

    Else

    Row.CloseTimeKey = UnknownTimeKey

    End If

    End If

    End Sub

    Public Overrides Sub PreExecute()

    MyBase.PreExecute()

    oleDA.Fill(dt, Me.Variables.DimTimeKeys)

    'capture the unknown key

    dtrow = dt.Select("Date_Desc = 'Unknown'")

    If dtrow.GetUpperBound(0) = 0 Then

    UnknownTimeKey = CInt(dtrow(0)(0))

    End If

    End Sub

    End Class

    ---------------------------------------------------

    BufferWrapper.vb

    Option Strict Off ' This allows usage of PipelineBuffer typed accessors.

    Imports System

    Imports System.Data

    Imports Microsoft.SqlServer.Dts.Pipeline

    Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper

    <CLSCompliant(False)> _

    Public Class Input0Buffer

    Inherits ScriptBuffer

    Public Sub New(ByVal Buffer As PipelineBuffer, ByVal BufferColumnIndexes As Integer(), ByVal OutputMap As OutputNameMap)

    MyBase.New(Buffer, BufferColumnIndexes, OutputMap)

    End Sub

    Public Property [BaslGuarRatingTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(0))

    End Get

    Set

    Me(0) = Value

    End Set

    End Property

    Public Property [BaslGuarRatingTimeKey_IsNull] As Boolean

    Get

    Return IsNull(0)

    End Get

    Set

    If (value)

    SetNull(0)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [COTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(1))

    End Get

    Set

    Me(1) = Value

    End Set

    End Property

    Public Property [COTimeKey_IsNull] As Boolean

    Get

    Return IsNull(1)

    End Get

    Set

    If (value)

    SetNull(1)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [EffectiveTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(2))

    End Get

    Set

    Me(2) = Value

    End Set

    End Property

    Public Property [EffectiveTimeKey_IsNull] As Boolean

    Get

    Return IsNull(2)

    End Get

    Set

    If (value)

    SetNull(2)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [RiskRatingTimekey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(3))

    End Get

    Set

    Me(3) = Value

    End Set

    End Property

    Public Property [RiskRatingTimekey_IsNull] As Boolean

    Get

    Return IsNull(3)

    End Get

    Set

    If (value)

    SetNull(3)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [LastRenewTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(4))

    End Get

    Set

    Me(4) = Value

    End Set

    End Property

    Public Property [LastRenewTimeKey_IsNull] As Boolean

    Get

    Return IsNull(4)

    End Get

    Set

    If (value)

    SetNull(4)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [LegalMaturTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(5))

    End Get

    Set

    Me(5) = Value

    End Set

    End Property

    Public Property [LegalMaturTimeKey_IsNull] As Boolean

    Get

    Return IsNull(5)

    End Get

    Set

    If (value)

    SetNull(5)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [NextDueTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(6))

    End Get

    Set

    Me(6) = Value

    End Set

    End Property

    Public Property [NextDueTimeKey_IsNull] As Boolean

    Get

    Return IsNull(6)

    End Get

    Set

    If (value)

    SetNull(6)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [NextReprcTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(7))

    End Get

    Set

    Me(7) = Value

    End Set

    End Property

    Public Property [NextReprcTimeKey_IsNull] As Boolean

    Get

    Return IsNull(7)

    End Get

    Set

    If (value)

    SetNull(7)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [ObgtnEffTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(8))

    End Get

    Set

    Me(8) = Value

    End Set

    End Property

    Public Property [ObgtnEffTimeKey_IsNull] As Boolean

    Get

    Return IsNull(8)

    End Get

    Set

    If (value)

    SetNull(8)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [ObgtnOrigTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(9))

    End Get

    Set

    Me(9) = Value

    End Set

    End Property

    Public Property [ObgtnOrigTimeKey_IsNull] As Boolean

    Get

    Return IsNull(9)

    End Get

    Set

    If (value)

    SetNull(9)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [ObgtnPostTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(10))

    End Get

    Set

    Me(10) = Value

    End Set

    End Property

    Public Property [ObgtnPostTimeKey_IsNull] As Boolean

    Get

    Return IsNull(10)

    End Get

    Set

    If (value)

    SetNull(10)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [OrigMaturTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(11))

    End Get

    Set

    Me(11) = Value

    End Set

    End Property

    Public Property [OrigMaturTimeKey_IsNull] As Boolean

    Get

    Return IsNull(11)

    End Get

    Set

    If (value)

    SetNull(11)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [PastDueTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(12))

    End Get

    Set

    Me(12) = Value

    End Set

    End Property

    Public Property [PastDueTimeKey_IsNull] As Boolean

    Get

    Return IsNull(12)

    End Get

    Set

    If (value)

    SetNull(12)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [PrincPaidToTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(13))

    End Get

    Set

    Me(13) = Value

    End Set

    End Property

    Public Property [PrincPaidToTimeKey_IsNull] As Boolean

    Get

    Return IsNull(13)

    End Get

    Set

    If (value)

    SetNull(13)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [PrincPrevTimekey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(14))

    End Get

    Set

    Me(14) = Value

    End Set

    End Property

    Public Property [PrincPrevTimekey_IsNull] As Boolean

    Get

    Return IsNull(14)

    End Get

    Set

    If (value)

    SetNull(14)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [REAMNextSchedTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(15))

    End Get

    Set

    Me(15) = Value

    End Set

    End Property

    Public Property [REAMNextSchedTimeKey_IsNull] As Boolean

    Get

    Return IsNull(15)

    End Get

    Set

    If (value)

    SetNull(15)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [REAMPeriodTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(16))

    End Get

    Set

    Me(16) = Value

    End Set

    End Property

    Public Property [REAMPeriodTimeKey_IsNull] As Boolean

    Get

    Return IsNull(16)

    End Get

    Set

    If (value)

    SetNull(16)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public Property [StatChngTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(17))

    End Get

    Set

    Me(17) = Value

    End Set

    End Property

    Public Property [StatChngTimeKey_IsNull] As Boolean

    Get

    Return IsNull(17)

    End Get

    Set

    If (value)

    SetNull(17)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public ReadOnly Property [EffectiveDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(18))

    End Get

    End Property

    Public ReadOnly Property [EffectiveDt_IsNull] As Boolean

    Get

    Return IsNull(18)

    End Get

    End Property

    Public ReadOnly Property [LastRenewDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(19))

    End Get

    End Property

    Public ReadOnly Property [LastRenewDt_IsNull] As Boolean

    Get

    Return IsNull(19)

    End Get

    End Property

    Public ReadOnly Property [NextDueDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(20))

    End Get

    End Property

    Public ReadOnly Property [NextDueDt_IsNull] As Boolean

    Get

    Return IsNull(20)

    End Get

    End Property

    Public ReadOnly Property [NextReprcDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(21))

    End Get

    End Property

    Public ReadOnly Property [NextReprcDt_IsNull] As Boolean

    Get

    Return IsNull(21)

    End Get

    End Property

    Public ReadOnly Property [ObgtnEffDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(22))

    End Get

    End Property

    Public ReadOnly Property [ObgtnEffDt_IsNull] As Boolean

    Get

    Return IsNull(22)

    End Get

    End Property

    Public ReadOnly Property [ObgtnOrigDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(23))

    End Get

    End Property

    Public ReadOnly Property [ObgtnOrigDt_IsNull] As Boolean

    Get

    Return IsNull(23)

    End Get

    End Property

    Public ReadOnly Property [ObgtnPostDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(24))

    End Get

    End Property

    Public ReadOnly Property [ObgtnPostDt_IsNull] As Boolean

    Get

    Return IsNull(24)

    End Get

    End Property

    Public ReadOnly Property [PrincPaidToDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(25))

    End Get

    End Property

    Public ReadOnly Property [PrincPaidToDt_IsNull] As Boolean

    Get

    Return IsNull(25)

    End Get

    End Property

    Public ReadOnly Property [PrincPrevDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(26))

    End Get

    End Property

    Public ReadOnly Property [PrincPrevDt_IsNull] As Boolean

    Get

    Return IsNull(26)

    End Get

    End Property

    Public ReadOnly Property [StatChngDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(27))

    End Get

    End Property

    Public ReadOnly Property [StatChngDt_IsNull] As Boolean

    Get

    Return IsNull(27)

    End Get

    End Property

    Public ReadOnly Property [PastDueDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(28))

    End Get

    End Property

    Public ReadOnly Property [PastDueDt_IsNull] As Boolean

    Get

    Return IsNull(28)

    End Get

    End Property

    Public ReadOnly Property [REAMNextSchedDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(29))

    End Get

    End Property

    Public ReadOnly Property [REAMNextSchedDt_IsNull] As Boolean

    Get

    Return IsNull(29)

    End Get

    End Property

    Public ReadOnly Property [REAMPeriodDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(30))

    End Get

    End Property

    Public ReadOnly Property [REAMPeriodDt_IsNull] As Boolean

    Get

    Return IsNull(30)

    End Get

    End Property

    Public ReadOnly Property [CODt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(31))

    End Get

    End Property

    Public ReadOnly Property [CODt_IsNull] As Boolean

    Get

    Return IsNull(31)

    End Get

    End Property

    Public Property [RenewPostTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(32))

    End Get

    Set

    Me(32) = Value

    End Set

    End Property

    Public Property [RenewPostTimeKey_IsNull] As Boolean

    Get

    Return IsNull(32)

    End Get

    Set

    If (value)

    SetNull(32)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public ReadOnly Property [BaslGuarRatingDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(33))

    End Get

    End Property

    Public ReadOnly Property [BaslGuarRatingDt_IsNull] As Boolean

    Get

    Return IsNull(33)

    End Get

    End Property

    Public ReadOnly Property [LegalMaturDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(34))

    End Get

    End Property

    Public ReadOnly Property [LegalMaturDt_IsNull] As Boolean

    Get

    Return IsNull(34)

    End Get

    End Property

    Public ReadOnly Property [RiskRatingDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(35))

    End Get

    End Property

    Public ReadOnly Property [RiskRatingDt_IsNull] As Boolean

    Get

    Return IsNull(35)

    End Get

    End Property

    Public ReadOnly Property [OrigMaturDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(36))

    End Get

    End Property

    Public ReadOnly Property [OrigMaturDt_IsNull] As Boolean

    Get

    Return IsNull(36)

    End Get

    End Property

    Public ReadOnly Property [RenewPostDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(37))

    End Get

    End Property

    Public ReadOnly Property [RenewPostDt_IsNull] As Boolean

    Get

    Return IsNull(37)

    End Get

    End Property

    Public Property [CloseTimeKey]() As Int32

    Get

    Return Buffer.GetInt32(Me.BufferColumnIndexes(38))

    End Get

    Set

    Me(38) = Value

    End Set

    End Property

    Public Property [CloseTimeKey_IsNull] As Boolean

    Get

    Return IsNull(38)

    End Get

    Set

    If (value)

    SetNull(38)

    Else

    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")

    End If

    End Set

    End Property

    Public ReadOnly Property [CloseDt]() As DateTime

    Get

    Return Buffer.GetDateTime(Me.BufferColumnIndexes(39))

    End Get

    End Property

    Public ReadOnly Property [CloseDt_IsNull] As Boolean

    Get

    Return IsNull(39)

    End Get

    End Property

    Public Overloads Function NextRow() As Boolean

    NextRow = MyBase.NextRow()

    End Function

    Public Overloads Function EndOfRowset() As Boolean

    EndOfRowset = MyBase.EndOfRowset

    End Function

    End Class

  • the error clearly says that you are comparing date and int value in your code. you need to convert your date into int and compare

Viewing 2 posts - 1 through 1 (of 1 total)

You must be logged in to reply to this topic. Login to reply