589 lines
34 KiB
VB.net
589 lines
34 KiB
VB.net
Imports System
|
|
Imports System.ComponentModel
|
|
Imports System.Collections.Generic
|
|
Imports System.Diagnostics
|
|
Imports System.Text
|
|
|
|
Imports DevExpress.ExpressApp
|
|
Imports DevExpress.ExpressApp.Actions
|
|
Imports DevExpress.Persistent.Base
|
|
Imports DevExpress.ExpressApp.SystemModule
|
|
Imports DevExpress.ExpressApp.Editors
|
|
Imports DevExpress.Data.Filtering
|
|
Imports DevExpress.Xpo
|
|
Imports DevExpress.Persistent.BaseImpl
|
|
Imports DevExpress.ExpressApp.Model
|
|
|
|
Public Class GLCompensationVC
|
|
Inherits DevExpress.ExpressApp.ViewController
|
|
Protected selection As ArrayList
|
|
Public Sub New()
|
|
MyBase.New()
|
|
selection = New ArrayList()
|
|
'This call is required by the Component Designer.
|
|
InitializeComponent()
|
|
RegisterActions(components)
|
|
End Sub
|
|
Protected Overrides Sub OnActivated()
|
|
MyBase.OnActivated()
|
|
Frame.GetController(Of GLCompensationVC).aMakeEditable_GLCompensation.Active.SetItemValue("", False)
|
|
|
|
If View.Id = "GLCompensation_DetailView" Then
|
|
Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False)
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.CurrentObject, GLCompensation)
|
|
If _GLCompensation Is Nothing Then
|
|
Else
|
|
If _GLCompensation.IsEditable = False Then
|
|
Frame.GetController(Of ModificationsController)?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aFinal_GLCompensation.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aFinalAndNew_GLCompensation.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aFinalAndNew_GLCompensation.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aToTable_GLCompensation.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aToTableD_GLCompensation.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aBackToRowEdit_GLCompensation.Active.SetItemValue("", False)
|
|
End If
|
|
If _GLCompensation.IsStorno = True Then
|
|
Frame.GetController(Of ModificationsController)?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of GLCompensationVC).aMakeEditable_GLCompensation.Active.SetItemValue("", False)
|
|
End If
|
|
If _GLCompensation.IsEditable = True And _GLCompensation.IsStorno = False Then
|
|
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If View.Id = "GLCompensation_ListView" Then
|
|
Frame.GetController(Of GLCompensationVC).aMakeEditable_GLCompensation.Active.SetItemValue("", True)
|
|
Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of NewObjectViewController)?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of CloneObject.CloneObjectViewController)?.Active.SetItemValue("", False)
|
|
End If
|
|
If View.Id = "GLCompensation_ListView_Editable" Then
|
|
AddHandler Frame.GetController(Of DeleteObjectsViewController).DeleteAction.Executed, AddressOf GLCompensation_DeleteAction_Executed
|
|
End If
|
|
|
|
If View.Id Like "GLHeader_GLRows_ListView_Compensation" Then
|
|
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)()?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)()?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)()?.Active.SetItemValue("", False)
|
|
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)()?.Active.SetItemValue("", False)
|
|
Dim nv As ListView = CType(View, ListView)
|
|
Dim cs As PropertyCollectionSource = CType(nv.CollectionSource, PropertyCollectionSource)
|
|
AddHandler cs.MasterObjectChanged, AddressOf cs_MasterObjectChanged
|
|
|
|
End If
|
|
|
|
End Sub
|
|
Protected Overrides Sub OnDeactivated()
|
|
MyBase.OnDeactivated()
|
|
If View.Id = "GLCompensation_DetailView" Then
|
|
Frame.GetController(Of GLCompensationVC).aFinalAndNew_GLCompensation.Active.SetItemValue("", True)
|
|
Frame.GetController(Of GLCompensationVC).aFinalAndNew_GLCompensation.Active.SetItemValue("", True)
|
|
Frame.GetController(Of GLCompensationVC).aToTable_GLCompensation.Active.SetItemValue("", True)
|
|
Frame.GetController(Of GLCompensationVC).aToTableD_GLCompensation.Active.SetItemValue("", True)
|
|
Frame.GetController(Of ModificationsController)?.Active.SetItemValue("", True)
|
|
Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", True)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub aToTable_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aToTable_GLCompensation.Execute
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.SelectedObjects(0), GLCompensation)
|
|
Dim _GLHeader As GLHeader = TryCast(_GLCompensation, GLHeader)
|
|
Dim _GLRows As GLRows
|
|
Dim _GUID As Guid = Guid.NewGuid()
|
|
Dim _CashType As eCashType
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
|
|
_GLRows = _ocur.CreateObject(Of GLRows)()
|
|
|
|
If _GLCompensation.row_TransactionType = eTransactionType.ePartnerCredit Or _GLCompensation.row_TransactionType = eTransactionType.ePartnerDebit Then
|
|
_CashType = eCashType.ePartner
|
|
If _GLCompensation.row_PartnerType = ePartnerType.eReceivables Then
|
|
If _GLCompensation.row_TransactionType = eTransactionType.ePartnerCredit Then
|
|
_GLHeader.row_DebitChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_GLHeader.row_CreditChartOfAccounts = _GLCompensation.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLCompensation.DateExecution.Year, eVATMode.eOut)
|
|
ElseIf _GLCompensation.row_TransactionType = eTransactionType.ePartnerDebit Then
|
|
_GLHeader.row_DebitChartOfAccounts = _GLCompensation.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLCompensation.DateExecution.Year, eVATMode.eOut)
|
|
_GLHeader.row_CreditChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
End If
|
|
Else
|
|
If _GLCompensation.row_TransactionType = eTransactionType.ePartnerCredit Then
|
|
_GLHeader.row_DebitChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_GLHeader.row_CreditChartOfAccounts = _GLCompensation.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLCompensation.DateExecution.Year, eVATMode.eIn)
|
|
ElseIf _GLCompensation.row_TransactionType = eTransactionType.ePartnerDebit Then
|
|
_GLHeader.row_DebitChartOfAccounts = _GLCompensation.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLCompensation.DateExecution.Year, eVATMode.eIn)
|
|
_GLHeader.row_CreditChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
End If
|
|
End If
|
|
Else
|
|
_CashType = eCashType.eNormal
|
|
If _GLCompensation.row_TransactionType = eTransactionType.eNormalCredit Then
|
|
_GLHeader.row_DebitChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_GLHeader.row_CreditChartOfAccounts = _GLCompensation.row_ChartOfAccounts
|
|
Else
|
|
_GLHeader.row_DebitChartOfAccounts = _GLCompensation.row_ChartOfAccounts
|
|
_GLHeader.row_CreditChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
End If
|
|
|
|
End If
|
|
Select Case _GLCompensation.row_TransactionType
|
|
Case eTransactionType.eNormalCredit, eTransactionType.ePartnerCredit
|
|
_GLRows.CreditAmountHUF = _GLHeader.row_AmountHUF
|
|
_GLRows.CreditAmountDEV = _GLHeader.row_AmountDEV
|
|
_GLRows.InAmountHUF = _GLHeader.row_AmountHUF
|
|
_GLRows.InAmountDEV = _GLHeader.row_AmountDEV
|
|
Case eTransactionType.eNormalDebit, eTransactionType.ePartnerDebit
|
|
_GLRows.DebitAmountHUF = _GLHeader.row_AmountHUF
|
|
_GLRows.DebitAmountDEV = _GLHeader.row_AmountDEV
|
|
_GLRows.OutAmountHUF = _GLHeader.row_AmountHUF
|
|
_GLRows.OutAmountDEV = _GLHeader.row_AmountDEV
|
|
End Select
|
|
_GLRows.PartnerType = _GLCompensation.row_PartnerType
|
|
|
|
_GLRows.AddGLRows(_GLHeader, _GLHeader.row_DebitChartOfAccounts, _GLHeader.row_CreditChartOfAccounts, _
|
|
_GLHeader.row_AmountDEV, _GLHeader.row_AmountHUF, _GLCompensation.LiquidAssets_Main, _
|
|
_GLHeader.row_Customer, _GLHeader.row_DateVAT, _GLHeader.row_VAT, _
|
|
_GLHeader.row_NoteRows, _GLHeader.row_UniqueObjects, _GLHeader.row_Controlling, _
|
|
_GLHeader.row_JobNumberObjects, _GLHeader.row_CostPlace, _GLHeader.row_CostHolder, _
|
|
_GLHeader.row_ConnectInfo, eGLRowsTypeVAT.eNettoRow, _GUID, _
|
|
_GLCompensation.row_TransactionType, _CashType, _GLCompensation.row_PartnerType)
|
|
_GLCompensation.RecalculateTotal()
|
|
_ocur.CommitChanges()
|
|
|
|
'--- Pontozás ellenőrzése !!!! ----------------------------------------------------------------------------------------------------------------
|
|
Select Case _GLCompensation.row_TransactionType
|
|
Case eTransactionType.ePartnerCredit, eTransactionType.ePartnerDebit
|
|
Dim _uow_pci As New UnitOfWork(_ocur.Session.DataLayer)
|
|
GLFunctions.ReconfigurePCI(_uow_pci, _GLCompensation.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo)
|
|
End Select
|
|
|
|
'----------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
_GLCompensation.row_NoteRows = ""
|
|
_GLCompensation.row_AmountDEV = 0
|
|
_GLCompensation.row_AmountHUF = 0
|
|
_GLCompensation.row_PCIGroup = Nothing
|
|
_GLCompensation.row_Customer = Nothing
|
|
_GLCompensation.row_ConnectInfo = ""
|
|
_GLCompensation.row_ChartOfAccounts = Nothing
|
|
|
|
'// Fókusz beállítása !!!!!!!!!!!!!!!!!!!!!!----------------------------------------------------------------
|
|
|
|
Dim _Action As IModelAction
|
|
Dim _IModelActionExtender As IModelActionExtender
|
|
For Each _Action In Application.Model.ActionDesign.Actions
|
|
If _Action.Id = e.Action.Id Then
|
|
_IModelActionExtender = TryCast(_Action, IModelActionExtender)
|
|
If _IModelActionExtender IsNot Nothing Then
|
|
If String.IsNullOrEmpty(_IModelActionExtender.FocusItem) = False Then
|
|
Dim ItemToFocus As ViewItem = TryCast(View, DetailView).FindItem(_IModelActionExtender.FocusItem)
|
|
If ItemToFocus IsNot Nothing Then
|
|
Dim ItemControl As Object
|
|
ItemControl = ItemToFocus.Control
|
|
ItemControl.Focus()
|
|
End If
|
|
End If
|
|
End If
|
|
Exit For
|
|
End If
|
|
Next
|
|
|
|
'--------------------------------------------------------------------------------------------------------
|
|
View.Refresh()
|
|
|
|
|
|
End Sub
|
|
Private Sub aFinal_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aFinal_GLCompensation.Execute
|
|
GLCompensation_Final(e)
|
|
View.Close(False)
|
|
End Sub
|
|
Private Sub cs_MasterObjectChanged(ByVal sender As Object, ByVal e As EventArgs)
|
|
Dim _GLCompensation As GLCompensation = TryCast((CType(sender, PropertyCollectionSource)).MasterObject, GLCompensation)
|
|
If _GLCompensation.IsEditable = False Then
|
|
Frame.GetController(Of GLCompensationVC).aToTable_GLCompensation.Active.SetItemValue("", False)
|
|
End If
|
|
End Sub
|
|
Private Sub aMakeEditable_GLCompensation_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMakeEditable_GLCompensation.Execute
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.SelectedObjects(0), GLCompensation)
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
|
|
If _GLCompensation IsNot Nothing Then
|
|
|
|
_GLCompensation.IsEditable = True
|
|
_ocur.CommitChanges()
|
|
|
|
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLCompensation_DetailView", True, _onew.GetObject(_GLCompensation))
|
|
End If
|
|
End Sub
|
|
Private Sub aFinalAndNew_GLCompensation_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aFinalAndNew_GLCompensation.Execute
|
|
GLCompensation_Final(e)
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
Dim _GLCompensation As GLCompensation = _onew.CreateObject(Of GLCompensation)()
|
|
|
|
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, TryCast(View.Model, Model.IModelDetailView).Id, True, _GLCompensation)
|
|
e.ShowViewParameters.TargetWindow = TargetWindow.Current
|
|
End Sub
|
|
#Region "SIS"
|
|
Private Sub GLCompensation_Final(ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs)
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _GLRows As GLRows
|
|
If View.SelectedObjects.Count > 0 Then
|
|
Dim _GLCompensation As GLCompensation = TryCast(e.SelectedObjects(0), GLCompensation)
|
|
For Each _GLCompensation In e.SelectedObjects
|
|
If _GLCompensation.GLRows.Count <= 0 Then
|
|
_ocur.Rollback()
|
|
Throw New Exception("*Nincs rögzített sor !")
|
|
End If
|
|
For Each _GLRows In _GLCompensation.GLRows
|
|
_GLRows.LiquidAssets = _GLCompensation.LiquidAssets_Main
|
|
Next
|
|
_GLCompensation.IsEditable = False
|
|
If _GLCompensation.DocumentNumber Is Nothing Or _GLCompensation.DocumentNumber = "" Then
|
|
Dim _NumberGenerator As NumberGenerator = TryCast(_GLCompensation.LiquidAssets_Main.NumberGeneratorIn, NumberGenerator)
|
|
_GLCompensation.DocumentNumber = _NumberGenerator.GetNewNumber(_NumberGenerator).ToString
|
|
End If
|
|
_GLCompensation.Save()
|
|
_ocur.CommitChanges()
|
|
|
|
'// Az összes sorra vonatkozó pontozás újragenerálása, mert változhat a dátum !
|
|
For Each _GLRows In _GLCompensation.GLRows
|
|
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
|
|
GLFunctions.ReconfigurePCI(_uow, _GLRows.GLHeader.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo)
|
|
Next
|
|
Next
|
|
End If
|
|
End Sub
|
|
#End Region
|
|
Private Sub aToTableD_GLCompensation_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aToTableD_GLCompensation.Execute
|
|
'Törli a táblázatban lévő sort
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _GUID As Guid
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.SelectedObjects(0), GLCompensation)
|
|
Dim _GLRows_ListEditor As ListPropertyEditor
|
|
Dim _GLRows As GLRows
|
|
Dim i As Long
|
|
|
|
Dim _CustomersFrom As CustomersFrom
|
|
Dim _Customers As Customers
|
|
Dim _PartnerType As ePartnerType
|
|
Dim _ConnectInfo As String
|
|
|
|
_GLRows_ListEditor = TryCast(View, DetailView).FindItem("GLRows")
|
|
|
|
_GLRows = TryCast(_GLRows_ListEditor.ListView.CurrentObject, GLRows)
|
|
|
|
If _GLRows.GLRowsRateDiff IsNot Nothing Then
|
|
Throw New Exception("*Nem lehet a sort törölni mert van árfolyam elszámolás !")
|
|
Exit Sub
|
|
End If
|
|
|
|
If _GLRows IsNot Nothing Then
|
|
_GUID = _GLRows.GLRowsGUID
|
|
selection.Clear()
|
|
For Each _GLRows In _GLCompensation.GLRows
|
|
If _GLRows.GLRowsGUID = _GUID Then
|
|
selection.Add(_GLRows)
|
|
End If
|
|
Next
|
|
For i = 0 To selection.Count - 1
|
|
_GLRows = TryCast(selection(i), GLRows)
|
|
If _GLRows.PartnerType = ePartnerType.ePayabels Or _GLRows.PartnerType = ePartnerType.eReceivables Then
|
|
_CustomersFrom = _GLCompensation.CustomersFrom
|
|
_Customers = _GLRows.Customer
|
|
_ConnectInfo = _GLRows.ConnectInfo
|
|
_PartnerType = _GLRows.PartnerType
|
|
End If
|
|
_GLRows.Delete()
|
|
_ocur.CommitChanges()
|
|
|
|
Dim _uow_pci As New UnitOfWork(_ocur.Session.DataLayer)
|
|
GLFunctions.ReconfigurePCI(_uow_pci, _CustomersFrom, _Customers, _PartnerType, _ConnectInfo)
|
|
|
|
Next
|
|
_GLCompensation.RecalculateTotal()
|
|
View.Refresh()
|
|
End If
|
|
End Sub
|
|
Private Sub aBackToRowEdit_GLCompensation_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aBackToRowEdit_GLCompensation.Execute
|
|
'Visszatölti a sort editáláshoz
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.SelectedObjects(0), GLCompensation)
|
|
Dim _GLRows_ListEditor As ListPropertyEditor
|
|
Dim _GLRows As GLRows
|
|
Dim _PCIGroup As PCIGroup
|
|
|
|
Dim _CustomersFrom As CustomersFrom
|
|
Dim _Customers As Customers
|
|
Dim _PartnerType As ePartnerType
|
|
Dim _ConnectInfo As String
|
|
|
|
_GLRows_ListEditor = TryCast(View, DetailView).FindItem("GLRows")
|
|
_GLRows = TryCast(_GLRows_ListEditor.ListView.CurrentObject, GLRows)
|
|
|
|
If _GLRows IsNot Nothing Then
|
|
|
|
If _GLRows.GLRowsRateDiff IsNot Nothing Then
|
|
Throw New Exception("*Nem lehet a sort törölni mert van árfolyam elszámolás !")
|
|
Exit Sub
|
|
End If
|
|
|
|
_GLCompensation.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _GLCompensation.CurrencyName.ShortName))
|
|
_PCIGroup = _ocur.FindObject(Of PCIGroup) _
|
|
(CriteriaOperator.Parse("CustomersFrom=? and Customers=? and PartnerType=? and ConnectInfo=? ", _GLRows.GLHeader.CustomersFrom, _
|
|
_GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo), True)
|
|
If _PCIGroup IsNot Nothing Then
|
|
_GLCompensation.row_PCIGroup = _PCIGroup
|
|
_GLCompensation.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _PCIGroup.CurrencyName_Account.ShortName))
|
|
If _GLCompensation.row_CurrencyName2 Is Nothing Then
|
|
_GLCompensation.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _GLCompensation.CurrencyName.ShortName))
|
|
End If
|
|
End If
|
|
_GLCompensation.row_Customer = _GLRows.Customer
|
|
_GLCompensation.row_ConnectInfo = _GLRows.ConnectInfo
|
|
_GLCompensation.CurrencyName = _GLRows.GLHeader.CurrencyName
|
|
_GLCompensation.CurrencyRate = _GLRows.GLHeader.CurrencyRate
|
|
|
|
_GLCompensation.row_NoteRows = _GLRows.NoteRows
|
|
_GLCompensation.CurrencyRate = _GLRows.GLHeader.CurrencyRate
|
|
_GLCompensation.row_PartnerType = _GLRows.PartnerType
|
|
_GLCompensation.row_TransactionType = _GLRows.TransactionType
|
|
_GLCompensation.row_CurrencyRate2 = _GLRows.CurrencyRate2
|
|
If _GLRows.InAmountHUF > 0 Then
|
|
_GLCompensation.row_ChartOfAccounts = _GLRows.CreditChartOfAccounts
|
|
_GLCompensation.row_AmountDEV2 = _GLRows.InAmountDEV2
|
|
Else
|
|
_GLCompensation.row_ChartOfAccounts = _GLRows.DebitChartOfAccounts
|
|
_GLCompensation.row_AmountDEV2 = _GLRows.OutAmountDEV2
|
|
End If
|
|
|
|
Dim _GLRows_GUID_Collection As New XPCollection(Of GLRows)(PersistentCriteriaEvaluationBehavior.InTransaction, _ocur.Session, CriteriaOperator.Parse("GLRowsGUID=?", _GLRows.GLRowsGUID))
|
|
Dim _AmountDEV As Double = 0
|
|
Dim _AmountHUF As Double = 0
|
|
For Each _GLRows In _GLRows_GUID_Collection
|
|
_AmountDEV += _GLRows.AmountDEV
|
|
_AmountHUF += _GLRows.AmountHUF
|
|
selection.Add(_GLRows)
|
|
Next
|
|
_GLCompensation.row_AmountDEV = _AmountDEV
|
|
_GLCompensation.row_AmountHUF = _AmountHUF
|
|
|
|
For i = 0 To selection.Count - 1
|
|
_GLRows = TryCast(selection(i), GLRows)
|
|
If _GLRows.PartnerType = ePartnerType.ePayabels Or _GLRows.PartnerType = ePartnerType.eReceivables Then
|
|
_CustomersFrom = _GLCompensation.CustomersFrom
|
|
_Customers = _GLRows.Customer
|
|
_ConnectInfo = _GLRows.ConnectInfo
|
|
_PartnerType = _GLRows.PartnerType
|
|
End If
|
|
_GLRows.Delete()
|
|
_ocur.CommitChanges()
|
|
|
|
Dim _uow_pci As New UnitOfWork(_ocur.Session.DataLayer)
|
|
GLFunctions.ReconfigurePCI(_uow_pci, _CustomersFrom, _Customers, _PartnerType, _ConnectInfo)
|
|
|
|
Next
|
|
End If
|
|
|
|
View.Refresh()
|
|
End Sub
|
|
|
|
Private Sub aPrintCompensation_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aPrintCompensation.Execute
|
|
Dim _GLCompensation As GLCompensation
|
|
Try
|
|
If e.SelectedObjects.Count > 0 Then
|
|
_GLCompensation = TryCast(e.SelectedObjects.Item(0), GLCompensation)
|
|
PrintCompensationDocument(_GLCompensation, TryCast(View.ObjectSpace, Xpo.XPObjectSpace))
|
|
End If
|
|
Catch
|
|
|
|
End Try
|
|
End Sub
|
|
Sub PrintCompensationDocument(ByVal _GLCompensation As GLCompensation, ByVal _ocur As Xpo.XPObjectSpace)
|
|
Dim _ReportData As ReportData
|
|
Dim _GLHeader As GLHeader
|
|
If _GLCompensation IsNot Nothing Then
|
|
_GLHeader = TryCast(_GLCompensation, GLHeader)
|
|
_ReportData = _GLCompensation.LiquidAssets_Main.ReportData
|
|
If _ReportData IsNot Nothing Or _GLCompensation Is Nothing Then
|
|
Frame.GetController(Of Reports.ReportServiceController).ShowPreview(_ReportData, CriteriaOperator.Parse("GLHeader=?", _GLHeader), True)
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub aGLCompensationDivideRows_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aGLCompensationDivideRows.CustomizePopupWindowParams
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
Dim _GLRowsDivideH As GLRowsDivideH = _onew.CreateObject(Of GLRowsDivideH)()
|
|
Dim _GLRows As GLRows = TryCast(View.SelectedObjects(0), GLRows)
|
|
|
|
If _GLRows IsNot Nothing Then
|
|
If _GLRows.PartnerType = ePartnerType.ePayabels Or _GLRows.PartnerType = ePartnerType.eReceivables Then
|
|
_GLRowsDivideH.GLRows_Oid = _GLRows.Oid
|
|
_GLRowsDivideH.row_Customers = _onew.GetObject(_GLRows.Customer)
|
|
_GLRowsDivideH.row_PartnerType = _GLRows.PartnerType
|
|
e.View = Application.CreateDetailView(_onew, "GLRowsDivideH_DetailView_ConnectionDivide", False, _GLRowsDivideH)
|
|
Else
|
|
_GLRowsDivideH.GLRows_Oid = _GLRows.Oid
|
|
e.View = Application.CreateDetailView(_onew, "GLRowsDivideH_DetailView", False, _GLRowsDivideH)
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub aGLCompensationDivideRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aGLCompensationDivideRows.Execute
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _GLRowsDivideH As GLRowsDivideH = TryCast(e.PopupWindow.View.SelectedObjects(0), GLRowsDivideH)
|
|
Dim _GLRows As GLRows = TryCast(View.SelectedObjects(0), GLRows)
|
|
|
|
If _GLRows IsNot Nothing Then
|
|
_GLRows.DivideRows(_ocur, _GLRows, _GLRowsDivideH, True)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub aGenerateGLCompensationRateDiff_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aGenerateGLCompensationRateDiff.Execute
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _GLCompensation As GLCompensation = TryCast(e.SelectedObjects(0), GLCompensation)
|
|
|
|
For Each _GLCompensation In e.SelectedObjects
|
|
If Not _GLCompensation.CurrencyName.ShortName = "HUF" Then
|
|
_GLCompensation.Reconfigure_RateDiff(_ocur, _GLCompensation)
|
|
End If
|
|
Next
|
|
_ocur.CommitChanges()
|
|
View.Refresh()
|
|
End Sub
|
|
|
|
Private Sub GLCompensation_DeleteAction_Executed(sender As Object, e As ActionBaseEventArgs)
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
|
|
Dim _GLCompensation As GLCompensation
|
|
Dim _GLRows As GLRows
|
|
Dim _GLRows_Collection As XPCollection(Of GLRows)
|
|
|
|
For Each _GLCompensation In TryCast(e, SimpleActionExecuteEventArgs).SelectedObjects
|
|
|
|
_GLRows_Collection = New XPCollection(Of GLRows)(PersistentCriteriaEvaluationBehavior.InTransaction, _ocur.Session, CriteriaOperator.Parse("PartnerType<>'eNotSet' and GLHeader.Oid=?", _GLCompensation.Oid), True)
|
|
For Each _GLRows In _GLRows_Collection
|
|
GLFunctions.ReconfigurePCI(_uow, _GLCompensation.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo)
|
|
Next
|
|
Next
|
|
End Sub
|
|
|
|
Private Sub aImportPCIGroupCompensation_CustomizePopupWindowParams(sender As Object, e As CustomizePopupWindowParamsEventArgs) Handles aImportPCIGroupCompensation.CustomizePopupWindowParams
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.SelectedObjects(0), GLCompensation)
|
|
Dim _CollectionSource As CollectionSource = New CollectionSource(_onew, GetType(PCIGroup))
|
|
|
|
|
|
Dim _P As PCIGroup
|
|
If _GLCompensation IsNot Nothing Then
|
|
|
|
_CollectionSource.Criteria.Clear()
|
|
_CollectionSource.BeginUpdateCriteria()
|
|
_CollectionSource.Criteria("1") = CriteriaOperator.Parse("CurrencyName_Account.ShortName=?", _GLCompensation.LiquidAssets_Main.CurrencyName.ShortName)
|
|
_CollectionSource.Criteria("2") = CriteriaOperator.Parse("PartnerType=?", _GLCompensation.row_PartnerType)
|
|
_CollectionSource.Criteria("3") = CriteriaOperator.Parse("CustomersFrom.Oid=?", _GLCompensation.CustomersFrom.Oid)
|
|
If _GLCompensation.LiquidAssets_Main.CurrencyName.ShortName = "HUF" Then
|
|
_CollectionSource.Criteria("4") = CriteriaOperator.Parse("BallanceHUF<>0")
|
|
Else
|
|
_CollectionSource.Criteria("4") = CriteriaOperator.Parse("BallanceDEV<>0")
|
|
End If
|
|
|
|
_CollectionSource.EndUpdateCriteria()
|
|
|
|
e.View = Application.CreateListView("PCIGroup_ListView_Find", _CollectionSource, True)
|
|
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub aImportPCIGroupCompensation_Execute(sender As Object, e As PopupWindowShowActionExecuteEventArgs) Handles aImportPCIGroupCompensation.Execute
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _PCIGroup As PCIGroup
|
|
Dim _PCIGroup_P As PCIGroup
|
|
Dim _GLCompensation As GLCompensation = TryCast(View.SelectedObjects(0), GLCompensation)
|
|
Dim _GLHeader As GLHeader = TryCast(_GLCompensation, GLHeader)
|
|
Dim _GLRows As GLRows
|
|
Dim _GUID As Guid
|
|
Dim _CashType As eCashType
|
|
Dim _DebitChartOfAccounts As ChartOfAccounts
|
|
Dim _CreditChartOfAccounts As ChartOfAccounts
|
|
Dim _TransactionType As eTransactionType
|
|
If _GLCompensation Is Nothing Then Exit Sub
|
|
|
|
|
|
For Each _PCIGroup_P In e.PopupWindow.View.SelectedObjects
|
|
_PCIGroup = _ocur.GetObject(_PCIGroup_P)
|
|
_GLRows = _ocur.CreateObject(Of GLRows)()
|
|
_GUID = Guid.NewGuid()
|
|
_CashType = eCashType.ePartner
|
|
If _PCIGroup.PartnerType = ePartnerType.eReceivables Then
|
|
If _PCIGroup.BallanceHUF > 0 Or _PCIGroup.BallanceDEV > 0 Then
|
|
_DebitChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_CreditChartOfAccounts = _PCIGroup.Customers.CustomersGLParameters.GetChartOfAccounts(_GLCompensation.DateExecution.Year, eVATMode.eOut)
|
|
_TransactionType = eTransactionType.ePartnerCredit
|
|
_GLRows.CreditAmountHUF = _PCIGroup.BallanceHUF
|
|
_GLRows.CreditAmountDEV = _PCIGroup.BallanceDEV
|
|
_GLRows.DebitAmountHUF = 0
|
|
_GLRows.DebitAmountDEV = 0
|
|
_GLRows.InAmountHUF = _PCIGroup.BallanceHUF
|
|
_GLRows.InAmountDEV = _PCIGroup.BallanceDEV
|
|
|
|
Else
|
|
_CreditChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_DebitChartOfAccounts = _PCIGroup.Customers.CustomersGLParameters.GetChartOfAccounts(_GLCompensation.DateExecution.Year, eVATMode.eOut)
|
|
_TransactionType = eTransactionType.ePartnerDebit
|
|
|
|
_GLRows.DebitAmountHUF = _PCIGroup.BallanceHUF
|
|
_GLRows.DebitAmountDEV = _PCIGroup.BallanceDEV
|
|
_GLRows.CreditAmountHUF = 0
|
|
_GLRows.CreditAmountDEV = 0
|
|
_GLRows.OutAmountHUF = Math.Abs(_PCIGroup.BallanceHUF)
|
|
_GLRows.OutAmountDEV = Math.Abs(_PCIGroup.BallanceDEV)
|
|
End If
|
|
Else
|
|
If _PCIGroup.BallanceHUF > 0 Or _PCIGroup.BallanceDEV > 0 Then
|
|
_DebitChartOfAccounts = _PCIGroup.Customers.CustomersGLParameters.GetChartOfAccounts(_PCIGroup.DateExecution_Account.Year, eVATMode.eIn)
|
|
_CreditChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_TransactionType = eTransactionType.ePartnerDebit
|
|
_GLRows.DebitAmountHUF = _PCIGroup.BallanceHUF
|
|
_GLRows.DebitAmountDEV = _PCIGroup.BallanceDEV
|
|
_GLRows.CreditAmountDEV = 0
|
|
_GLRows.CreditAmountDEV = 0
|
|
_GLRows.OutAmountHUF = _PCIGroup.BallanceHUF
|
|
_GLRows.OutAmountDEV = _PCIGroup.BallanceDEV
|
|
Else
|
|
_CreditChartOfAccounts = _PCIGroup.Customers.CustomersGLParameters.GetChartOfAccounts(_PCIGroup.DateExecution_Account.Year, eVATMode.eIn)
|
|
_DebitChartOfAccounts = _GLCompensation.LiquidAssets_Main.GetChartOfAccounts(_GLCompensation.DateExecution.Year, 0)
|
|
_TransactionType = eTransactionType.ePartnerCredit
|
|
|
|
_GLRows.CreditAmountHUF = _PCIGroup.BallanceHUF
|
|
_GLRows.CreditAmountDEV = _PCIGroup.BallanceDEV
|
|
_GLRows.DebitAmountHUF = 0
|
|
_GLRows.DebitAmountDEV = 0
|
|
_GLRows.InAmountHUF = Math.Abs(_PCIGroup.BallanceHUF)
|
|
_GLRows.InAmountDEV = Math.Abs(_PCIGroup.BallanceDEV)
|
|
End If
|
|
|
|
End If
|
|
|
|
_GLRows.PartnerType = _PCIGroup.PartnerType
|
|
_GLRows.AddGLRows(_GLHeader, _DebitChartOfAccounts, _CreditChartOfAccounts, _
|
|
Math.Abs(_PCIGroup.BallanceDEV), Math.Abs(_PCIGroup.BallanceHUF), _GLCompensation.LiquidAssets_Main, _
|
|
_PCIGroup.Customers, _GLHeader.row_DateVAT, _GLHeader.row_VAT, _
|
|
_GLHeader.row_NoteRows, _GLHeader.row_UniqueObjects, _GLHeader.row_Controlling, _
|
|
_GLHeader.row_JobNumberObjects, _GLHeader.row_CostPlace, _GLHeader.row_CostHolder, _
|
|
_PCIGroup.ConnectInfo, eGLRowsTypeVAT.eNettoRow, _GUID, _
|
|
_TransactionType, _CashType, _PCIGroup.PartnerType)
|
|
_GLCompensation.RecalculateTotal()
|
|
_GLCompensation.GetBallanceDEV(_GLCompensation.row_LiquidAssets, _GLCompensation.DateExecution)
|
|
_GLCompensation.GetBallanceHUF(_GLCompensation.row_LiquidAssets, _GLCompensation.DateExecution)
|
|
|
|
_ocur.CommitChanges()
|
|
|
|
'--- Pontozás ellenőrzése !!!! ----------------------------------------------------------------------------------------------------------------
|
|
Dim _uow_pci As New UnitOfWork(_ocur.Session.DataLayer)
|
|
GLFunctions.ReconfigurePCI(_uow_pci, _GLCompensation.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo)
|
|
Next
|
|
End Sub
|
|
End Class |