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

90 lines
3.5 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 Nuvolar.Module
Imports DevExpress.ExpressApp.Win.Editors
Imports DevExpress.Xpo
Imports DevExpress.XtraGrid.Columns
Public Class GLRowsVC
Inherits Nuvolar.Module.GLRowsVC
Dim _WaitFormClass As New WaitFormClass
Private _GridListEditor As GridListEditor
Public Sub New()
MyBase.New()
'This call is required by the Component Designer.
InitializeComponent()
RegisterActions(components)
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
AddHandler DoWork, AddressOf _WaitFormClass.DoWork
AddHandler InitWork, AddressOf _WaitFormClass.Initwork
AddHandler FinalWork, AddressOf _WaitFormClass.FinalWork
End Sub
Protected Overrides Sub OnDeactivated()
MyBase.OnDeactivated()
RemoveHandler DoWork, AddressOf _WaitFormClass.DoWork
RemoveHandler InitWork, AddressOf _WaitFormClass.Initwork
RemoveHandler FinalWork, AddressOf _WaitFormClass.FinalWork
If _GridListEditor IsNot Nothing Then
If _GridListEditor.GridView IsNot Nothing Then
RemoveHandler _GridListEditor.GridView.CellValueChanged, AddressOf GLRows_ListView_Bank_CellValueChanged
End If
End If
End Sub
Protected Overrides Sub OnViewControlsCreated()
MyBase.OnViewControlsCreated()
If View.Id = "GLRows_ListView_Bank" Then
_GridListEditor = TryCast(TryCast(View, ListView).Editor, GridListEditor)
If _GridListEditor IsNot Nothing Then
AddHandler _GridListEditor.GridView.CellValueChanged, AddressOf GLRows_ListView_Bank_CellValueChanged
End If
'If _GridListEditor IsNot Nothing Then
' _GridListEditor.AllowEdit = True
' For i As Integer = 0 To _GridListEditor.Columns.Count - 1
' If _GridListEditor.GridView.Columns(i).FieldName <> "CurrencyRate2" Then
' _GridListEditor.GridView.Columns(i).OptionsColumn.ReadOnly = True
' _GridListEditor.GridView.Columns(i).OptionsColumn.AllowEdit = False
' _GridListEditor.GridView.Columns(i).OptionsColumn.TabStop = False
' End If
' Next i
'End If
End If
End Sub
Private Sub GLRows_ListView_Bank_CellValueChanged(sender As Object, e As DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs)
If TryCast(e.Column, GridColumn).FieldName = "CurrencyRate2" Then
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
Dim _GLRows As GLRows = View.SelectedObjects(0)
If _GLRows IsNot Nothing Then
_GLRows.InAmountDEV2 = Math.Round(_GLRows.InAmountDEV * e.Value, 2, MidpointRounding.AwayFromZero)
_GLRows.OutAmountDEV2 = Math.Round(_GLRows.OutAmountDEV * e.Value, 2, MidpointRounding.AwayFromZero)
_GLRows.CurrencyRate2 = e.Value
_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