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.Data.Filtering Imports DevExpress.Xpo Imports DevExpress.ExpressApp.SystemModule Imports System.IO Imports DevExpress.ExpressApp.Editors Imports DevExpress.Persistent.Validation Imports DevExpress.ExpressApp.Model Public Class GLBankVC Inherits DevExpress.ExpressApp.ViewController Protected selection As ArrayList Public Event InitWork(ByVal _Minimum As Long, ByVal _Step As Long, ByVal _Maximum As Long) Public Event DoWork() Public Event FinalWork 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() Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) MyBase.OnActivated() Frame.GetController(Of GLBankVC).aMakeEditable_GLBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aRecalculateBallance.Active.SetItemValue("", False) If View.Id Like "GLHeader_GLRows_ListView_Bank" Then Frame.GetController(Of LinkUnlinkController)()?.Active.SetItemValue("", False) Frame.GetController(Of NewObjectViewController)()?.Active.SetItemValue("", False) Frame.GetController(Of DeleteObjectsViewController)()?.Active.SetItemValue("", False) Frame.GetController(Of CloneObject.CloneObjectViewController)()?.Active.SetItemValue("", False) Frame.GetController(Of 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 If View.Id = "GLBank_DetailView" Then Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False) Frame.GetController(Of CloneObject.CloneObjectViewController)()?.Active.SetItemValue("", False) Dim _GLBank As GLBank = TryCast(View.CurrentObject, GLBank) If _GLBank Is Nothing Then Else If _GLBank.IsEditable = False Then Frame.GetController(Of ModificationsController)?.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aFinal_GLBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aFinalAndNew_GLBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aToTable_GLBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aToTableD_GLBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aBackToRowEdit_GLBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aImportSavedBank.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aImportPCIGroupBank.Active.SetItemValue("", False) Else If _ocur.Session.IsNewObject(_GLBank) = False Then _GLBank.BallanceHUF = _GLBank.GetBallanceOpenHUF(_GLBank.LiquidAssets_Main, _GLBank.DateExecution) _GLBank.BallanceDEV = _GLBank.GetBallanceOpenDEV(_GLBank.LiquidAssets_Main, _GLBank.DateExecution) _GLBank.RecalculateTotal() End If End If If _GLBank.IsStorno = True Then Frame.GetController(Of ModificationsController)?.Active.SetItemValue("", False) Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False) End If End If End If If View.Id = "GLBank_ListView" Then Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False) Frame.GetController(Of CloneObject.CloneObjectViewController)()?.Active.SetItemValue("", False) Frame.GetController(Of GLBankVC).aMakeEditable_GLBank.Active.SetItemValue("", True) Frame.GetController(Of GLBankVC).aRecalculateBallance.Active.SetItemValue("", True) End If If View.Id = "GLBank_ListView_Editable" Then AddHandler Frame.GetController(Of DeleteObjectsViewController).DeleteAction.Executed, AddressOf GLBank_DeleteAction_Executed Frame.GetController(Of CloneObject.CloneObjectViewController)()?.Active.SetItemValue("", False) End If If View.Id = "PCIGroup_ListView_HUF" Then Frame.GetController(Of LinkUnlinkController)()?.Active.SetItemValue("", False) Frame.GetController(Of NewObjectViewController)()?.Active.SetItemValue("", False) Frame.GetController(Of DeleteObjectsViewController)()?.Active.SetItemValue("", False) End If If View.Id = "GLBankPrepareName_GLBankPrepareNameGroup_ListView" Then Frame.GetController(Of NewObjectViewController)?.Active.SetItemValue("", False) Frame.GetController(Of LinkUnlinkController)?.Active.SetItemValue("", False) Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", False) AddHandler View.SelectionChanged, AddressOf view_SelectionChanged End If 'If View.Id = "PCIGroup_ListView_Find" Then ' Dim ListView As ListView = TryCast(View, ListView) ' ListView.CollectionSource.Criteria.Clear() 'End If End Sub Protected Overrides Sub OnDeactivated() MyBase.OnDeactivated() If View.Id = "GLBank_ListView" Then Frame.GetController(Of DeleteObjectsViewController)?.Active.SetItemValue("", True) End If If View.Id Like "GLHeader_GLRows_ListView_Bank" Then Frame.GetController(Of LinkUnlinkController)()?.Active.SetItemValue("", True) Frame.GetController(Of NewObjectViewController)()?.Active.SetItemValue("", True) Frame.GetController(Of DeleteObjectsViewController)()?.Active.SetItemValue("", True) Frame.GetController(Of CloneObject.CloneObjectViewController)()?.Active.SetItemValue("", True) Frame.GetController(Of ListViewProcessCurrentObjectController)?.Active.SetItemValue("", True) Dim nv As ListView = CType(View, ListView) Dim cs As PropertyCollectionSource = CType(nv.CollectionSource, PropertyCollectionSource) RemoveHandler cs.MasterObjectChanged, AddressOf cs_MasterObjectChanged End If If View.Id = "PCIGroup_ListView_HUF" Then Frame.GetController(Of LinkUnlinkController)()?.Active.SetItemValue("", True) Frame.GetController(Of NewObjectViewController)()?.Active.SetItemValue("", True) Frame.GetController(Of DeleteObjectsViewController)()?.Active.SetItemValue("", True) End If End Sub Private Sub view_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) If View Is Nothing Then Exit Sub If View.Id = "GLBankPrepareName_GLBankPrepareNameGroup_ListView" Then Dim nv As ListView = CType(View, ListView) Dim cs As PropertyCollectionSource = CType(nv.CollectionSource, PropertyCollectionSource) Dim _GLBankPrepareName As GLBankPrepareName Dim _GLBankPrepareNameGroup As GLBankPrepareNameGroup _GLBankPrepareName = TryCast(cs.MasterObject, GLBankPrepareName) If _GLBankPrepareName IsNot Nothing Then If View.SelectedObjects.Count > 0 Then _GLBankPrepareNameGroup = TryCast(View.SelectedObjects(0), GLBankPrepareNameGroup) If _GLBankPrepareNameGroup IsNot Nothing Then _GLBankPrepareName.BankPrepareName = _GLBankPrepareNameGroup.BankPrepareName End If End If End If End If End Sub Private Sub cs_MasterObjectChanged(ByVal sender As Object, ByVal e As EventArgs) Dim _GLBank As GLBank = TryCast((CType(sender, PropertyCollectionSource)).MasterObject, GLBank) If _GLBank.IsEditable = False Then Frame.GetController(Of GLBankVC).aToTable_GLBank.Active.SetItemValue("", False) End If End Sub Private Sub aMakeEditable_GLBank_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMakeEditable_GLBank.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace If _GLBank IsNot Nothing Then _GLBank.IsEditable = True _ocur.CommitChanges() e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLBank_DetailView", True, _onew.GetObject(_GLBank)) End If End Sub Private Sub aFinalAndNew_GLBank_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aFinalAndNew_GLBank.Execute GLBank_Final(e) Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace Dim _GLBank_Finalized = _onew.GetObject(TryCast(e.SelectedObjects(0), GLBank)) Dim _GLBank As GLBank = _onew.CreateObject(Of GLBank)() _GLBank.CustomersFrom = _GLBank_Finalized.CustomersFrom _GLBank.LiquidAssets_Main = _GLBank_Finalized.LiquidAssets_Main _GLBank.DateExecution = _GLBank_Finalized.DateExecution e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, TryCast(View.Model, Model.IModelDetailView).Id, True, _GLBank) e.ShowViewParameters.TargetWindow = TargetWindow.Current End Sub Private Sub aToTable_GLBank_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aToTable_GLBank.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) Dim _GLHeader As GLHeader = TryCast(_GLBank, GLHeader) Dim _GLRows As GLRows Dim _GUID As Guid = Guid.NewGuid() Dim _CashType As eCashType If _GLBank Is Nothing Then Exit Sub _GLRows = _ocur.CreateObject(Of GLRows)() If _GLBank.row_TransactionType = eTransactionType.ePartnerCredit Or _GLBank.row_TransactionType = eTransactionType.ePartnerDebit Then _CashType = eCashType.ePartner If _GLBank.row_PartnerType = ePartnerType.eReceivables Then If _GLBank.row_TransactionType = eTransactionType.ePartnerCredit Then _GLHeader.row_DebitChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) _GLHeader.row_CreditChartOfAccounts = _GLBank.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLBank.DateExecution.Year, eVATMode.eOut) ElseIf _GLBank.row_TransactionType = eTransactionType.ePartnerDebit Then _GLHeader.row_DebitChartOfAccounts = _GLBank.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLBank.DateExecution.Year, eVATMode.eOut) _GLHeader.row_CreditChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) End If Else If _GLBank.row_TransactionType = eTransactionType.ePartnerCredit Then _GLHeader.row_DebitChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) _GLHeader.row_CreditChartOfAccounts = _GLBank.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLBank.DateExecution.Year, eVATMode.eIn) ElseIf _GLBank.row_TransactionType = eTransactionType.ePartnerDebit Then _GLHeader.row_DebitChartOfAccounts = _GLBank.row_Customer.CustomersGLParameters.GetChartOfAccounts(_GLBank.DateExecution.Year, eVATMode.eIn) _GLHeader.row_CreditChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) End If End If Else _CashType = eCashType.eNormal If _GLBank.row_TransactionType = eTransactionType.eNormalCredit Or _GLBank.row_TransactionType = eTransactionType.eCorrectionCreditHUF Then _GLHeader.row_DebitChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) _GLHeader.row_CreditChartOfAccounts = _GLBank.row_ChartOfAccounts Else _GLHeader.row_DebitChartOfAccounts = _GLBank.row_ChartOfAccounts _GLHeader.row_CreditChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) End If End If Select Case _GLBank.row_TransactionType Case eTransactionType.eNormalCredit, eTransactionType.ePartnerCredit, eTransactionType.eCorrectionCreditHUF _GLRows.CreditAmountHUF = _GLHeader.row_AmountHUF _GLRows.CreditAmountDEV = _GLHeader.row_AmountDEV _GLRows.DebitAmountHUF = 0 _GLRows.DebitAmountDEV = 0 _GLRows.InAmountHUF = _GLHeader.row_AmountHUF _GLRows.InAmountDEV = _GLHeader.row_AmountDEV _GLRows.InAmountDEV2 = _GLBank.row_AmountDEV2 _GLRows.CurrencyRate2 = _GLBank.row_CurrencyRate2 Case eTransactionType.eNormalDebit, eTransactionType.ePartnerDebit, eTransactionType.eCorrectionDebitHUF _GLRows.DebitAmountHUF = _GLHeader.row_AmountHUF _GLRows.DebitAmountDEV = _GLHeader.row_AmountDEV _GLRows.CreditAmountDEV = 0 _GLRows.CreditAmountDEV = 0 _GLRows.OutAmountHUF = _GLHeader.row_AmountHUF _GLRows.OutAmountDEV = _GLHeader.row_AmountDEV _GLRows.OutAmountDEV2 = _GLBank.row_AmountDEV2 _GLRows.CurrencyRate2 = _GLBank.row_CurrencyRate2 End Select _GLRows.PartnerType = _GLBank.row_PartnerType _GLRows.AddGLRows(_GLHeader, _GLHeader.row_DebitChartOfAccounts, _GLHeader.row_CreditChartOfAccounts, _ _GLHeader.row_AmountDEV, _GLHeader.row_AmountHUF, _GLBank.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, _ _GLBank.row_TransactionType, _CashType, _GLBank.row_PartnerType) _GLBank.RecalculateTotal() _GLBank.GetBallanceDEV(_GLBank.LiquidAssets_Main, _GLBank.DateExecution) _GLBank.GetBallanceHUF(_GLBank.LiquidAssets_Main, _GLBank.DateExecution) _ocur.CommitChanges() '--- Pontozás ellenőrzése !!!! ---------------------------------------------------------------------------------------------------------------- Select Case _GLBank.row_TransactionType Case eTransactionType.ePartnerCredit, eTransactionType.ePartnerDebit Dim _uow_pci As New UnitOfWork(_ocur.Session.DataLayer) GLFunctions.ReconfigurePCI(_uow_pci, _GLBank.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo) End Select '---------------------------------------------------------------------------------------------------------------------------------------------- _GLBank.row_NoteRows = "" _GLBank.row_AmountDEV = 0 _GLBank.row_AmountHUF = 0 _GLBank.row_PCIGroup = Nothing _GLBank.row_Customer = Nothing _GLBank.row_ConnectInfo = "" _GLBank.row_ChartOfAccounts = Nothing _GLBank.row_AmountDEV2 = 0 _GLBank.row_CurrencyRate2 = 0 '// 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_GLBank.Execute GLBank_Final(e) View.Close(False) End Sub #Region "SIS" Public Sub GLBank_Final(ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) If View.SelectedObjects.Count > 0 Then Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank As GLBank = TryCast(e.SelectedObjects(0), GLBank) Dim _GLRows As GLRows For Each _GLBank In e.SelectedObjects If _GLBank.GLRows.Count <= 0 Then Throw New Exception("*Nincs rögzített sor !") End If For Each _GLRows In _GLBank.GLRows _GLRows.LiquidAssets = _GLBank.LiquidAssets_Main Next _GLBank.GetBallanceHUF(_GLBank.LiquidAssets_Main, _GLBank.DateExecution) _GLBank.GetBallanceDEV(_GLBank.LiquidAssets_Main, _GLBank.DateExecution) _GLBank.IsEditable = False _ocur.CommitChanges() '// Az összes sorra vonatkozó pontozás újragenerálása, mert változhat a dátum ! For Each _GLRows In _GLBank.GLRows Dim _uow As New UnitOfWork(_ocur.Session.DataLayer) GLFunctions.ReconfigurePCI(_uow, _GLRows.GLHeader.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo) Next Next If _GLBank.CurrencyName.ShortName <> "HUF" Then Dim _uow As New UnitOfWork(_ocur.Session.DataLayer) GenerateCurrencyRateAverageStart(_uow, _GLBank.DateExecution.Year, _GLBank) End If End If End Sub Private Sub GenerateCurrencyRateAverageStart(_uow As UnitOfWork, _Year As Long, _GLBank As GLBank) Dim _GLRows_Collection As New XPCollection(Of GLRows) _ (PersistentCriteriaEvaluationBehavior.InTransaction, _uow, _ CriteriaOperator.Parse("LiquidAssets.Oid=? and GLHeader.IsEditable=False and GetDate(GLHeader.DateExecution)>=?", _ _GLBank.LiquidAssets_Main.Oid, New Date(_Year, 1, 1))) Dim _GLRows As GLRows Dim _SumAmountDEV As Double = 0 Dim _SumAmountHUF As Double = 0 Dim _LiquidAssetsRate As LiquidAssetsRate = _uow.FindObject(Of LiquidAssetsRate)(CriteriaOperator.Parse("LiquidAssets.oid=? and GetYear(DateExecution)=?", _ _GLBank.LiquidAssets_Main.Oid, _ _Year)) If _LiquidAssetsRate IsNot Nothing Then _SumAmountDEV = _LiquidAssetsRate.AmountDEV _SumAmountHUF = _LiquidAssetsRate.AmountHUF Else '// HA NINCS BEÁLLÍTVA AKKOR NEM FUT LE !" Exit Sub End If _GLRows_Collection.Sorting.Add(New SortProperty("GetDate(GLHeader.DateExecution)", DB.SortingDirection.Ascending)) _GLRows_Collection.Sorting.Add(New SortProperty("InAmountDEV", DB.SortingDirection.Descending)) 'RaiseEvent InitWork(1, 1, _GLRows_Collection.Count) 'For Each _GLRows In _GLRows_Collection ' '// A deviza a fix és az MNB árfolyammal újra kell számolni mindent ' RaiseEvent DoWork() ' If _GLRows.InAmountDEV > 0 Then ' Dim _CurrencyRate_MNB_Collection = New XPCollection(Of CurrencyRate) _ ' (_uow, CriteriaOperator.Parse("CurrencyName.ShortName=? and IsMNB=True and GetDate(DateValid)<=?", _ ' _GLBank.LiquidAssets_Main.CurrencyName.ShortName, _GLRows.GLHeader.DateExecution.Date)) ' _CurrencyRate_MNB_Collection.Sorting.Add(New SortProperty("DateValid", DB.SortingDirection.Descending)) ' If _CurrencyRate_MNB_Collection.Count > 0 Then ' For Each _CurrencyRate_MNB In _CurrencyRate_MNB_Collection ' If _CurrencyRate_MNB.DateValid.Date = _GLRows.GLHeader.DateExecution.Date Then ' _GLRows.InAmountHUF = Math.Round(_CurrencyRate_MNB.RateAverage * _GLRows.InAmountDEV, 4, MidpointRounding.AwayFromZero) ' _GLRows.AmountHUF = _GLRows.InAmountHUF ' Exit For ' End If ' Next ' End If ' End If 'Next 'RaiseEvent FinalWork '_uow.CommitChanges() _GLRows_Collection = New XPCollection(Of GLRows) _ (PersistentCriteriaEvaluationBehavior.InTransaction, _uow, _ CriteriaOperator.Parse("LiquidAssets.Oid=? and GLHeader.IsEditable=False and GetDate(GLHeader.DateExecution)>=?", _ _GLBank.LiquidAssets_Main.Oid, New Date(_Year, 1, 1))) _GLRows_Collection.Sorting.Add(New SortProperty("GetDate(GLHeader.DateExecution)", DB.SortingDirection.Ascending)) _GLRows_Collection.Sorting.Add(New SortProperty("InAmountDEV", DB.SortingDirection.Descending)) _GLRows_Collection.Sorting.Add(New SortProperty("OutAmountDEV", DB.SortingDirection.Ascending)) RaiseEvent InitWork(1, 1, _GLRows_Collection.Count) For Each _GLRows In _GLRows_Collection RaiseEvent DoWork() '// Árfolyamok helyrerakása If _GLRows.OutAmountDEV > 0 Then If _SumAmountDEV <> 0 Then _GLRows.OutAmountHUF = Math.Round(_GLRows.OutAmountDEV * (_SumAmountHUF / _SumAmountDEV), 4, MidpointRounding.AwayFromZero) _GLRows.AmountHUF = _GLRows.OutAmountHUF _GLRows.Save() _uow.CommitChanges() If _GLRows.PartnerType <> ePartnerType.eNotSet Then GLFunctions.ReconfigurePCI(_uow, _GLRows.GLHeader.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo) _uow.CommitChanges() End If Else Dim _CurrencyRate_MNB_Collection = New XPCollection(Of CurrencyRate) _ (_uow, CriteriaOperator.Parse("CurrencyName.ShortName=? and IsMNB=True and GetDate(DateValid)<=?", _ _GLBank.LiquidAssets_Main.CurrencyName.ShortName, _GLRows.GLHeader.DateExecution.Date)) _CurrencyRate_MNB_Collection.Sorting.Add(New SortProperty("DateValid", DB.SortingDirection.Descending)) If _CurrencyRate_MNB_Collection.Count > 0 Then For Each _CurrencyRate_MNB In _CurrencyRate_MNB_Collection If _CurrencyRate_MNB.DateValid.Date = _GLRows.GLHeader.DateExecution.Date Then _GLRows.OutAmountHUF = Math.Round(_CurrencyRate_MNB.RateAverage * _GLRows.OutAmountDEV, 4, MidpointRounding.AwayFromZero) _GLRows.AmountHUF = _GLRows.OutAmountHUF _GLRows.Save() _uow.CommitChanges() If _GLRows.PartnerType <> ePartnerType.eNotSet Then GLFunctions.ReconfigurePCI(_uow, _GLRows.GLHeader.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo) _uow.CommitChanges() End If Exit For End If Next End If End If _SumAmountDEV -= Math.Round(_GLRows.OutAmountDEV, 4, MidpointRounding.AwayFromZero) _SumAmountHUF -= Math.Round(_GLRows.OutAmountHUF, 4, MidpointRounding.AwayFromZero) If _SumAmountDEV < 0 Then _SumAmountDEV = 0 If _SumAmountHUF < 0 Then _SumAmountHUF = 0 Else _SumAmountDEV += Math.Round(_GLRows.InAmountDEV, 4, MidpointRounding.AwayFromZero) _SumAmountHUF += Math.Round(_GLRows.InAmountHUF, 4, MidpointRounding.AwayFromZero) End If Next _uow.CommitChanges() RaiseEvent FinalWork End Sub #End Region Private Sub aToTableD_GLBank_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aToTableD_GLBank.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 _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) 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 _GLBank.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 = _GLBank.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 _GLBank.RecalculateTotal() _ocur.CommitChanges() View.Refresh() End If End Sub Private Sub aBackToRowEdit_GLBank_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aBackToRowEdit_GLBank.Execute 'Visszatölti a sort editáláshoz Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) 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 _GLBank.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _GLBank.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 _GLBank.row_PCIGroup = _PCIGroup If _PCIGroup.CurrencyName_Account Is Nothing Then _GLBank.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _PCIGroup.CurrencyName.ShortName)) Else _GLBank.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _PCIGroup.CurrencyName_Account.ShortName)) End If If _GLBank.row_CurrencyName2 Is Nothing Then _GLBank.row_CurrencyName2 = _ocur.FindObject(Of CurrencyName)(CriteriaOperator.Parse("ShortName=?", _GLBank.CurrencyName.ShortName)) End If End If _GLBank.row_TransactionType = _GLRows.TransactionType _GLBank.row_PartnerType = _GLRows.PartnerType _GLBank.row_Customer = _GLRows.Customer _GLBank.row_ConnectInfo = _GLRows.ConnectInfo _GLBank.row_NoteRows = _GLRows.NoteRows _GLBank.row_CurrencyRate = _GLRows.CurrencyRate _GLBank.row_CurrencyRate2 = _GLRows.CurrencyRate2 If _GLRows.InAmountHUF > 0 Then _GLBank.row_ChartOfAccounts = _GLRows.CreditChartOfAccounts _GLBank.row_AmountDEV2 = _GLRows.InAmountDEV2 Else _GLBank.row_ChartOfAccounts = _GLRows.DebitChartOfAccounts _GLBank.row_AmountDEV2 = _GLRows.OutAmountDEV2 End If selection.Clear() 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 _GLBank.row_AmountDEV = _AmountDEV _GLBank.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 = _GLBank.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 aImportSavedBank_CustomizePopupWindowParams(ByVal sender As Object, ByVal e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aImportSavedBank.CustomizePopupWindowParams Dim _GLBank As GLBank = View.SelectedObjects(0) Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace Dim _CS As New CollectionSource(_onew, GetType(RegistryBankTransferView)) Dim _RegistryBankTransferviewCollection As XPCollection = _onew.CreateCollection(GetType(RegistryBankTransferView), _ CriteriaOperator.Parse("BankSavedFileName !='' and RegistryHeader.CustomersFrom=? and (BallanceHUF <> 0 Or BallanceDEV <> 0)", _onew.GetObject(_GLBank.CustomersFrom))) Dim _KeyCollection As Collection = New Collection() Dim _RegistryBankTransferView As RegistryBankTransferView For Each _RegistryBankTransferView In _RegistryBankTransferviewCollection _KeyCollection.Add(_RegistryBankTransferView.Oid) Next Dim _InOperator As New InOperator("Oid", _KeyCollection) _CS.BeginUpdateCriteria() _CS.Criteria.Clear() _CS.Criteria("First") = _InOperator _CS.EndUpdateCriteria() e.View = Application.CreateListView("RegistryBankTransfer_ListView_Import", _CS, False) e.View.Refresh() End Sub Private Sub aImportSavedBank_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aImportSavedBank.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _uow As New UnitOfWork(_ocur.Session.DataLayer) Dim _GLRows As GLRows Dim _GLHeader As GLHeader = TryCast(View.SelectedObjects(0), GLHeader) Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) Dim _RegistryBankTransfer_view_onew As RegistryBankTransferView Dim _RegistryBankTransfer_view As RegistryBankTransferView Dim _RegistryBankTransfer As RegistryBankTransfer Dim _DebitChartOfAccounts As ChartOfAccounts Dim _CreditChartOfAccounts As ChartOfAccounts Dim _GUID As Guid For Each _RegistryBankTransfer_view_onew In e.PopupWindow.View.SelectedObjects _RegistryBankTransfer_view = _ocur.GetObject(_RegistryBankTransfer_view_onew) _RegistryBankTransfer = _ocur.FindObject(Of RegistryBankTransfer)(CriteriaOperator.Parse("Oid=?", _RegistryBankTransfer_view.Oid)) _GLRows = _ocur.CreateObject(Of GLRows)() _GUID = Guid.NewGuid _DebitChartOfAccounts = _RegistryBankTransfer.RegistryHeader.Customers.CustomersGLParameters.GetChartOfAccounts(_RegistryBankTransfer.RegistryHeader.F_DateExecution.Year, eVATMode.eIn) _CreditChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_RegistryBankTransfer.RegistryHeader.F_DateExecution.Year, 0) _GLRows.DebitAmountHUF = _RegistryBankTransfer.AmountHUF _GLRows.DebitAmountDEV = _RegistryBankTransfer.AmountDEV _GLRows.OutAmountHUF = _RegistryBankTransfer.AmountHUF _GLRows.OutAmountDEV = _RegistryBankTransfer.AmountDEV _GLRows.AddGLRows(_GLHeader, _DebitChartOfAccounts, _CreditChartOfAccounts, _ _RegistryBankTransfer.AmountDEV, _RegistryBankTransfer.AmountHUF, _GLHeader.row_LiquidAssets, _ _RegistryBankTransfer.RegistryHeader.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, _ _RegistryBankTransfer.RegistryHeader.DocumentNumber, eGLRowsTypeVAT.eNettoRow, _GUID, _ eTransactionType.ePartnerDebit, eCashType.ePartner, ePartnerType.ePayabels) _ocur.CommitChanges() GLFunctions.ReconfigurePCI(_uow, _GLBank.CustomersFrom, _RegistryBankTransfer.RegistryHeader.Customers, ePartnerType.ePayabels, _RegistryBankTransfer.RegistryHeader.DocumentNumber) Next _GLBank.RecalculateTotal() View.Refresh() End Sub Private Sub aRecalculateBallance_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aRecalculateBallance.Execute Dim _LiquidAssets As LiquidAssets = TryCast(e.SelectedObjects(0), GLBank).LiquidAssets_Main Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank_Collection As New XPCollection(Of GLBank)(_ocur.Session, CriteriaOperator.Parse("LiquidAssets_Main=? and IsEditable=False ", _LiquidAssets)) Dim _GLBank As GLBank Dim _GLRows As GLRows Dim _InAmountHUF As Double = 0 Dim _OutAmountHUF As Double = 0 Dim _InAmountDEV As Double = 0 Dim _OutAmountDEV As Double = 0 Dim I As Long = 0 Dim _InAmountHUF_Open As Double = 0 Dim _OutAmountHUF_Open As Double = 0 Dim _InAmountDEV_Open As Double = 0 Dim _OutAmountDEV_Open As Double = 0 Dim _InAmountHUF_Close As Double = 0 Dim _OutAmountHUF_Close As Double = 0 Dim _InAmountDEV_Close As Double = 0 Dim _OutAmountDEV_Close As Double = 0 Try GLOBAL_HAS_Audit = False If _LiquidAssets IsNot Nothing Then _GLBank_Collection.Sorting.Add(New SortProperty("DateExecution", DB.SortingDirection.Ascending)) _GLBank_Collection.Sorting.Add(New SortProperty("DocumentNumber", DB.SortingDirection.Ascending)) _InAmountHUF = 0 _InAmountDEV = 0 _OutAmountHUF = 0 _OutAmountDEV = 0 RaiseEvent InitWork(1, 1, _GLBank_Collection.Count) For Each _GLBank In _GLBank_Collection _GLBank.BallanceHUF = 0 _GLBank.BallanceDEV = 0 RaiseEvent DoWork() I += 1 If I > 1 Then _GLBank.BallanceHUF = _InAmountHUF - _OutAmountHUF _GLBank.BallanceDEV = _InAmountDEV - _OutAmountDEV _ocur.CommitChanges() End If For Each _GLRows In _GLBank.GLRows _InAmountDEV += _GLRows.InAmountDEV _InAmountHUF += _GLRows.InAmountHUF _OutAmountDEV += _GLRows.OutAmountDEV _OutAmountHUF += _GLRows.OutAmountHUF Next _GLBank.RecalculateTotal() Next End If _ocur.CommitChanges() View.Refresh() Catch ex As Exception MsgBox(ex.Message) Finally GLOBAL_HAS_Audit = True RaiseEvent FinalWork End Try End Sub Private Sub aGLBankDivideRows_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aGLBankDivideRows.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 aGLBankDivideRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aGLBankDivideRows.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 aGenerateGLBankRateDiff_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aGenerateGLBankRateDiff.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank As GLBank = TryCast(e.SelectedObjects(0), GLBank) For Each _GLBank In e.SelectedObjects If Not _GLBank.CurrencyName.ShortName = "HUF" Then _GLBank.Reconfigure_RateDiff(_ocur, _GLBank) End If Next _ocur.CommitChanges() View.Refresh() End Sub Private Sub aImportPCIGroupBank_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aImportPCIGroupBank.CustomizePopupWindowParams Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) Dim _CollectionSource As CollectionSource = New CollectionSource(_onew, GetType(PCIGroup)) Dim _P As PCIGroup If _GLBank IsNot Nothing Then _CollectionSource.Criteria.Clear() _CollectionSource.BeginUpdateCriteria() _CollectionSource.Criteria("1") = CriteriaOperator.Parse("CurrencyName_Account.ShortName=?", _GLBank.LiquidAssets_Main.CurrencyName.ShortName) _CollectionSource.Criteria("2") = CriteriaOperator.Parse("PartnerType=?", _GLBank.row_PartnerType) _CollectionSource.Criteria("3") = CriteriaOperator.Parse("CustomersFrom.Oid=?", _GLBank.CustomersFrom.Oid) If _GLBank.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 aImportPCIGroupBank_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aImportPCIGroupBank.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _PCIGroup As PCIGroup Dim _PCIGroup_P As PCIGroup Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) Dim _GLHeader As GLHeader = TryCast(_GLBank, 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 _GLBank 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 _DebitChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) _CreditChartOfAccounts = _PCIGroup.Customers.CustomersGLParameters.GetChartOfAccounts(_GLBank.DateExecution.Year, eVATMode.eOut) _TransactionType = eTransactionType.ePartnerCredit Else _DebitChartOfAccounts = _PCIGroup.Customers.CustomersGLParameters.GetChartOfAccounts(_PCIGroup.DateExecution_Account.Year, eVATMode.eIn) _CreditChartOfAccounts = _GLBank.LiquidAssets_Main.GetChartOfAccounts(_GLBank.DateExecution.Year, 0) _TransactionType = eTransactionType.ePartnerDebit End If Select Case _PCIGroup.PartnerType Case ePartnerType.eReceivables _GLRows.CreditAmountHUF = _PCIGroup.BallanceHUF _GLRows.CreditAmountDEV = _PCIGroup.BallanceDEV _GLRows.DebitAmountHUF = 0 _GLRows.DebitAmountDEV = 0 _GLRows.InAmountHUF = _PCIGroup.BallanceHUF _GLRows.InAmountDEV = _PCIGroup.BallanceDEV Case ePartnerType.ePayabels _GLRows.DebitAmountHUF = _PCIGroup.BallanceHUF _GLRows.DebitAmountDEV = _PCIGroup.BallanceDEV _GLRows.CreditAmountDEV = 0 _GLRows.CreditAmountDEV = 0 _GLRows.OutAmountHUF = _PCIGroup.BallanceHUF _GLRows.OutAmountDEV = _PCIGroup.BallanceDEV End Select _GLRows.PartnerType = _PCIGroup.PartnerType _GLRows.AddGLRows(_GLHeader, _DebitChartOfAccounts, _CreditChartOfAccounts, _ _PCIGroup.BallanceDEV, _PCIGroup.BallanceHUF, _GLBank.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) _GLBank.RecalculateTotal() _GLBank.GetBallanceDEV(_GLBank.row_LiquidAssets, _GLBank.DateExecution) _GLBank.GetBallanceHUF(_GLBank.row_LiquidAssets, _GLBank.DateExecution) _ocur.CommitChanges() '--- Pontozás ellenőrzése !!!! ---------------------------------------------------------------------------------------------------------------- Dim _uow_pci As New UnitOfWork(_ocur.Session.DataLayer) GLFunctions.ReconfigurePCI(_uow_pci, _GLBank.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo) Next End Sub Private Sub GLBank_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 _GLBank As GLBank Dim _GLRows As GLRows Dim _GLRows_Collection As XPCollection(Of GLRows) For Each _GLBank In TryCast(e, SimpleActionExecuteEventArgs).SelectedObjects '// Pontozás erre a bankra vonatkozólag törölni ! _GLRows_Collection = New XPCollection(Of GLRows)(PersistentCriteriaEvaluationBehavior.InTransaction, _ocur.Session, CriteriaOperator.Parse("PartnerType<>'eNotSet' and GLHeader.Oid=?", _GLBank.Oid), True) For Each _GLRows In _GLRows_Collection GLFunctions.ReconfigurePCI(_uow, _GLBank.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo) Next Next End Sub Private Sub aPCICheckBankTransfer_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aPCICheckBankTransfer.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _uow As New UnitOfWork(_ocur.Session.DataLayer) Dim _RegistryBankTransferView As RegistryBankTransferView RaiseEvent InitWork(1, 1, View.SelectedObjects.Count) For Each _RegistryBankTransferView In View.SelectedObjects RaiseEvent DoWork() If _RegistryBankTransferView IsNot Nothing Then GLFunctions.ReconfigurePCI(_uow, _RegistryBankTransferView.RegistryHeader.CustomersFrom, _RegistryBankTransferView.RegistryHeader.Customers, 1, _RegistryBankTransferView.RegistryHeader.F_ConnectInfo) End If Next RaiseEvent FinalWork Frame.GetController(Of RefreshController).RefreshAction.DoExecute() End Sub Private Sub aGetCurrencyRateBank_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aGetCurrencyRateBank.Execute Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace) Dim _GLBank As GLBank = TryCast(View.SelectedObjects(0), GLBank) If _GLBank IsNot Nothing Then _GLBank.row_CurrencyRate = _GLBank.LiquidAssets_Main.GetCurrencyRateDate(_ocur, _GLBank.row_TransactionType, _GLBank.LiquidAssets_Main, _GLBank.DateExecution) End If End Sub End Class