' <fileinfo name="InvoicesRow_Base.vb">
'       <copyright>
'           All rights reserved.
'       </copyright>
'       <remarks>
'           Do not change this source code manually. Changes to this file may 
'           cause incorrect behavior and will be lost if the code is regenerated.
'       </remarks>
'       <generator rewritefile="True" infourl="http://www.SharpPower.com">RapTier</generator>
' </fileinfo>

Option Strict Off
Option Explicit On

Imports System

''' <summary>
''' The base class for <see cref="InvoicesRow"/> that 
''' represents a record in the <c>Invoices</c> view.
''' </summary>
''' <remarks>
''' Do not change this source code manually. Update the <see cref="InvoicesRow"/>
''' class if you need to add or change some functionality.
''' </remarks>
Public MustInherit Class InvoicesRow_Base
    Private _shipName As String
    Private _shipAddress As String
    Private _shipCity As String
    Private _shipRegion As String
    Private _shipPostalCode As String
    Private _shipCountry As String
    Private _customerID As String
    Private _customerName As String
    Private _address As String
    Private _city As String
    Private _region As String
    Private _postalCode As String
    Private _country As String
    Private _salesperson As String
    Private _orderID As Integer
    Private _orderDate As Date
    Private _orderDateNull As Boolean = True
    Private _requiredDate As Date
    Private _requiredDateNull As Boolean = True
    Private _shippedDate As Date
    Private _shippedDateNull As Boolean = True
    Private _shipperName As String
    Private _productID As Integer
    Private _productName As String
    Private _unitPrice As Decimal
    Private _quantity As Short
    Private _discount As Single
    Private _extendedPrice As Decimal
    Private _extendedPriceNull As Boolean = True
    Private _freight As Decimal
    Private _freightNull As Boolean = True

    ''' <summary>
    ''' Initializes a new instance of the <see cref="InvoicesRow_Base"/> class.
    ''' </summary>
    Public Sub New()
        MyBase.New()
        ' EMPTY
    End Sub

        ''' <summary>
        ''' Gets or sets the <c>ShipName</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShipName</c> column value.</value>
    Public Property ShipName As String
        Get
            Return _shipName
        End Get
        Set
            _shipName = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShipAddress</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShipAddress</c> column value.</value>
    Public Property ShipAddress As String
        Get
            Return _shipAddress
        End Get
        Set
            _shipAddress = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShipCity</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShipCity</c> column value.</value>
    Public Property ShipCity As String
        Get
            Return _shipCity
        End Get
        Set
            _shipCity = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShipRegion</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShipRegion</c> column value.</value>
    Public Property ShipRegion As String
        Get
            Return _shipRegion
        End Get
        Set
            _shipRegion = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShipPostalCode</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShipPostalCode</c> column value.</value>
    Public Property ShipPostalCode As String
        Get
            Return _shipPostalCode
        End Get
        Set
            _shipPostalCode = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShipCountry</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShipCountry</c> column value.</value>
    Public Property ShipCountry As String
        Get
            Return _shipCountry
        End Get
        Set
            _shipCountry = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>CustomerID</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>CustomerID</c> column value.</value>
    Public Property CustomerID As String
        Get
            Return _customerID
        End Get
        Set
            _customerID = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>CustomerName</c> column value.
        ''' </summary>
        ''' <value>The <c>CustomerName</c> column value.</value>
    Public Property CustomerName As String
        Get
            Return _customerName
        End Get
        Set
            _customerName = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Address</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>Address</c> column value.</value>
    Public Property Address As String
        Get
            Return _address
        End Get
        Set
            _address = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>City</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>City</c> column value.</value>
    Public Property City As String
        Get
            Return _city
        End Get
        Set
            _city = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Region</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>Region</c> column value.</value>
    Public Property Region As String
        Get
            Return _region
        End Get
        Set
            _region = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>PostalCode</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>PostalCode</c> column value.</value>
    Public Property PostalCode As String
        Get
            Return _postalCode
        End Get
        Set
            _postalCode = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Country</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>Country</c> column value.</value>
    Public Property Country As String
        Get
            Return _country
        End Get
        Set
            _country = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Salesperson</c> column value.
        ''' </summary>
        ''' <value>The <c>Salesperson</c> column value.</value>
    Public Property Salesperson As String
        Get
            Return _salesperson
        End Get
        Set
            _salesperson = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>OrderID</c> column value.
        ''' </summary>
        ''' <value>The <c>OrderID</c> column value.</value>
    Public Property OrderID As Integer
        Get
            Return _orderID
        End Get
        Set
            _orderID = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>OrderDate</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>OrderDate</c> column value.</value>
    Public Property OrderDate As Date
        Get
            If IsOrderDateNull Then
                Throw New InvalidOperationException("Cannot get value because it is DBNull.")
            End If
            Return _orderDate
        End Get
        Set
            _orderDateNull = false
            _orderDate = value
        End Set
    End Property

    ''' <summary>
    ''' Indicates whether the <see cref="OrderDate"/>
    ''' property value is null.
    ''' </summary>
    ''' <value>true if the property value is null, otherwise false.</value>
    Public Property IsOrderDateNull As Boolean
        Get
            Return _orderDateNull
        End Get
        Set
            _orderDateNull = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>RequiredDate</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>RequiredDate</c> column value.</value>
    Public Property RequiredDate As Date
        Get
            If IsRequiredDateNull Then
                Throw New InvalidOperationException("Cannot get value because it is DBNull.")
            End If
            Return _requiredDate
        End Get
        Set
            _requiredDateNull = false
            _requiredDate = value
        End Set
    End Property

    ''' <summary>
    ''' Indicates whether the <see cref="RequiredDate"/>
    ''' property value is null.
    ''' </summary>
    ''' <value>true if the property value is null, otherwise false.</value>
    Public Property IsRequiredDateNull As Boolean
        Get
            Return _requiredDateNull
        End Get
        Set
            _requiredDateNull = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShippedDate</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ShippedDate</c> column value.</value>
    Public Property ShippedDate As Date
        Get
            If IsShippedDateNull Then
                Throw New InvalidOperationException("Cannot get value because it is DBNull.")
            End If
            Return _shippedDate
        End Get
        Set
            _shippedDateNull = false
            _shippedDate = value
        End Set
    End Property

    ''' <summary>
    ''' Indicates whether the <see cref="ShippedDate"/>
    ''' property value is null.
    ''' </summary>
    ''' <value>true if the property value is null, otherwise false.</value>
    Public Property IsShippedDateNull As Boolean
        Get
            Return _shippedDateNull
        End Get
        Set
            _shippedDateNull = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ShipperName</c> column value.
        ''' </summary>
        ''' <value>The <c>ShipperName</c> column value.</value>
    Public Property ShipperName As String
        Get
            Return _shipperName
        End Get
        Set
            _shipperName = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ProductID</c> column value.
        ''' </summary>
        ''' <value>The <c>ProductID</c> column value.</value>
    Public Property ProductID As Integer
        Get
            Return _productID
        End Get
        Set
            _productID = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ProductName</c> column value.
        ''' </summary>
        ''' <value>The <c>ProductName</c> column value.</value>
    Public Property ProductName As String
        Get
            Return _productName
        End Get
        Set
            _productName = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>UnitPrice</c> column value.
        ''' </summary>
        ''' <value>The <c>UnitPrice</c> column value.</value>
    Public Property UnitPrice As Decimal
        Get
            Return _unitPrice
        End Get
        Set
            _unitPrice = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Quantity</c> column value.
        ''' </summary>
        ''' <value>The <c>Quantity</c> column value.</value>
    Public Property Quantity As Short
        Get
            Return _quantity
        End Get
        Set
            _quantity = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Discount</c> column value.
        ''' </summary>
        ''' <value>The <c>Discount</c> column value.</value>
    Public Property Discount As Single
        Get
            Return _discount
        End Get
        Set
            _discount = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>ExtendedPrice</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>ExtendedPrice</c> column value.</value>
    Public Property ExtendedPrice As Decimal
        Get
            If IsExtendedPriceNull Then
                Throw New InvalidOperationException("Cannot get value because it is DBNull.")
            End If
            Return _extendedPrice
        End Get
        Set
            _extendedPriceNull = false
            _extendedPrice = value
        End Set
    End Property

    ''' <summary>
    ''' Indicates whether the <see cref="ExtendedPrice"/>
    ''' property value is null.
    ''' </summary>
    ''' <value>true if the property value is null, otherwise false.</value>
    Public Property IsExtendedPriceNull As Boolean
        Get
            Return _extendedPriceNull
        End Get
        Set
            _extendedPriceNull = value
        End Set
    End Property

        ''' <summary>
        ''' Gets or sets the <c>Freight</c> column value.
        ''' This column is nullable.
        ''' </summary>
        ''' <value>The <c>Freight</c> column value.</value>
    Public Property Freight As Decimal
        Get
            If IsFreightNull Then
                Throw New InvalidOperationException("Cannot get value because it is DBNull.")
            End If
            Return _freight
        End Get
        Set
            _freightNull = false
            _freight = value
        End Set
    End Property

    ''' <summary>
    ''' Indicates whether the <see cref="Freight"/>
    ''' property value is null.
    ''' </summary>
    ''' <value>true if the property value is null, otherwise false.</value>
    Public Property IsFreightNull As Boolean
        Get
            Return _freightNull
        End Get
        Set
            _freightNull = value
        End Set
    End Property

    ''' <summary>
    ''' Returns the string representation of this instance.
    ''' </summary>
    ''' <returns>The string representation of this instance.</returns>
    Public Overrides Function ToString() As String
        Dim dynStr As System.Text.StringBuilder = New System.Text.StringBuilder(Me.GetType().Name)
        dynStr.Append(":")
        dynStr.Append("  ShipName=")
        dynStr.Append(Me.ShipName)
        dynStr.Append("  ShipAddress=")
        dynStr.Append(Me.ShipAddress)
        dynStr.Append("  ShipCity=")
        dynStr.Append(Me.ShipCity)
        dynStr.Append("  ShipRegion=")
        dynStr.Append(Me.ShipRegion)
        dynStr.Append("  ShipPostalCode=")
        dynStr.Append(Me.ShipPostalCode)
        dynStr.Append("  ShipCountry=")
        dynStr.Append(Me.ShipCountry)
        dynStr.Append("  CustomerID=")
        dynStr.Append(Me.CustomerID)
        dynStr.Append("  CustomerName=")
        dynStr.Append(Me.CustomerName)
        dynStr.Append("  Address=")
        dynStr.Append(Me.Address)
        dynStr.Append("  City=")
        dynStr.Append(Me.City)
        dynStr.Append("  Region=")
        dynStr.Append(Me.Region)
        dynStr.Append("  PostalCode=")
        dynStr.Append(Me.PostalCode)
        dynStr.Append("  Country=")
        dynStr.Append(Me.Country)
        dynStr.Append("  Salesperson=")
        dynStr.Append(Me.Salesperson)
        dynStr.Append("  OrderID=")
        dynStr.Append(Me.OrderID)
        dynStr.Append("  OrderDate=")
        If IsOrderDateNull Then
            dynStr.Append("<NULL>")
        Else
            dynStr.Append(Me.OrderDate)
        End If
        dynStr.Append("  RequiredDate=")
        If IsRequiredDateNull Then
            dynStr.Append("<NULL>")
        Else
            dynStr.Append(Me.RequiredDate)
        End If
        dynStr.Append("  ShippedDate=")
        If IsShippedDateNull Then
            dynStr.Append("<NULL>")
        Else
            dynStr.Append(Me.ShippedDate)
        End If
        dynStr.Append("  ShipperName=")
        dynStr.Append(Me.ShipperName)
        dynStr.Append("  ProductID=")
        dynStr.Append(Me.ProductID)
        dynStr.Append("  ProductName=")
        dynStr.Append(Me.ProductName)
        dynStr.Append("  UnitPrice=")
        dynStr.Append(Me.UnitPrice)
        dynStr.Append("  Quantity=")
        dynStr.Append(Me.Quantity)
        dynStr.Append("  Discount=")
        dynStr.Append(Me.Discount)
        dynStr.Append("  ExtendedPrice=")
        If IsExtendedPriceNull Then
            dynStr.Append("<NULL>")
        Else
            dynStr.Append(Me.ExtendedPrice)
        End If
        dynStr.Append("  Freight=")
        If IsFreightNull Then
            dynStr.Append("<NULL>")
        Else
            dynStr.Append(Me.Freight)
        End If
        Return dynStr.ToString()
    End Function
End Class