Files
2017-03-08 11:21:27 +01:00

139 lines
7.9 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.Xpo
Imports DevExpress.ExpressApp.SystemModule
Public Class PCIDetailVC
Inherits DevExpress.ExpressApp.ViewController
Public Sub New()
MyBase.New()
'This call is required by the Component Designer.
InitializeComponent()
RegisterActions(components)
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
Frame.GetController(Of PCIDetailVC).aOpenObjectPCIDetail.Active.SetItemValue("", False)
Frame.GetController(Of PCIDetailVC).aViewAttachmentsPCIDetail.Active.SetItemValue("", False)
Frame.GetController(Of PCIDetailVC).aViewRegistryPCIDetail.Active.SetItemValue("", False)
Frame.GetController(Of PCIDetailVC).aPCICheckDetail.Active.SetItemValue("", False)
Frame.GetController(Of PCIDetailVC).aChangeCurrencyRatePCIDetail.Active.SetItemValue("", False)
If View.Id = "PCIDetail_ListView" Then
Frame.GetController(Of PCIDetailVC).aOpenObjectPCIDetail.Active.SetItemValue("", True)
Frame.GetController(Of PCIDetailVC).aViewAttachmentsPCIDetail.Active.SetItemValue("", True)
Frame.GetController(Of PCIDetailVC).aViewRegistryPCIDetail.Active.SetItemValue("", True)
Frame.GetController(Of PCIDetailVC).aPCICheckDetail.Active.SetItemValue("", True)
Frame.GetController(Of PCIDetailVC).aChangeCurrencyRatePCIDetail.Active.SetItemValue("", True)
Frame.GetController(Of RefreshController).RefreshAction.Active.SetItemValue("", True)
End If
End Sub
Private Sub aViewAttachmentsPCIDetail_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aViewAttachmentsPCIDetail.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _PCIDetail As PCIDetail = TryCast(View.SelectedObjects(0), PCIDetail)
If _PCIDetail IsNot Nothing Then
ViewAttachments.ViewAttachments(_ocur, Frame, _PCIDetail.CustomersFrom, _
_PCIDetail.Customers, _PCIDetail.ConnectInfo, _
"")
End If
End Sub
Private Sub aViewRegistryPCIDetail_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aViewRegistryPCIDetail.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _PCIDetail As PCIDetail = TryCast(View.SelectedObjects(0), PCIDetail)
If _PCIDetail IsNot Nothing Then
ViewRegistry.ViewRegistry(_ocur, Application, e, _PCIDetail.CustomersFrom, _
_PCIDetail.Customers, _PCIDetail.ConnectInfo)
End If
End Sub
Private Sub aOpenObjectPCIDetail_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aOpenObjectPCIDetail.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _PCIDetail As PCIDetail = TryCast(View.SelectedObjects(0), PCIDetail)
Dim _GLRows As GLRows
If _PCIDetail IsNot Nothing Then
_GLRows = _PCIDetail.GLRows
If _GLRows IsNot Nothing Then
If TryCast(_GLRows.GLHeader, GLAccounts) IsNot Nothing Then
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLAccounts_DetailView", True, _onew.GetObject(TryCast(_GLRows.GLHeader, GLAccounts)))
End If
If TryCast(_GLRows.GLHeader, GLCassa) IsNot Nothing Then
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLCassa_DetailView", True, _onew.GetObject(TryCast(_GLRows.GLHeader, GLCassa)))
End If
If TryCast(_GLRows.GLHeader, GLBank) IsNot Nothing Then
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLBank_DetailView", True, _onew.GetObject(TryCast(_GLRows.GLHeader, GLBank)))
End If
If TryCast(_GLRows.GLHeader, GLCompensation) IsNot Nothing Then
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLCompensation_DetailView", True, _onew.GetObject(TryCast(_GLRows.GLHeader, GLCompensation)))
End If
If TryCast(_GLRows.GLHeader, GLMixed) IsNot Nothing Then
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "GLMixed_DetailView", True, _onew.GetObject(TryCast(_GLRows.GLHeader, GLMixed)))
End If
End If
End If
End Sub
Private Sub aPCICheckDetail_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aPCICheckDetail.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
Dim _PCIDetail As PCIDetail = TryCast(View.SelectedObjects(0), PCIDetail)
If _PCIDetail IsNot Nothing Then
GLFunctions.ReconfigurePCI(_uow, _PCIDetail.CustomersFrom, _PCIDetail.Customers, _PCIDetail.PartnerType, _PCIDetail.ConnectInfo)
If Frame.GetController(Of RefreshController).RefreshAction.Enabled Then _
Frame.GetController(Of RefreshController).RefreshAction.DoExecute()
End If
End Sub
Private Sub aChangeCurrencyRatePCIDetail_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aChangeCurrencyRatePCIDetail.CustomizePopupWindowParams
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _PCIDetail As PCIDetail = TryCast(View.SelectedObjects(0), PCIDetail)
Dim _CurrencyRatePopup As CurrencyRatePopup = _onew.CreateObject(Of CurrencyRatePopup)()
If _PCIDetail IsNot Nothing Then
If _PCIDetail.GLRows IsNot Nothing Then
_CurrencyRatePopup.CurrencyRate = _PCIDetail.GLRows.CurrencyRate2
End If
End If
e.View = Application.CreateDetailView(_onew, "CurrencyRatePopup_DetailView", False, _CurrencyRatePopup)
End Sub
Private Sub aChangeCurrencyRatePCIDetail_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aChangeCurrencyRatePCIDetail.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
Dim _CurrencyRatePopup As CurrencyRatePopup = e.PopupWindow.View.SelectedObjects(0)
Dim _PCIDetail As PCIDetail = TryCast(View.SelectedObjects(0), PCIDetail)
Dim _GLRows As GLRows
Dim _CurrencyRate As Double = _CurrencyRatePopup.CurrencyRate
If _PCIDetail IsNot Nothing Then
If _PCIDetail.GLRows IsNot Nothing Then
_GLRows = _PCIDetail.GLRows
_GLRows.InAmountDEV2 = Math.Round(_GLRows.InAmountDEV * _CurrencyRate, 2, MidpointRounding.AwayFromZero)
_GLRows.OutAmountDEV2 = Math.Round(_GLRows.OutAmountDEV * _CurrencyRate, 2, MidpointRounding.AwayFromZero)
_GLRows.CurrencyRate2 = _CurrencyRate
_ocur.CommitChanges()
If _GLRows.GLHeader IsNot Nothing Then
GLFunctions.ReconfigurePCI(_uow, _GLRows.GLHeader.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo)
End If
End If
End If
End Sub
End Class