BEAUTIFUL! It works great. Thanks Cathal. Now to recap in case someone has the same issue.
Goal: Have an InfoObject with boolean properties such that null boolean values are passed to the database Table when those boolean properties are null otherwise pass true or false.
Solution: Construct the Info Object boolean property as shown below and make sure the SqlDataProvider does in fact wrap the parameter with the GetNull() method.
INFO OBJECT CLASS
Public Class ScheduleHistoryItem
Private _Succeeded As Boolean
Public Sub New()
_Succeeded = Null.NullBoolean
End Sub
Public Sub New(ByVal objScheduleItem As ScheduleItem)
Me.AttachToEvent = objScheduleItem.AttachToEvent
Me.CatchUpEnabled = objScheduleItem.CatchUpEnabled
_Succeeded = Null.NullBoolean 'NOTE THE DIFFERENCE FROM THE OTHER PROPERTIES
End Sub
Public Property Succeeded() As Boolean
Get
Return _Succeeded
End Get
Set(ByVal Value As Boolean)
_Succeeded = Value
End Set
End Property
End Class