Imports System
Imports System.ComponentModel

Imports DevExpress.Xpo
Imports DevExpress.Data.Filtering

Imports DevExpress.ExpressApp
Imports DevExpress.Persistent.Base
Imports DevExpress.Persistent.BaseImpl
Imports DevExpress.Persistent.Validation


<DefaultClassOptions(), NavigationItem(False), CreatableItem(False)> _
Public Class GLOpenCloseRows
    Inherits BaseObject
    Private _GLOpenCloseHeader As GLOpenCloseHeader 'Nyitás fejléce
    Private _ChartOfAccounts As ChartOfAccounts 'Melyik számlát zárjuk
    Private _ChartOfAccountsOpen As ChartOfAccounts 'Nyitó mérleg számla
    Private _ChartOfAccountsClose As ChartOfAccounts 'Záró mérleg számla
    Private _ChartOfAccountsOpenNew As ChartOfAccounts 'Melyik számlára nyitjuk az új évben
    Private _OnlyClose As Boolean = False 'Csak zárás
    Private _DebitAmountHUF As Double
    Private _DebitAmountDEV As Double
    Private _CreditAmountHUF As Double
    Private _CreditAmountDEV As Double

    Public Sub New(ByVal session As Session)
        MyBase.New(session)
        ' This constructor is used when an object is loaded from a persistent storage.
        ' Do not place any code here or place it only when the IsLoading property is false:
        ' if (!IsLoading){
        '   It is now OK to place your initialization code here.
        ' }
        ' or as an alternative, move your initialization code into the AfterConstruction method.
    End Sub
    Public Overrides Sub AfterConstruction()
        MyBase.AfterConstruction()
        ' Place here your initialization code.
    End Sub

    <Association("GLOpenCloseHeader-GLOpenCloseRows", GetType(GLOpenCloseHeader))> _
    Property GLOpenCloseHeader As GLOpenCloseHeader
        Get
            Return _GLOpenCloseHeader
        End Get
        Set(value As GLOpenCloseHeader)
            SetPropertyValue("GLOpenCloseHeader", _GLOpenCloseHeader, value)
        End Set
    End Property
    <DataSourceCriteria("AccountYear='@This.AccountClose'")> _
    Property ChartOfAccounts As ChartOfAccounts
        Get
            Return _ChartOfAccounts
        End Get
        Set(value As ChartOfAccounts)
            SetPropertyValue("ChartOfAccounts", _ChartOfAccounts, value)
        End Set
    End Property
    <DataSourceCriteria("AccountYear='@This.AccountOpen'")> _
    Property ChartOfAccountsOpen As ChartOfAccounts
        Get
            Return _ChartOfAccountsOpen
        End Get
        Set(value As ChartOfAccounts)
            SetPropertyValue("ChartOfAccountsOpen", _ChartOfAccountsOpen, value)
        End Set
    End Property
    <DataSourceCriteria("AccountYear='@This.AccountClose'")> _
    Property ChartOfAccountsClose As ChartOfAccounts
        Get
            Return _ChartOfAccountsClose
        End Get
        Set(value As ChartOfAccounts)
            SetPropertyValue("ChartOfAccountsClose", _ChartOfAccountsClose, value)
        End Set
    End Property
    Property ChartOfAccountsOpenNew As ChartOfAccounts
        Get
            Return _ChartOfAccountsOpenNew
        End Get
        Set(value As ChartOfAccounts)
            SetPropertyValue("ChartOfAccountsOpenNew", _ChartOfAccountsOpenNew, value)
        End Set
    End Property
    Property OnlyClose As Boolean
        Get
            Return _OnlyClose
        End Get
        Set(value As Boolean)
            SetPropertyValue("OnlyClose", _OnlyClose, value)
        End Set
    End Property
    Property DebitAmountHUF As Double
        Get
            Return _DebitAmountHUF
        End Get
        Set(value As Double)
            SetPropertyValue("DebitAmountHUF", _DebitAmountHUF, value)
        End Set
    End Property
    Property DebitAmountDEV As Double
        Get
            Return _DebitAmountDEV
        End Get
        Set(value As Double)
            SetPropertyValue("DebitAmountDEV", _DebitAmountDEV, value)
        End Set
    End Property
    Property CreditAmountHUF As Double
        Get
            Return _CreditAmountHUF
        End Get
        Set(value As Double)
            SetPropertyValue("CreditAmountHUF", _CreditAmountHUF, value)
        End Set
    End Property
    Property CreditAmountDEV As Double
        Get
            Return _CreditAmountDEV
        End Get
        Set(value As Double)
            SetPropertyValue("CreditAmountDEV", _CreditAmountDEV, value)
        End Set
    End Property
End Class
