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 Imports DevExpress.ExpressApp.ConditionalAppearance 'CreditNoteRows Public Class InvoiceCreditNoteHeader Inherits BaseObject Private _CustomersFrom As CustomersFrom Private _Customers As Customers Private _Storage As Storage Private _StorageMoveType As StorageMoveType Private _DateExecution As Date Private _ObjectCreated As Date Private _UserCreated As User Private _PaymentOption As PaymentOption Private _DatePayment As Date Private _Description As String Private _CurrencyRate As Double Private _CurrencyName As CurrencyName Public Sub New(ByVal session As Session) MyBase.New(session) End Sub Public Overrides Sub AfterConstruction() MyBase.AfterConstruction() 'DateExecution = GetSQLTime(Session) CurrencyRate = 1 End Sub Protected Overrides Sub OnSaving() MyBase.OnSaving() If Session.IsNewObject(Me) Then ObjectCreated = GetSQLTime(Session) UserCreated = Session.GetObjectByKey(Of User)(Session.GetKeyValue(SecuritySystem.CurrentUser)) End If End Sub Property CustomersFrom As CustomersFrom Get Return _CustomersFrom End Get Set(value As CustomersFrom) SetPropertyValue("CustomersFrom", _CustomersFrom, value) End Set End Property Property Customers As Customers Get Return _Customers End Get Set(value As Customers) SetPropertyValue("Customers", _Customers, value) End Set End Property Property Storage As Storage Get Return _Storage End Get Set(value As Storage) SetPropertyValue("Storage", _Storage, value) End Set End Property Property StorageMoveType As StorageMoveType Get Return _StorageMoveType End Get Set(value As StorageMoveType) SetPropertyValue("StorageMoveType", _StorageMoveType, value) End Set End Property Property DateExecution As Date Get Return _DateExecution End Get Set(value As Date) SetPropertyValue("DateExecution", _DateExecution, value) If Session.IsObjectsLoading = False AndAlso Session.IsObjectsSaving = False Then '// MNB árfolyam lekérése Dim _CurrencyRate_Collection As XPCollection(Of CurrencyRate) = New XPCollection(Of CurrencyRate)(Session, CriteriaOperator.Parse("CurrencyName=? and IsMNB=True and GetDate(DateValid)<=?", CurrencyName, DateExecution.Date)) _CurrencyRate_Collection.Sorting.Add(New SortProperty("DateValid", DB.SortingDirection.Descending)) If _CurrencyRate_Collection.Count > 0 Then For Each _CurrencyRateX In _CurrencyRate_Collection If _CurrencyRateX.DateValid.Date = _DateExecution.Date Then CurrencyRate = _CurrencyRateX.RateAverage Exit For End If Exit For Next Else Throw New Exception("*Nincs beállítva sem a pénzeszköz árfolyama sem az MNB árfolyama !") End If End If End Set End Property Property ObjectCreated As Date Get Return _ObjectCreated End Get Set(value As Date) SetPropertyValue("ObjectCreated", _ObjectCreated, value) End Set End Property Property UserCreated As User Get Return _UserCreated End Get Set(value As User) SetPropertyValue("UserCreated", _UserCreated, value) End Set End Property Property PaymentOption As PaymentOption Get Return _PaymentOption End Get Set(value As PaymentOption) SetPropertyValue("PaymentOption", _PaymentOption, value) End Set End Property Property DatePayment As Date Get Return _DatePayment End Get Set(value As Date) SetPropertyValue("DatePayment", _DatePayment, value) End Set End Property Property Description As String Get Return _Description End Get Set(value As String) SetPropertyValue("Description", _Description, value) End Set End Property ''' ''' Árfolyam, amivel számolja !!! ''' ''' Property CurrencyRate As Double Get Return _CurrencyRate End Get Set(value As Double) SetPropertyValue("CurrencyRate", _CurrencyRate, value) End Set End Property ''' ''' DEVIZA ''' ''' Property CurrencyName As CurrencyName Get Return _CurrencyName End Get Set(value As CurrencyName) SetPropertyValue("CurrencyName", _CurrencyName, value) End Set End Property '--==ReadOnly==-- ReadOnly Property InvoiceCreditNoteRows As XPCollection(Of InvoiceCreditNoteRows) Get Return GetCollection(Of InvoiceCreditNoteRows)("InvoiceCreditNoteRows") End Get End Property End Class