Files
Nuvolar/Nuvolar.Module/BusinessObjects/Business/BusinessTransactions/Contract/ContractsVC.vb
T
2017-03-08 11:21:27 +01:00

1492 lines
96 KiB
VB.net

Imports System
Imports System.ComponentModel
Imports System.Collections.Generic
Imports System.Diagnostics
Imports System.Text
Imports DevExpress.Persistent.Validation
Imports DevExpress.ExpressApp
Imports DevExpress.ExpressApp.Actions
Imports DevExpress.Persistent.Base
Imports DevExpress.Data.Filtering
Imports DevExpress.Xpo
Imports DevExpress.ExpressApp.Editors
Imports System.Linq
Imports DevExpress.ExpressApp.SystemModule
Imports DevExpress.ExpressApp.CloneObject
Imports DevExpress.ExpressApp.Utils
Imports DevExpress.Persistent.BaseImpl
Public Class ContractsVC
Inherits DevExpress.ExpressApp.ViewController
Protected _selection As ArrayList
Dim _InvoiceRowsSelection As ArrayList = New ArrayList
Protected _noselect As Boolean = False
Public Sub New()
MyBase.New()
_selection = New ArrayList()
InitializeComponent()
RegisterActions(components)
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
Frame.GetController(Of ContractsVC).aMarkAsReady.Active.SetItemValue("", False) ' -- Megjelölés Kész-nek
Frame.GetController(Of ContractsVC).aSendBackToEdit.Active.SetItemValue("", False) ' -- Visszaküldés szerkeszthetõnek
Frame.GetController(Of ContractsVC).aMarkAsSigned.Active.SetItemValue("", False) ' -- Megjelölés aláírtnak
Frame.GetController(Of ContractsVC).aMarkAsClosed.Active.SetItemValue("", False) ' -- Megjelölés lezártnak
Frame.GetController(Of ContractsVC).aMarkAsTerminating_Old.Active.SetItemValue("", False) ' -- Megjelölés megszakítottnak
Frame.GetController(Of ContractsVC).aMarkAsWaiting.Active.SetItemValue("", False) ' -- Megjelölés várakozónak
Frame.GetController(Of ContractsVC).aCloneContractsRows.Active.SetItemValue("", False) ' -- Kijelölt szerzodési sorok klónozása
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", False) ' -- Számla készítése szerzodés sorokból
Frame.GetController(Of ContractsVC).aCloneSelectedContracts.Active.SetItemValue("", False) ' -- Kijelölt szerzodések klónozása
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRowsCustomRate.Active.SetItemValue("", False) ' -- Kijelölt szerzodési sorokból Díjbekérot készít
Frame.GetController(Of ContractsVC).aCreateFinalInvoiceFromContract.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC)().aNewContractRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC)().aMergeContractRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC)().aDivideContractRows.Active.SetItemValue("", False)
If View.Id Like "Contracts_ListView*" Then
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
End If
If View.Id = "ContractRows_ListView_Invoice_Advance" Then
AddHandler Frame.GetController(Of DeleteObjectsViewController).DeleteAction.Executing, AddressOf ContractRows_ListView_Invoice_Advance_DeleteAction_Executing
End If
If View.Id Like "Contracts_ListView_*" Then
Frame.GetController(Of ContractsVC).aCloneSelectedContracts.Active.SetItemValue("", True)
AddHandler View.SelectionChanged, AddressOf view_SelectionChanged2
Frame.GetController(Of DeleteObjectsViewController).DeleteAction.TargetObjectsCriteria = _
"isnull(CertificateofContractRows)=True and isnull(RegistryRowsFinancialControlling)=True and isnull(InvoiceRows)=True and Contracts.State = 0"
Frame.GetController(Of DeleteObjectsViewController).DeleteAction.SelectionDependencyType = SelectionDependencyType.RequireMultipleObjects
Frame.GetController(Of DeleteObjectsViewController).DeleteAction.TargetObjectsCriteriaMode = TargetObjectsCriteriaMode.TrueForAll
End If
If View.Id Like "*ContractRows_ListView*" Then
AddHandler Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).DeleteAction.Executing, AddressOf DeleteAction_Executing
End If
'-------------------- LISTVIEW -------------------------------------------------------------------------------------------------------------------------
If View.Id = "ContractRows_RegistryRowsFinancialControlling_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController).Active.SetItemValue("", False)
End If
If View.Id = "ContractRows_ListView_Invoice_Advance" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController).Active.SetItemValue("", False)
'Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aDivideContractRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMergeContractRows.Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aCreateFinalInvoiceFromContract.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRowsCustomRate.Active.SetItemValue("", True) 'Ez is itt volt...
End If
If View.Id = "ContractRows_ListView_Invoice_CustomRate" Then
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aDivideContractRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMergeContractRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRowsCustomRate.Active.SetItemValue("", True)
End If
If View.Id = "ContractRows_ListView_Invoice_Not_MileStone" Or View.Id = "ContractRows_ListView_Invoice_MileStone" Then
Frame.GetController(Of ContractsVC)().aGenerateInvoicefromContractsRows.Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aCreateFinalInvoiceFromContract.Active.SetItemValue("", True)
End If
If View.Id = "ContractRows_ListView_Invoiced" Then
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", False)
End If
If View.Id = "ContractRows_ListView_Invoice_IsProforma" Then
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", False)
End If
If View.Id = "ContractRows_ListView_Invoice_Finalized" Then
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", False)
End If
If View.Id = "Contracts_ListView_Signed" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
End If
If View.Id = "Contracts_ContractRows_ListView" Then
Frame.GetController(Of ContractsVC)().aNewContractRows.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC)().aMergeContractRows.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC)().aDivideContractRows.Active.SetItemValue("", False)
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ModificationsController).Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aCloneContractsRows.Active.SetItemValue("", True)
Frame.GetController(Of LinkUnlinkController).Active.SetItemValue("", False)
Dim nv As ListView = CType(View, ListView)
Dim cs As PropertyCollectionSource = CType(nv.CollectionSource, PropertyCollectionSource)
Dim _Contracts As Contracts = TryCast(TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject, Contracts)
If _Contracts IsNot Nothing Then
If _Contracts.ContractTemplate IsNot Nothing Then
If _Contracts.ContractTemplate.IsTechnical = True Then
Frame.GetController(Of ModificationsController).Active.SetItemValue("", False)
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", False)
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", False)
End If
End If
End If
AddHandler cs.MasterObjectChanged, AddressOf cs_MasterObjectChanged
AddHandler View.SelectionChanged, AddressOf ContractRowsListView_selection_changed
End If
If View.Id = "ContractProductRows_ListView_Invoice" Then
Frame.GetController(Of ContractsVC)().aGenerateInvoicefromContractsRows.Active.SetItemValue("", True)
End If
If View.Id = "Contracts_ListView_Technical" Then
Frame.GetController(Of ContractsVC).aCloneSelectedContracts.Active.SetItemValue("", False)
End If
If View.Id = "InvoiceHeader_DescriptionChanger_PopUp_ListView" Then
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
End If
If View.Id = "Contracts_ListView_Subcontractor" Then
Frame.GetController(Of ContractsVC).aCloneSelectedContracts.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aModifyContractData.Active.SetItemValue("", False)
End If
If View.Id = "Contracts_ListView_Support" Then
Frame.GetController(Of ContractsVC).aCloneSelectedContracts.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aModifyContractData.Active.SetItemValue("", False)
End If
'-------------------- DETAILVIEW -----------------------------------------------------------------------------------------------------------------------
If View.Id = "ContractRows_DetailView" Then
If TryCast(View.SelectedObjects(0), ContractRows).InvoiceRows IsNot Nothing Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", False)
End If
End If
If View.Id = "Contracts_DetailView" Then
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", True)
Dim _Contracts = TryCast(View.SelectedObjects(0), Contracts)
If _Contracts IsNot Nothing Then
If _Contracts.State = State.Ready Or _Contracts.State = State.Signed Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
End If
End If
If _Contracts.State = State.Preparation Then
Frame.GetController(Of ContractsVC).aMarkAsReady.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aSendBackToEdit.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsSigned.Active.SetItemValue("", False)
End If
If _Contracts.State = State.Ready Then
Frame.GetController(Of ContractsVC).aMarkAsSigned.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aSendBackToEdit.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aMarkAsReady.Active.SetItemValue("", False)
End If
If _Contracts.State = State.Signed Then
Frame.GetController(Of ContractsVC).aMarkAsReady.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aSendBackToEdit.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsSigned.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsClosed.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aMarkAsTerminating_Old.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aMarkAsWaiting.Active.SetItemValue("", True)
End If
If _Contracts IsNot Nothing Then
If _Contracts.ContractTemplate IsNot Nothing Then
If _Contracts.ContractTemplate.IsTechnical = True Then '! Technikai szerzõdés esetén !!!
Frame.GetController(Of ModificationsController).Active.SetItemValue("", False)
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsClosed.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsReady.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsSigned.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsTerminating_Old.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aMarkAsWaiting.Active.SetItemValue("", False)
End If
End If
End If
End If
If View.Id = "ContractRowsToFinalInvoice_DetailView" Then
AddHandler Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DialogController)().AcceptAction.Executing, AddressOf ContractRowsToFinalInvoice_AcceptAction_Executing
End If
'-------------------- LookupListView -----------------------------------------------------------------------------------------------------------------------
If View.Id = "ContractRows_LookupListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", False)
End If
'A csoportos számlázás kijelölésváltozás figyelése, hogy csak azonos vállalattal rendelkezo sorokat lehessen kiválasztani
AddHandler View.SelectionChanged, AddressOf view_SelectionChanged
'Ha létezik proforma vagy véglegesített számla sor a szerzodéshez akkor ne lehessen törölni
End Sub
Protected Overrides Sub OnDeactivated()
MyBase.OnDeactivated()
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", True)
If View.Id = "ContractRows_RegistryRowsFinancialControlling_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController).Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController).Active.SetItemValue("", True)
End If
If View.Id = "Contracts_DetailView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ModificationsController).Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", True)
End If
If View.Id = "ContractRows_ListView_Invoice_Advance" Then
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRowsCustomRate.Active.SetItemValue("", False)
Frame.GetController(Of ContractsVC).aCreateFinalInvoiceFromContract.Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aCreateFinalInvoiceFromContract.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aDivideContractRows.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aMergeContractRows.Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRows.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aCreateFinalInvoiceFromContract.Active.SetItemValue("", True)
End If
If View.Id = "ContractRows_ListView_Invoice_CustomRate" Then
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController).Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aGenerateInvoicefromContractsRowsCustomRate.Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController).Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aDivideContractRows.Active.SetItemValue("", True)
Frame.GetController(Of ContractsVC).aMergeContractRows.Active.SetItemValue("", True)
End If
If View.Id = "ContractRowsToFinalInvoice_DetailView" Then
RemoveHandler Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DialogController)().AcceptAction.Executing, AddressOf ContractRowsToFinalInvoice_AcceptAction_Executing
End If
If View.Id = "ContractRows_ListView_Invoice_Advance" Then
RemoveHandler Frame.GetController(Of DeleteObjectsViewController).DeleteAction.Executing, AddressOf ContractRows_ListView_Invoice_Advance_DeleteAction_Executing
End If
End Sub
Sub ContractRowsToFinalInvoice_AcceptAction_Executing(sender As Object, e As System.ComponentModel.CancelEventArgs)
_noselect = True
End Sub
Sub ContractRowsListView_selection_changed(ByVal sender As Object, ByVal e As System.EventArgs)
Dim _ContractRows As ContractRows
For Each _ContractRows In View.SelectedObjects
If _ContractRows.InvoiceRows IsNot Nothing Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController).Active.SetItemValue("", False)
End If
Next
End Sub
Private Sub cs_MasterObjectChanged(ByVal sender As Object, ByVal e As EventArgs)
Dim _Contracts As Contracts = TryCast((CType(sender, PropertyCollectionSource)).MasterObject, Contracts)
If _Contracts Is Nothing Then Exit Sub
If _Contracts.State = State.Signed Or _Contracts.State = State.Ready Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", False)
End If
End Sub
Sub DeleteAction_Executing(sender As Object, e As System.ComponentModel.CancelEventArgs)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _ContractRows As ContractRows = TryCast(View.CurrentObject, ContractRows)
Dim _RegistryRowsFinancialControlling As RegistryRowsFinancialControlling
Dim _RegistryRowsFinancialControlling_Collection As XPCollection(Of RegistryRowsFinancialControlling)
If _ContractRows IsNot Nothing Then
If _ContractRows.Contracts.ContractTemplate.PartnerType = ePartnerType.ePayabels Then
If _ContractRows.CertificateofContractRows IsNot Nothing Then
e.Cancel = True
Throw New Exception("*Ehhez a szerzõdési sorhoz aktív teljesítési igazolás van rendelve !")
Exit Sub
End If
If _ContractRows.RegistryRowsFinancialControlling IsNot Nothing Then
e.Cancel = True
Throw New Exception("*Ehhez a szerzõdési sorhoz aktív számla igazolás van rendelve !")
Exit Sub
End If
ElseIf _ContractRows.Contracts.ContractTemplate.PartnerType = ePartnerType.eReceivables Then
If _ContractRows.InvoiceRows IsNot Nothing Then
e.Cancel = True
Throw New Exception("*Ehhez a szerzõdési sorhoz aktív számla van rendelve !")
Exit Sub
End If
If _ContractRows.InvoiceRowsAdvance IsNot Nothing Then
e.Cancel = True
Throw New Exception("*Ehhez a szerzõdési sorhoz aktív számla van rendelve !")
Exit Sub
End If
_RegistryRowsFinancialControlling_Collection = New XPCollection(Of RegistryRowsFinancialControlling) _
(_ocur.Session, CriteriaOperator.Parse("ReInvoice_ContractRows.Oid=?", _ContractRows.Oid))
For Each _RegistryRowsFinancialControlling In _RegistryRowsFinancialControlling_Collection
_RegistryRowsFinancialControlling.ReInvoice_ContractRows = Nothing
Next
End If
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 = "ContractRows_ListView_Invoice_Not_MileStone" Or _
View.Id = "ContractRows_ListView_Invoice_MileStone" Or _
View.Id = "ContractRows_ListView_Invoice_Advance" Or _
View.Id = "ContractRows_ListView_Invoice_CustomRate" Or _
View.Id = "ContractProductRows_ListView_Invoice" Then
Dim _ContractRows As ContractRows
If _noselect = False Then
_selection.Clear()
For Each _ContractRows In View.SelectedObjects
_selection.Add(_ContractRows)
Next
End If
'If View.SelectedObjects.Count > 0 Then
' Dim _FirstContractRowSelected As ContractRows = TryCast(View.SelectedObjects(0), ContractRows)
' Dim _LastContractRowSelected As ContractRows = TryCast(View.SelectedObjects(View.SelectedObjects.Count - 1), ContractRows)
' If _FirstContractRowSelected.Contracts.CustomersFrom IsNot _LastContractRowSelected.Contracts.CustomersFrom Then
' Frame.GetController(Of ContractsVC)().aGenerateInvoicefromContractsRows.Active.SetItemValue("", False)
' Else
' Frame.GetController(Of ContractsVC)().aGenerateInvoicefromContractsRows.Active.SetItemValue("", True)
' End If
'End If
End If
If View.Id Like "Contracts_ListView_*" Then
Dim _Contracts As Contracts
If _noselect = False Then
_selection.Clear()
For Each _Contracts In View.SelectedObjects
_selection.Add(_Contracts)
Next
End If
End If
If View.Id = "ContractRowsToFinalInvoice_InvoiceRows_ListView" Then
Dim _InvoiceRows As InvoiceRows
If _noselect = False Then
_selection.Clear()
For Each _InvoiceRows In View.SelectedObjects
_selection.Add(_InvoiceRows)
Next
End If
End If
End Sub
Private Sub view_SelectionChanged2(ByVal sender As Object, ByVal e As System.EventArgs)
Dim _Contracts As Contracts
If View.Id Like "Contracts_ListView_*" And _noselect = False Then
_selection.Clear()
For Each _Contracts In View.SelectedObjects
_selection.Add(_Contracts)
Next
End If
End Sub
Private Sub aCloneContractsRows_Cancel(ByVal sender As Object, ByVal e As System.EventArgs) Handles aCloneContractsRows.Cancel
_noselect = False
End Sub
Private Sub aCloneContractsRows_CustomizePopupWindowParams(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aCloneContractsRows.CustomizePopupWindowParams
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractRowsCloneView As ContractRowsCloneView = _onew.CreateObject(Of ContractRowsCloneView)()
_ContractRowsCloneView.DayOfExecution = eDayOfMonth.e1
_ContractRowsCloneView.ActionFrequency = eActionFrequency.eMonthly
_ContractRowsCloneView.DayOfExecutionInWeek = eDayOfWeek.eMonday
_ContractRowsCloneView.ActionCount = 1
e.View = Application.CreateDetailView(_onew, "ContractRowsCloneView_DetailView", False, _ContractRowsCloneView)
End Sub
Private Sub aCloneContractsRows_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aCloneContractsRows.Execute
'--- Az elsõ kijelölt szerzõdési sor alapján klónoz sorokat--------------------------------
Dim _ocur_original As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _uow As New UnitOfWork(_ocur_original.Session.DataLayer)
Dim _ContractRows As ContractRows
Dim _ContractRows_New As ContractRows
Dim _ContractRows_Selected As ContractRows
Dim _ContractRowsCloneView As ContractRowsCloneView = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractRowsCloneView)
Dim _DateStart As Date
Dim _DateCur As Date
Dim _DiffDay As Long
For Each _ContractRows_Selected In e.SelectedObjects
_ContractRows = _uow.GetObjectByKey(Of ContractRows)(_ContractRows_Selected.Oid)
For i = 1 To _ContractRowsCloneView.ActionCount
_ContractRows_New = New ContractRows(_uow)
If i = 1 Then _DateStart = _ContractRows.DateExecution
_ContractRows_New.Contracts = _ContractRows.Contracts
_ContractRows_New.Controlling = _ContractRows.Controlling
_ContractRows_New.CurrencyName = _ContractRows.CurrencyName
_ContractRows_New.CurrencyRate = _ContractRows.CurrencyRate
_ContractRows_New.Description = _ContractRows.Description
_ContractRows_New.NettoPriceDEV = _ContractRows.NettoPriceDEV
_ContractRows_New.NettoPriceHUF = _ContractRows.NettoPriceHUF
_ContractRows_New.PaymentOption = _ContractRows.PaymentOption
_ContractRows_New.QTT = _ContractRows.QTT
_ContractRows_New.QualityOption = _ContractRows.QualityOption
_ContractRows_New.ShipmentOption = _ContractRows.ShipmentOption
_ContractRows_New.ShortName = _ContractRows.ShortName
_ContractRows_New.Units = _ContractRows.Units
_ContractRows_New.ContractRowsType = _ContractRows.ContractRowsType
_ContractRows_New.DateExecution = _ContractRows.DateExecution
_ContractRows_New.MileStone = _ContractRows.MileStone
_ContractRows_New.VAT = _ContractRows.VAT
_ContractRows_New.UniqueObjects = _ContractRows.UniqueObjects
_ContractRows_New.CostHolder = _ContractRows.CostHolder
_ContractRows_New.CostPlace = _ContractRows.CostPlace
_ContractRows_New.JobNumberObjects = _ContractRows.JobNumberObjects
If _ContractRowsCloneView.ActionFrequency = eActionFrequency.eDaily Then
_DateCur = DateAdd(DateInterval.Day, i, _DateStart)
End If
If _ContractRowsCloneView.ActionFrequency = eActionFrequency.eMonthly Then
If _ContractRowsCloneView.DayOfExecution = eDayOfMonth.eLastDay Then
_DateCur = DateAdd(DateInterval.Month, i + 1, _DateStart)
_DateCur = DateAdd(DateInterval.Day, -1, CDate(Year(_DateCur) & "/" & Month(_DateCur) & "/01"))
Else
_DateCur = DateAdd(DateInterval.Month, i, _DateStart)
_DateCur = CDate(Year(_DateCur) & "/" & Month(_DateCur) & "/" & _ContractRowsCloneView.DayOfExecution)
End If
End If
If _ContractRowsCloneView.ActionFrequency = eActionFrequency.eWeekly Then
_DiffDay = _ContractRowsCloneView.DayOfExecutionInWeek - DatePart(DateInterval.Weekday, _DateStart)
_DiffDay += 1
_DateCur = DateAdd(DateInterval.WeekOfYear, i, _DateStart)
_DateCur = DateAdd(DateInterval.Day, _DiffDay, _DateCur)
End If
If _ContractRowsCloneView.ActionFrequency = eActionFrequency.eTwoWeekly Then
_DiffDay = _ContractRowsCloneView.DayOfExecutionInWeek - DatePart(DateInterval.Weekday, _DateStart)
_DiffDay += 1
_DateCur = DateAdd(DateInterval.WeekOfYear, i * 2, _DateStart)
_DateCur = DateAdd(DateInterval.Day, _DiffDay, _DateCur)
End If
If _ContractRowsCloneView.ActionFrequency = eActionFrequency.eQuarter Then
_DateCur = DateAdd(DateInterval.Quarter, i, _DateStart)
_DateCur = CDate(Year(_DateCur) & "/" & Month(_DateCur) & "/" & _ContractRowsCloneView.DayOfExecution)
End If
If _ContractRowsCloneView.ActionFrequency = eActionFrequency.eYear Then
_DateCur = DateAdd(DateInterval.Year, i, _DateStart)
_DateCur = CDate(Year(_DateCur) & "/" & Month(_DateCur) & "/" & _ContractRowsCloneView.DayOfExecution)
End If
_ContractRows_New.DateExecution = _DateCur
Next
Next
_uow.CommitChanges()
'-- NESTED FRAME REFRESH -----------------------------------------------------------------------------------------------------------------------
Dim nestedFrame As NestedFrame = TryCast(Frame, NestedFrame)
If nestedFrame IsNot Nothing Then
Dim parentView As View = nestedFrame.View
parentView.ObjectSpace.Refresh()
End If
End Sub
Private Sub aGenerateInvoicefromContractsRows_Cancel(ByVal sender As Object, ByVal e As System.EventArgs) Handles aGenerateInvoicefromContractsRows.Cancel
_noselect = False
End Sub
Private Sub aGenerateInvoicefromContractsRows_CustomizePopupWindowParams(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aGenerateInvoicefromContractsRows.CustomizePopupWindowParams
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractsRowsToInvoice As ContractsRowsToInvoice = _ocur.CreateObject(Of ContractsRowsToInvoice)()
Dim _ContractsRowsToInvoice_New As ContractsRowsToInvoice
_ContractsRowsToInvoice.Description = ""
_ContractsRowsToInvoice.CurrencyRate = 1
_ContractsRowsToInvoice.DateExecution = GetSQLTime(_ocur.Session)
_ContractsRowsToInvoice.BankInformation = Nothing
_ContractsRowsToInvoice.ContractRows = _selection(0)
_noselect = True
_ContractsRowsToInvoice.Save()
_ocur.CommitChanges()
_ContractsRowsToInvoice_New = _onew.GetObject(_ContractsRowsToInvoice)
e.View = Application.CreateDetailView(_onew, "ContractsRowsToInvoice_DetailView", False, _ContractsRowsToInvoice_New)
End Sub
Private Sub aGenerateInvoicefromContractsRows_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aGenerateInvoicefromContractsRows.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _ContractRowsCollection As New XPCollection(Of ContractRows)(_ocur.Session, CriteriaOperator.Parse("1=2"))
Dim _ContractsRowsToInvoice As ContractsRowsToInvoice = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractsRowsToInvoice)
Dim _ContractRows As ContractRows
Dim _ContractRows_Selection As ContractRows
Dim _InvoiceRows_new As InvoiceRows
Dim _InvoiceRows_Array As New ArrayList()
On Error GoTo CheckError
Frame.GetController(Of DevExpress.ExpressApp.Validation.PersistenceValidationController)().Active.SetItemValue("", False)
' -- létrehozunk egy kollekciót a kiválasztott elemek tömbjébol
For Each _ContractRows_Selection In _selection
_ContractRows = _ocur.GetObject(_ContractRows_Selection)
_ContractRowsCollection.Add(_ContractRows)
Next
_InvoiceRows_Array.Clear()
_noselect = False
' -- rendezési feltételeket adunk a létrehozott kollekciónak
Dim sortCollection As SortingCollection = New SortingCollection()
sortCollection.Add(New SortProperty("Contracts.CustomersFrom.Name", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("Contracts.Customers.Name", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("DateExecution", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("CurrencyName.ShortName", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("PaymentOption.ShortName", DB.SortingDirection.Ascending))
_ContractRowsCollection.Sorting = sortCollection
Dim i As Long = 0
Dim _IsHeaderCreated As Boolean = False
Dim _IsNextWhile As Boolean = True
Dim _NG As NumberGenerator
Do While _IsNextWhile
Dim _InvoiceHeader As InvoiceHeader
Dim _InvoiceRows As InvoiceRows = _ocur.CreateObject(Of InvoiceRows)()
_InvoiceHeader = _ocur.CreateObject(GetType(InvoiceHeader))
_InvoiceHeader.PaymentOption = _ContractRowsCollection(i).PaymentOption
_InvoiceHeader.ShipmentOption = _ContractRowsCollection(i).ShipmentOption
'Ha a sor típusa elõleg akkor az elõleg számla típusát kell vennünk a szerz.sablonnak egyébként a rendeset
If _ContractRowsCollection(i).ContractRowsType = eContractRowsType.eAdvance Then
_InvoiceHeader.InvoiceType = _ContractRowsCollection(i).Contracts.ContractTemplate.InvoiceTypeAdvanced
Else
_InvoiceHeader.InvoiceType = _ContractRowsCollection(i).Contracts.ContractTemplate.InvoiceType
End If
If _InvoiceHeader.InvoiceType.NumberGeneratorProforma IsNot Nothing Then
_NG = _InvoiceHeader.InvoiceType.NumberGeneratorProforma
_InvoiceHeader.DocumentNumberProforma = _NG.GetNewNumber(_NG)
End If
_InvoiceHeader.IsProforma = True
_InvoiceHeader.IsEditable = False
_InvoiceHeader.CustomersFrom = _ContractRowsCollection(i).Contracts.CustomersFrom
_InvoiceHeader.Customers = _ContractRowsCollection(i).Contracts.Customers
_InvoiceHeader.Description = _ocur.GetObject(_ContractsRowsToInvoice.Description)
_InvoiceHeader.CurrencyName = _ContractRowsCollection(i).CurrencyName
_InvoiceHeader.CurrencyRate = _ocur.GetObject(_ContractsRowsToInvoice.CurrencyRate)
_InvoiceHeader.BankInformation = _ocur.GetObject(_ContractsRowsToInvoice.BankInformation)
'-- Próbaszámla miatt el kell menteni a tényleges adatokat --------------------------------------------------------
_InvoiceHeader.Saved_Customers_Name = _ContractRowsCollection(i).Contracts.Customers.Name.ToString
_InvoiceHeader.Saved_Customers_Address_Country = _ContractRowsCollection(i).Contracts.Customers.Address1.Country.ToString
_InvoiceHeader.Saved_Customers_Address_ZipPostal = _ContractRowsCollection(i).Contracts.Customers.Address1.ZipPostal.ToString
_InvoiceHeader.Saved_Customers_Address_Street = _ContractRowsCollection(i).Contracts.Customers.Address1.Street.ToString
_InvoiceHeader.Saved_Customers_Address_City = _ContractRowsCollection(i).Contracts.Customers.Address1.City.ToString
_InvoiceHeader.Saved_Customers_Address_StateProvince = _ContractRowsCollection(i).Contracts.Customers.Address1.StateProvince.ToString
_InvoiceHeader.Saved_Customers_VATNumber = _ContractRowsCollection(i).Contracts.Customers.VATNumber.ToString
_InvoiceHeader.Saved_Customers_VATNumberEU = _ContractRowsCollection(i).Contracts.Customers.VATNumberEU.ToString
_InvoiceHeader.Saved_CustomersFrom_Name = _ContractRowsCollection(i).Contracts.CustomersFrom.Name.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_ZipPostal = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.ZipPostal.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_Street = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.Street.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_City = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.City.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_StateProvince = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.StateProvince.ToString
_InvoiceHeader.Saved_CustomersFrom_VATNumber = _ContractRowsCollection(i).Contracts.CustomersFrom.VATNumber.ToString
_InvoiceHeader.Saved_CustomersFrom_VATNumberEU = _ContractRowsCollection(i).Contracts.CustomersFrom.VATNumberEU.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_ShortName = _InvoiceHeader.BankInformation.FullBankAccount.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_IBAN = _InvoiceHeader.BankInformation.IBAN.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_SWIFT = _InvoiceHeader.BankInformation.SWIFT.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_AccountNumber = _InvoiceHeader.BankInformation.AccountNumber.ToString
'------------------------------------------------------------------------------------------------------------------
If _ContractRowsCollection(i).ContractRowsType = eContractRowsType.eMileStone Then
_InvoiceHeader.DateExecution = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractsRowsToInvoice).DateExecution
Else
_InvoiceHeader.DateExecution = _ContractRowsCollection(i).DateExecution
End If
If _InvoiceHeader.PaymentOption.PayMode = ePayMode.InContinuous Then
_InvoiceHeader.DatePayment = _InvoiceHeader.DateExecution
Else
If _InvoiceHeader.PaymentOption.DatePaymentMode = eDatePaymentMode.eDateCreated Then
_InvoiceHeader.DatePayment = _InvoiceHeader.DateCreated.AddDays(_InvoiceHeader.PaymentOption.PayDay)
Else
_InvoiceHeader.DatePayment = _InvoiceHeader.DateExecution.AddDays(_InvoiceHeader.PaymentOption.PayDay)
End If
End If
_InvoiceHeader.CurrencyName = _ContractRowsCollection(i).CurrencyName
'-- A következo sorok vizsgálata és hozzáadása a fenti fejléchez amíg az ezt engedélyezo feltételek teljesülnek
Do
_InvoiceRows_new = _ocur.CreateObject(Of InvoiceRows)()
_InvoiceRows_new.Description = _ContractRowsCollection(i).Description
_InvoiceRows_new.QTT = _ContractRowsCollection(i).QTT
_InvoiceRows_new.QualityOption = _ContractRowsCollection(i).QualityOption
_InvoiceRows_new.VAT = _ContractRowsCollection(i).VAT
_InvoiceRows_new.Units = _ContractRowsCollection(i).Units
_InvoiceRows_new.ShortName = _ContractRowsCollection(i).ShortName
If Not _InvoiceHeader.CurrencyName.ShortName = "HUF" Then
_InvoiceRows_new.ListPriceHUF = Math.Round(_ContractRowsCollection(i).NettoPriceDEV * _ContractsRowsToInvoice.CurrencyRate, 2, MidpointRounding.AwayFromZero)
Else
_InvoiceRows_new.ListPriceHUF = _ContractRowsCollection(i).NettoPriceHUF
End If
_InvoiceRows_new.ListPriceDEV = _ContractRowsCollection(i).NettoPriceDEV
_InvoiceRows_new.ContractRows = _ContractRowsCollection(i)
_InvoiceRows_new.InvoiceHeader = _InvoiceHeader
_InvoiceRows_new.Save()
_InvoiceRows_Array.Add(_InvoiceRows_new)
If i = _ContractRowsCollection.Count - 1 Then
_IsNextWhile = False
Exit Do
End If
i += 1
Loop While _ContractRowsCollection(i - 1).Contracts.CustomersFrom Is _ContractRowsCollection(i).Contracts.CustomersFrom And _
_ContractRowsCollection(i - 1).Contracts.Customers Is _ContractRowsCollection(i).Contracts.Customers And _
_ContractRowsCollection(i - 1).DateExecution.Date = _ContractRowsCollection(i).DateExecution.Date And _
_ContractRowsCollection(i - 1).CurrencyName Is _ContractRowsCollection(i).CurrencyName And _
_ContractRowsCollection(i - 1).PaymentOption Is _ContractRowsCollection(i).PaymentOption
_InvoiceHeader.Save()
_ocur.CommitChanges()
_InvoiceHeader.RecalculateInvoice(_InvoiceHeader, _ocur)
_ocur.CommitChanges()
Loop
For Each _InvoiceRows_new In _InvoiceRows_Array
_ContractRows = _InvoiceRows_new.ContractRows
_ContractRows.InvoiceRows = _InvoiceRows_new
_ContractRows.Save()
Next
_ocur.CommitChanges()
_noselect = False
Frame.GetController(Of DevExpress.ExpressApp.Validation.PersistenceValidationController)().Active.SetItemValue("", True)
Exit Sub
CheckError:
If Err.Number = 91 Then Resume Next
If Err.Number = 13 Then Resume Next
End Sub
Private Sub aCloneSelectedContracts_Cancel(ByVal sender As Object, ByVal e As System.EventArgs) Handles aCloneSelectedContracts.Cancel
_noselect = False
End Sub
Private Sub aCloneSelectedContracts_CustomizePopupWindowParams(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aCloneSelectedContracts.CustomizePopupWindowParams
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractsCloneView As ContractsCloneView = _ocur.CreateObject(Of ContractsCloneView)()
Dim _ContractsCloneView_New As ContractsCloneView
_noselect = True
If _selection.Count > 1 Then
_ContractsCloneView.IsMultipleSelection = True
Else
_ContractsCloneView.IsMultipleSelection = False
End If
_ContractsCloneView.Save()
_ocur.CommitChanges()
_ContractsCloneView_New = _onew.GetObject(_ContractsCloneView)
e.View = Application.CreateDetailView(_onew, "ContractsCloneView_DetailView", False, _ContractsCloneView_New)
End Sub
Private Sub aCloneSelectedContracts_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aCloneSelectedContracts.Execute
Frame.GetController(Of DevExpress.ExpressApp.Validation.PersistenceValidationController)().Active.SetItemValue("", False) ' A validáció ideiglenes letiltása az akció végrehajtásának idejére.
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractsCloneView As ContractsCloneView = e.PopupWindow.View.SelectedObjects(0)
Dim _Contracts As Contracts
Dim _ContractRows As ContractRows
If _ContractsCloneView.ContractTemplate IsNot Nothing Then
For I = 0 To _selection.Count - 1
_Contracts = _ocur.GetObjectByKey(Of Contracts)((TryCast(_selection(I), Contracts)).Oid)
Dim _Contracts_New As Contracts = _ocur.CreateObject(Of Contracts)()
_Contracts_New.CustomersFrom = _ocur.GetObject(_ContractsCloneView.CustomersFrom)
_Contracts_New.ContractTemplate = _ocur.GetObject(_ContractsCloneView.ContractTemplate)
If _ContractsCloneView.Customers IsNot Nothing Then
_Contracts_New.Customers = _ocur.GetObject(_ContractsCloneView.Customers)
Else
_Contracts_New.Customers = _ocur.GetObject(_Contracts.Customers)
End If
_Contracts_New.DateClosed = _ocur.GetObject(_Contracts.DateClosed)
_Contracts_New.DateCreated = _ocur.GetObject(_Contracts.DateCreated)
_Contracts_New.DateExecution = _ocur.GetObject(_Contracts.DateExecution)
_Contracts_New.DateExpectClose = _ocur.GetObject(_Contracts.DateExpectClose)
_Contracts_New.DatePreContractSigned = _ocur.GetObject(_Contracts.DatePreContractSigned)
_Contracts_New.DateTerminating = _ocur.GetObject(_Contracts.DateTerminating)
_Contracts_New.DateWaiting = _ocur.GetObject(_Contracts.DateWaiting)
_Contracts_New.DocumentBody = _ocur.GetObject(_Contracts.DocumentBody)
_Contracts_New.BankInformation = _ocur.GetObject(_Contracts.BankInformation)
_Contracts_New.CurrencyName = _ocur.GetObject(_Contracts.CurrencyName)
_Contracts_New.CurrencyName_Invoice = _ocur.GetObject(_Contracts.CurrencyName_Invoice)
_Contracts_New.HRResponsible = _ocur.GetObject(_Contracts.HRResponsible)
_Contracts_New.JobNumberObjects = _ocur.GetObject(_Contracts.JobNumberObjects)
_Contracts_New.ShortName = _ocur.GetObject(_Contracts.ShortName)
_Contracts_New.State = State.Preparation '_ocur.GetObject(_Contracts.State)
_Contracts_New.DocumentNumber = _Contracts_New.ContractTemplate.NumberGenerator.GetNewNumber(_Contracts.ContractTemplate.NumberGenerator)
If _ContractsCloneView.AreContractRowsClone = True Then
Dim _ContractRowsCollection As XPCollection = _ocur.CreateCollection(GetType(ContractRows), CriteriaOperator.Parse("Contracts=?", _Contracts))
For Each _ContractRows In _ContractRowsCollection
'Csak a ki nem számlázott sorok átadása!
' If _ContractRows.InvoiceRows Is Nothing And _ContractRows.InvoiceRowsAdvance Is Nothing Then
Dim _ContractRows_New As ContractRows = _ocur.CreateObject(Of ContractRows)()
_ContractRows_New.Contracts = _ocur.GetObject(_Contracts_New)
_ContractRows_New.ContractRowsType = _ocur.GetObject(_ContractRows.ContractRowsType)
_ContractRows_New.Controlling = _ocur.GetObject(_ContractRows.Controlling)
_ContractRows_New.CostHolder = _ocur.GetObject(_ContractRows.CostHolder)
_ContractRows_New.CostPlace = _ocur.GetObject(_ContractRows.CostPlace)
_ContractRows_New.CurrencyName = _ocur.GetObject(_ContractRows.CurrencyName)
_ContractRows_New.CurrencyRate = _ocur.GetObject(_ContractRows.CurrencyRate)
_ContractRows_New.DateExecution = _ocur.GetObject(_ContractRows.DateExecution)
_ContractRows_New.Description = _ocur.GetObject(_ContractRows.Description)
_ContractRows_New.MileStone = _ocur.GetObject(_ContractRows.MileStone)
_ContractRows_New.NettoPriceDEV = _ocur.GetObject(_ContractRows.NettoPriceDEV)
_ContractRows_New.NettoPriceHUF = _ocur.GetObject(_ContractRows.NettoPriceHUF)
_ContractRows_New.PaymentOption = _ocur.GetObject(_ContractRows.PaymentOption)
_ContractRows_New.QTT = _ocur.GetObject(_ContractRows.QTT)
_ContractRows_New.QualityOption = _ocur.GetObject(_ContractRows.QualityOption)
_ContractRows_New.ShipmentOption = _ocur.GetObject(_ContractRows.ShipmentOption)
_ContractRows_New.ShortName = _ocur.GetObject(_ContractRows.ShortName)
_ContractRows_New.UniqueObjects = _ocur.GetObject(_ContractRows.UniqueObjects)
_ContractRows_New.Units = _ocur.GetObject(_ContractRows.Units)
_ContractRows_New.VAT = _ocur.GetObject(_ContractRows.VAT)
_ContractRows_New.JobNumberObjects = _ocur.GetObject(_ContractRows.JobNumberObjects)
_ContractRows_New.InvoicePeriod = _ocur.GetObject(_ContractRows.InvoicePeriod)
'End If
Next
End If
Next I
_ocur.CommitChanges()
Else
_ocur.Rollback()
Throw New Exception("*Nincs megadva szerzõdés sablon!")
End If
Frame.GetController(Of DevExpress.ExpressApp.Validation.PersistenceValidationController)().Active.SetItemValue("", True)
End Sub
Private Sub aGenerateInvoicefromContractsRowsCustomRate_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aGenerateInvoicefromContractsRowsCustomRate.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _ContractRowsCollection As New XPCollection(Of ContractRows)(_ocur.Session, CriteriaOperator.Parse("1=2"))
Dim _ContractsRowsToInvoice As ContractsRowsToInvoice = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractsRowsToInvoice)
Dim _ContractRows As ContractRows
Dim _ContractRows_Selection As ContractRows
Dim _InvoiceRows_new As InvoiceRows
Dim _InvoiceRows_Array As New ArrayList()
On Error GoTo CheckError
Frame.GetController(Of DevExpress.ExpressApp.Validation.PersistenceValidationController)().Active.SetItemValue("", False)
' -- létrehozunk egy kollekciót a kiválasztott elemek tömbjébol
For Each _ContractRows_Selection In _selection
_ContractRows = _ocur.GetObject(_ContractRows_Selection)
_ContractRowsCollection.Add(_ContractRows)
Next
_InvoiceRows_Array.Clear()
_noselect = False
' -- rendezési feltételeket adunk a létrehozott kollekciónak
Dim sortCollection As SortingCollection = New SortingCollection()
sortCollection.Add(New SortProperty("Contracts.CustomersFrom.Name", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("Contracts.Customers.Name", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("DateExecution", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("CurrencyName.ShortName", DB.SortingDirection.Ascending))
sortCollection.Add(New SortProperty("PaymentOption.ShortName", DB.SortingDirection.Ascending))
_ContractRowsCollection.Sorting = sortCollection
Dim i As Long = 0
Dim _IsHeaderCreated As Boolean = False
Dim _IsNextWhile As Boolean = True
Dim _NG As NumberGenerator
Do While _IsNextWhile
Dim _InvoiceHeader As InvoiceHeader
' Dim _InvoiceRows As InvoiceRows = _ocur.CreateObject(Of InvoiceRows)()
_InvoiceHeader = _ocur.CreateObject(GetType(InvoiceHeader))
_InvoiceHeader.PaymentOption = _ContractRowsCollection(i).PaymentOption
_InvoiceHeader.ShipmentOption = _ContractRowsCollection(i).ShipmentOption
If _ContractRowsCollection(i).ContractRowsType = eContractRowsType.eAdvance Then
_InvoiceHeader.InvoiceType = _ContractRowsCollection(i).Contracts.ContractTemplate.InvoiceTypeAdvanced
Else
_InvoiceHeader.InvoiceType = _ContractRowsCollection(i).Contracts.ContractTemplate.InvoiceTypeCustomRate
End If
If _InvoiceHeader.InvoiceType.NumberGeneratorProforma IsNot Nothing Then
_NG = _InvoiceHeader.InvoiceType.NumberGeneratorProforma
_InvoiceHeader.DocumentNumberProforma = _NG.GetNewNumber(_NG)
End If
_InvoiceHeader.IsProforma = True
_InvoiceHeader.IsEditable = False
_InvoiceHeader.CustomersFrom = _ContractRowsCollection(i).Contracts.CustomersFrom
_InvoiceHeader.Customers = _ContractRowsCollection(i).Contracts.Customers
_InvoiceHeader.Description = _ocur.GetObject(_ContractsRowsToInvoice.Description)
_InvoiceHeader.CurrencyName = _ContractRowsCollection(i).CurrencyName
_InvoiceHeader.CurrencyRate = _ocur.GetObject(_ContractsRowsToInvoice.CurrencyRate)
_InvoiceHeader.BankInformation = _ocur.GetObject(_ContractsRowsToInvoice.BankInformation)
'-- Próbaszámla miatt el kell menteni a tényleges adatokat --------------------------------------------------------
_InvoiceHeader.Saved_Customers_Name = _ContractRowsCollection(i).Contracts.Customers.Name.ToString
_InvoiceHeader.Saved_Customers_Address_Country = _ContractRowsCollection(i).Contracts.Customers.Address1.Country.ToString
_InvoiceHeader.Saved_Customers_Address_ZipPostal = _ContractRowsCollection(i).Contracts.Customers.Address1.ZipPostal.ToString
_InvoiceHeader.Saved_Customers_Address_Street = _ContractRowsCollection(i).Contracts.Customers.Address1.Street.ToString
_InvoiceHeader.Saved_Customers_Address_City = _ContractRowsCollection(i).Contracts.Customers.Address1.City.ToString
_InvoiceHeader.Saved_Customers_Address_StateProvince = _ContractRowsCollection(i).Contracts.Customers.Address1.StateProvince.ToString
_InvoiceHeader.Saved_Customers_VATNumber = _ContractRowsCollection(i).Contracts.Customers.VATNumber.ToString
_InvoiceHeader.Saved_Customers_VATNumberEU = _ContractRowsCollection(i).Contracts.Customers.VATNumberEU.ToString
_InvoiceHeader.Saved_CustomersFrom_Name = _ContractRowsCollection(i).Contracts.CustomersFrom.Name.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_ZipPostal = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.ZipPostal.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_Street = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.Street.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_City = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.City.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_StateProvince = _ContractRowsCollection(i).Contracts.CustomersFrom.Address1.StateProvince.ToString
_InvoiceHeader.Saved_CustomersFrom_VATNumber = _ContractRowsCollection(i).Contracts.CustomersFrom.VATNumber.ToString
_InvoiceHeader.Saved_CustomersFrom_VATNumberEU = _ContractRowsCollection(i).Contracts.CustomersFrom.VATNumberEU.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_ShortName = _InvoiceHeader.BankInformation.FullBankAccount.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_IBAN = _InvoiceHeader.BankInformation.IBAN.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_SWIFT = _InvoiceHeader.BankInformation.SWIFT.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_AccountNumber = _InvoiceHeader.BankInformation.AccountNumber.ToString
'------------------------------------------------------------------------------------------------------------------
If _ContractRowsCollection(i).ContractRowsType = eContractRowsType.eMileStone Then
_InvoiceHeader.DateExecution = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractsRowsToInvoice).DateExecution
Else
_InvoiceHeader.DateExecution = _ContractRowsCollection(i).DateExecution
End If
If _InvoiceHeader.PaymentOption.PayMode = ePayMode.InContinuous Then
_InvoiceHeader.DatePayment = _InvoiceHeader.DateExecution
Else
If _InvoiceHeader.PaymentOption.DatePaymentMode = eDatePaymentMode.eDateCreated Then
_InvoiceHeader.DatePayment = _InvoiceHeader.DateCreated.AddDays(_InvoiceHeader.PaymentOption.PayDay)
Else
_InvoiceHeader.DatePayment = _InvoiceHeader.DateExecution.AddDays(_InvoiceHeader.PaymentOption.PayDay)
End If
End If
_InvoiceHeader.CurrencyName = _ContractRowsCollection(i).CurrencyName
'-- A következo sorok vizsgálata és hozzáadása a fenti fejléchez amíg az ezt engedélyezõ feltételek teljesülnek
Do
_InvoiceRows_new = _ocur.CreateObject(Of InvoiceRows)()
_InvoiceRows_new.Description = _ContractRowsCollection(i).Description
_InvoiceRows_new.QTT = _ContractRowsCollection(i).QTT
_InvoiceRows_new.QualityOption = _ContractRowsCollection(i).QualityOption
_InvoiceRows_new.VAT = _ContractRowsCollection(i).VAT
_InvoiceRows_new.Units = _ContractRowsCollection(i).Units
_InvoiceRows_new.ShortName = _ContractRowsCollection(i).ShortName
If Not _InvoiceHeader.CurrencyName.ShortName = "HUF" Then
_InvoiceRows_new.ListPriceHUF = Math.Round(_ContractRowsCollection(i).NettoPriceDEV * _ContractsRowsToInvoice.CurrencyRate, 2, MidpointRounding.AwayFromZero)
Else
_InvoiceRows_new.ListPriceHUF = _ContractRowsCollection(i).NettoPriceHUF
End If
_InvoiceRows_new.ListPriceDEV = _ContractRowsCollection(i).NettoPriceDEV
_InvoiceRows_new.ContractRows = _ContractRowsCollection(i)
_InvoiceRows_new.InvoiceHeader = _InvoiceHeader
_InvoiceRows_new.CostHolder = _ocur.GetObject(_ContractRowsCollection(i).CostHolder)
_InvoiceRows_new.Controlling = _ocur.GetObject(_ContractRowsCollection(i).Controlling)
_InvoiceRows_new.CostPlace = _ocur.GetObject(_ContractRowsCollection(i).CostPlace)
_InvoiceRows_new.JobNumberObjects = _ocur.GetObject(_ContractRowsCollection(i).JobNumberObjects)
_InvoiceRows_new.UniqueObjects = _ocur.GetObject(_ContractRowsCollection(i).UniqueObjects)
_InvoiceRows_Array.Add(_InvoiceRows_new)
If i = _ContractRowsCollection.Count - 1 Then
_IsNextWhile = False
Exit Do
End If
i += 1
Loop While _ContractRowsCollection(i - 1).Contracts.CustomersFrom Is _ContractRowsCollection(i).Contracts.CustomersFrom And _
_ContractRowsCollection(i - 1).Contracts.Customers Is _ContractRowsCollection(i).Contracts.Customers And _
_ContractRowsCollection(i - 1).DateExecution.Date = _ContractRowsCollection(i).DateExecution.Date And _
_ContractRowsCollection(i - 1).CurrencyName Is _ContractRowsCollection(i).CurrencyName And _
_ContractRowsCollection(i - 1).PaymentOption Is _ContractRowsCollection(i).PaymentOption
_ocur.CommitChanges()
_InvoiceHeader.RecalculateInvoice(_InvoiceHeader, _ocur)
_ocur.CommitChanges()
Loop
For Each _InvoiceRows_new In _InvoiceRows_Array
_ContractRows = _InvoiceRows_new.ContractRows
_ContractRows.InvoiceRows = _InvoiceRows_new
Next
_ocur.CommitChanges()
_noselect = False
Frame.GetController(Of DevExpress.ExpressApp.Validation.PersistenceValidationController)().Active.SetItemValue("", True)
Exit Sub
CheckError:
If Err.Number = 91 Then Resume Next
If Err.Number = 13 Then Resume Next
End Sub
Private Sub aGenerateInvoicefromContractsRowsCustomRate_CustomizePopupWindowParams(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aGenerateInvoicefromContractsRowsCustomRate.CustomizePopupWindowParams
_noselect = True
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractsRowsToInvoice_New As ContractsRowsToInvoice = _onew.CreateObject(Of ContractsRowsToInvoice)()
_ContractsRowsToInvoice_New.Description = ""
_ContractsRowsToInvoice_New.CurrencyRate = 1
_ContractsRowsToInvoice_New.DateExecution = GetSQLTime(_onew.Session)
_ContractsRowsToInvoice_New.BankInformation = Nothing
_ContractsRowsToInvoice_New.ContractRows = _onew.GetObject(_selection(0))
e.View = Application.CreateDetailView(_onew, "ContractsRowsToInvoice_DetailView", False, _ContractsRowsToInvoice_New)
End Sub
Private Sub aGenerateInvoicefromContractsRowsCustomRate_Cancel(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles aGenerateInvoicefromContractsRowsCustomRate.Cancel
_noselect = False
End Sub
Private Sub aSendBackToEdit_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aSendBackToEdit.Execute
Dim _Contracts As Contracts = TryCast(View.CurrentObject, Contracts)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
_Contracts.State = State.Preparation
_ocur.CommitChanges()
View.Close()
End Sub
Private Sub aMarkAsReady_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMarkAsReady.Execute
Dim _Contracts As Contracts = TryCast(View.CurrentObject, Contracts)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
_Contracts.State = State.Ready
If _Contracts.DocumentNumber = "" Then
_Contracts.DocumentNumber = _Contracts.ContractTemplate.NumberGenerator.GetNewNumber(_Contracts.ContractTemplate.NumberGenerator)
End If
_ocur.CommitChanges()
View.Close()
End Sub
Private Sub aMarkAsSigned_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMarkAsSigned.Execute
Dim _Contracts As Contracts = TryCast(View.CurrentObject, Contracts)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
_Contracts.State = State.Signed
If _Contracts.DocumentNumber = "" Then
_Contracts.DocumentNumber = _Contracts.ContractTemplate.NumberGenerator.GetNewNumber(_Contracts.ContractTemplate.NumberGenerator)
End If
_ocur.CommitChanges()
View.Close()
End Sub
Private Sub aMarkAsClosed_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMarkAsClosed.Execute
Dim _Contracts As Contracts = TryCast(View.SelectedObjects(0), Contracts)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
_Contracts.State = State.Closed
_Contracts.DateClosed = Now
_ocur.CommitChanges()
View.Close()
End Sub
Private Sub aMarkAsWaiting_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMarkAsWaiting.Execute
Dim _Contracts As Contracts = TryCast(View.SelectedObjects(0), Contracts)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
_Contracts.State = State.Waiting
_Contracts.DateWaiting = Now
_ocur.CommitChanges()
View.Close()
End Sub
Private Sub aCreateFinalInvoiceFromContract_Execute(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aCreateFinalInvoiceFromContract.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _ContractRows As ContractRows = TryCast(View.SelectedObjects(0), ContractRows)
Dim _ContractRowsToFinalInvoice As ContractRowsToFinalInvoice = e.PopupWindow.View.SelectedObjects(0)
Dim _ListView As ListPropertyEditor = TryCast(e.PopupWindow.View, DetailView).FindItem("InvoiceRows")
Dim _InvoiceHeader As InvoiceHeader
Dim _InvoiceRows_New As InvoiceRows
Dim _NG As NumberGenerator
_noselect = True
On Error GoTo CheckError
_InvoiceHeader = _ocur.CreateObject(GetType(InvoiceHeader))
_InvoiceHeader.PaymentOption = _ContractRows.PaymentOption
_InvoiceHeader.ShipmentOption = _ContractRows.ShipmentOption
'Ha a sor típusa elõleg akkor az elõleg számla típusát kell vennünk a szerz.sablonnak egyébként a rendeset
If _ContractRows.ContractRowsType = eContractRowsType.eAdvance Then
_InvoiceHeader.InvoiceType = _ContractRows.Contracts.ContractTemplate.InvoiceTypeAdvanced
Else
_InvoiceHeader.InvoiceType = _ContractRows.Contracts.ContractTemplate.InvoiceType
End If
If _InvoiceHeader.InvoiceType.NumberGeneratorProforma IsNot Nothing Then
_NG = _InvoiceHeader.InvoiceType.NumberGeneratorProforma
_InvoiceHeader.DocumentNumberProforma = _NG.GetNewNumber(_NG)
End If
_InvoiceHeader.IsProforma = True
_InvoiceHeader.IsEditable = False
_InvoiceHeader.CustomersFrom = _ContractRows.Contracts.CustomersFrom
_InvoiceHeader.Customers = _ContractRows.Contracts.Customers
_InvoiceHeader.Description = _ocur.GetObject(_ContractRowsToFinalInvoice.Description)
_InvoiceHeader.CurrencyName = _ContractRows.CurrencyName
_InvoiceHeader.CurrencyRate = _ocur.GetObject(_ContractRowsToFinalInvoice.CurrencyRate)
_InvoiceHeader.BankInformation = _ocur.GetObject(_ContractRowsToFinalInvoice.BankInformation)
'-- Próbaszámla miatt el kell menteni a tényleges adatokat --------------------------------------------------------
_InvoiceHeader.Saved_Customers_Name = _ContractRows.Contracts.Customers.Name.ToString
_InvoiceHeader.Saved_Customers_Address_Country = _ContractRows.Contracts.Customers.Address1.Country.ToString
_InvoiceHeader.Saved_Customers_Address_ZipPostal = _ContractRows.Contracts.Customers.Address1.ZipPostal.ToString
_InvoiceHeader.Saved_Customers_Address_Street = _ContractRows.Contracts.Customers.Address1.Street.ToString
_InvoiceHeader.Saved_Customers_Address_City = _ContractRows.Contracts.Customers.Address1.City.ToString
_InvoiceHeader.Saved_Customers_Address_StateProvince = _ContractRows.Contracts.Customers.Address1.StateProvince.ToString
_InvoiceHeader.Saved_Customers_VATNumber = _ContractRows.Contracts.Customers.VATNumber.ToString
_InvoiceHeader.Saved_Customers_VATNumberEU = _ContractRows.Contracts.Customers.VATNumberEU.ToString
_InvoiceHeader.Saved_CustomersFrom_Name = _ContractRows.Contracts.CustomersFrom.Name.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_ZipPostal = _ContractRows.Contracts.CustomersFrom.Address1.ZipPostal.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_Street = _ContractRows.Contracts.CustomersFrom.Address1.Street.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_City = _ContractRows.Contracts.CustomersFrom.Address1.City.ToString
_InvoiceHeader.Saved_CustomersFrom_Address_StateProvince = _ContractRows.Contracts.CustomersFrom.Address1.StateProvince.ToString
_InvoiceHeader.Saved_CustomersFrom_VATNumber = _ContractRows.Contracts.CustomersFrom.VATNumber.ToString
_InvoiceHeader.Saved_CustomersFrom_VATNumberEU = _ContractRows.Contracts.CustomersFrom.VATNumberEU.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_ShortName = _InvoiceHeader.BankInformation.FullBankAccount.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_IBAN = _InvoiceHeader.BankInformation.IBAN.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_SWIFT = _InvoiceHeader.BankInformation.SWIFT.ToString
_InvoiceHeader.Saved_CustomersFrom_Bank_AccountNumber = _InvoiceHeader.BankInformation.AccountNumber.ToString
'------------------------------------------------------------------------------------------------------------------
If _ContractRows.ContractRowsType = eContractRowsType.eMileStone Then
_InvoiceHeader.DateExecution = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractsRowsToInvoice).DateExecution
Else
_InvoiceHeader.DateExecution = _ContractRows.DateExecution
End If
If _InvoiceHeader.PaymentOption.PayMode = ePayMode.InContinuous Then
_InvoiceHeader.DatePayment = _InvoiceHeader.DateExecution
Else
If _InvoiceHeader.PaymentOption.DatePaymentMode = eDatePaymentMode.eDateCreated Then
_InvoiceHeader.DatePayment = _InvoiceHeader.DateCreated.AddDays(_InvoiceHeader.PaymentOption.PayDay)
Else
_InvoiceHeader.DatePayment = _InvoiceHeader.DateExecution.AddDays(_InvoiceHeader.PaymentOption.PayDay)
End If
End If
_InvoiceHeader.CurrencyName = _ContractRows.CurrencyName
_InvoiceRows_New = _ocur.CreateObject(Of InvoiceRows)()
_InvoiceRows_New.Description = _ContractRows.Description
_InvoiceRows_New.QTT = _ContractRows.QTT
_InvoiceRows_New.QualityOption = _ContractRows.QualityOption
_InvoiceRows_New.VAT = _ContractRows.VAT
_InvoiceRows_New.Units = _ContractRows.Units
_InvoiceRows_New.ShortName = _ContractRows.ShortName
If Not _InvoiceHeader.CurrencyName.ShortName = "HUF" Then
_InvoiceRows_New.ListPriceHUF = Math.Round(_ContractRows.NettoPriceDEV * _ContractRowsToFinalInvoice.CurrencyRate, 2, MidpointRounding.AwayFromZero)
Else
_InvoiceRows_New.ListPriceHUF = _ContractRows.NettoPriceHUF
End If
_InvoiceRows_New.ListPriceDEV = _ContractRows.NettoPriceDEV
_InvoiceRows_New.ContractRows = _ContractRows
_InvoiceRows_New.InvoiceHeader = _InvoiceHeader
'-- Jelölõ adatok
_InvoiceRows_New.CostHolder = _ContractRows.CostHolder
_InvoiceRows_New.CostPlace = _ContractRows.CostPlace
_InvoiceRows_New.JobNumberObjects = _ContractRows.JobNumberObjects
_InvoiceRows_New.UniqueObjects = _ContractRows.UniqueObjects
_InvoiceRows_New.Controlling = _ContractRows.Controlling
_ContractRows.InvoiceRows = _InvoiceRows_New
For Each _InvoiceRows In _ListView.ListView.SelectedObjects
_InvoiceRows_New = _ocur.CreateObject(Of InvoiceRows)()
_InvoiceRows_New.InvoiceHeader = _InvoiceHeader
_InvoiceRows_New.QTT = _InvoiceRows.QTT * -1
_InvoiceRows_New.InvoiceRowsAdvance = _ocur.GetObject(_InvoiceRows)
_InvoiceRows_New.ContractRows = _ocur.GetObject(_InvoiceRows.ContractRows)
_InvoiceRows_New.CustomsTariffs = _ocur.GetObject(_InvoiceRows.CustomsTariffs)
_InvoiceRows_New.Description = _InvoiceRows.InvoiceHeader.DocumentNumber & " " & Format(_ocur.GetObject(_InvoiceRows.Description), "")
_InvoiceRows_New.DiscountPriceDEV = _ocur.GetObject(_InvoiceRows.DiscountPriceDEV)
_InvoiceRows_New.DiscountPriceHUF = _ocur.GetObject(_InvoiceRows.DiscountPriceHUF)
_InvoiceRows_New.InvoiceRowtype = _ocur.GetObject(_InvoiceRows.InvoiceRowtype)
_InvoiceRows_New.ListPriceDEV = _ocur.GetObject(_InvoiceRows.ListPriceDEV)
_InvoiceRows_New.ListPriceHUF = _ocur.GetObject(_InvoiceRows.ListPriceHUF)
_InvoiceRows_New.QualityOption = _ocur.GetObject(_InvoiceRows.QualityOption)
_InvoiceRows_New.ShortName = _ocur.GetObject(_InvoiceRows.ShortName)
_InvoiceRows_New.Units = _ocur.GetObject(_InvoiceRows.Units)
_InvoiceRows_New.VAT = _ocur.GetObject(_InvoiceRows.VAT)
'-- Jelölõ adatok
_InvoiceRows_New.Controlling = _ocur.GetObject(_InvoiceRows.Controlling)
_InvoiceRows_New.CostHolder = _ocur.GetObject(_InvoiceRows.CostHolder)
_InvoiceRows_New.CostPlace = _ocur.GetObject(_InvoiceRows.CostPlace)
_InvoiceRows_New.JobNumberObjects = _ocur.GetObject(_InvoiceRows.JobNumberObjects)
_InvoiceRows_New.UniqueObjects = _ocur.GetObject(_InvoiceRows.UniqueObjects)
Next
_ocur.CommitChanges()
_InvoiceRows_New.InvoiceHeader.RecalculateInvoice(_InvoiceRows_New.InvoiceHeader, _ocur)
_ocur.CommitChanges()
View.Close()
Exit Sub
CheckError:
If Err.Number = 91 Then Resume Next
If Err.Number = 13 Then Resume Next
MsgBox(Err.Description)
End Sub
Private Sub aCreateFinalInvoiceFromContract_CustomizePopupWindowParams(ByVal sender As System.Object, ByVal e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aCreateFinalInvoiceFromContract.CustomizePopupWindowParams
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractRowsToFinalInvoice_New As ContractRowsToFinalInvoice = _onew.CreateObject(Of ContractRowsToFinalInvoice)()
_ContractRowsToFinalInvoice_New.ContractRows = _onew.GetObject(TryCast(View.SelectedObjects(0), ContractRows))
_ContractRowsToFinalInvoice_New.DateExecution = GetSQLTime(_onew.Session)
e.View = Application.CreateDetailView(_onew, "ContractRowsToFinalInvoice_DetailView", False, _ContractRowsToFinalInvoice_New)
End Sub
Private Sub aDivideContractRows_CustomizePopupWindowParams(sender As System.Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aDivideContractRows.CustomizePopupWindowParams
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractRows As ContractRows = View.SelectedObjects(0)
Dim _ContractRowsDividePopup As ContractRowsDividePopup = _onew.CreateObject(Of ContractRowsDividePopup)()
_ContractRowsDividePopup.ContractRows = _onew.GetObject(_ContractRows)
_onew.CommitChanges()
e.View = Application.CreateDetailView(_onew, _ContractRowsDividePopup)
End Sub
Private Sub aDivideContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aDivideContractRows.Execute
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
Dim _ContractRowsDividePopup As ContractRowsDividePopup = e.PopupWindow.View.SelectedObjects(0)
Dim _ContractRows As ContractRows = _ocur.GetObjectByKey(Of ContractRows)(_ocur.GetObject(_ContractRowsDividePopup.ContractRows.Oid))
Dim _ContractRows_New As ContractRows
'-- új szerzõdési sor létrehozása és adatok átadása
_ContractRows_New = _ocur.CreateObject(Of ContractRows)()
_ContractRows_New.Contracts = _ContractRows.Contracts
'Értékek számítása
'-- ha százalékos arány lett megadva:
If _ContractRowsDividePopup.Percent > 0 Then
_ContractRows_New.NettoPriceHUF = Math.Round((_ContractRows.NettoPriceHUF * (_ContractRowsDividePopup.Percent / 100)), 0, MidpointRounding.AwayFromZero)
If Not _ContractRows.CurrencyName.ShortName = "HUF" Then
_ContractRows_New.NettoPriceDEV = Math.Round(_ContractRows.NettoPriceDEV * (_ContractRowsDividePopup.Percent / 100), 0, MidpointRounding.AwayFromZero)
_ContractRows_New.NettoPriceHUF = Math.Round((_ContractRows.NettoPriceDEV * _ContractRows.CurrencyRate), 0, MidpointRounding.AwayFromZero)
End If
End If
'-- ha konkrét összeg lett megadva:
'forint összeg
If _ContractRowsDividePopup.AmountHUF > 0 Then
_ContractRows_New.NettoPriceHUF = _ContractRowsDividePopup.AmountHUF
End If
'deviza összeg
If _ContractRowsDividePopup.AmountDEV > 0 Then
If Not _ContractRows.CurrencyName.ShortName = "HUF" Then
_ContractRows_New.NettoPriceDEV = _ContractRowsDividePopup.AmountDEV
_ContractRows_New.NettoPriceHUF = _ContractRows_New.NettoPriceDEV * _ContractRows.CurrencyRate
End If
End If
'--
_ContractRows_New.ContractRowsType = _ContractRows.ContractRowsType
_ContractRows_New.Controlling = _ContractRows.Controlling
_ContractRows_New.CostHolder = _ContractRows.CostHolder
_ContractRows_New.CostPlace = _ContractRows.CostPlace
_ContractRows_New.CurrencyName = _ContractRows.CurrencyName
_ContractRows_New.CurrencyRate = _ContractRows.CurrencyRate
_ContractRows_New.DateExecution = _ContractRows.DateExecution
_ContractRows_New.Description = _ContractRows.Description
_ContractRows_New.JobNumberObjects = _ContractRows.JobNumberObjects
_ContractRows_New.MileStone = _ContractRows.MileStone
_ContractRows_New.PaymentOption = _ContractRows.PaymentOption
_ContractRows_New.QTT = _ContractRows.QTT
_ContractRows_New.QualityOption = _ContractRows.QualityOption
_ContractRows_New.RowGroup1 = _ContractRows.RowGroup1
_ContractRows_New.RowGroup2 = _ContractRows.RowGroup2
_ContractRows_New.ShipmentOption = _ContractRows.ShipmentOption
_ContractRows_New.ShortName = _ContractRows.ShortName
_ContractRows_New.UniqueObjects = _ContractRows.UniqueObjects
_ContractRows_New.Units = _ContractRows.Units
_ContractRows_New.VAT = _ContractRows.VAT
'-- eredeti sor módosítása (összegek csökkentése az új sor értékével)
If _ContractRows.CurrencyName.ShortName = "HUF" Then
_ContractRows.NettoPriceHUF -= _ContractRows_New.NettoPriceHUF
Else
_ContractRows.NettoPriceDEV -= _ContractRows_New.NettoPriceDEV
' -- jelenleg nincs kalkuláltatva a szerzõdés sorban a deviza forintosított összege így nem számoltatom vele mert jelenleg minden szerzõdési sor árfolyama 1 (2011.08.02.)
'_ContractRows.NettoPriceHUF = _ContractRows_New.NettoPriceDEV * _ContractRows.CurrencyRate
End If
_ocur.CommitChanges()
End Sub
Private Sub aMergeContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aMergeContractRows.Execute
Dim _ContractRows As ContractRows
Dim _ContractRows_New As ContractRows
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _FirstSelectedContractRows As ContractRows
Dim _SumAmountHUF As Double = 0
Dim _SumAmountDEV As Double = 0
Dim _RowsCanBeMerged As Boolean = True
If View.SelectedObjects.Count > 0 Then
_FirstSelectedContractRows = TryCast(View.SelectedObjects(0), ContractRows)
'-- Ellenõrzés, hogy összevonhatóak-e a sorok (összes hasonlítása az elsõvel)
For Each _ContractRows In View.SelectedObjects
If Not View.SelectedObjects(0) Is _ContractRows Then 'önmagával ne vizsgáljon (az action multiple selected required selectin dependency -re van állítva tehát legalább két elem lesz a tömbben)
If Not (_ContractRows.Contracts Is _FirstSelectedContractRows.Contracts And _
_ContractRows.Controlling Is _FirstSelectedContractRows.Controlling And _
_ContractRows.UniqueObjects Is _FirstSelectedContractRows.UniqueObjects And _
_ContractRows.CostPlace Is _FirstSelectedContractRows.CostPlace And _
_ContractRows.CostHolder Is _FirstSelectedContractRows.CostHolder And _
_ContractRows.JobNumberObjects Is _FirstSelectedContractRows.JobNumberObjects And _
_ContractRows.PaymentOption Is _FirstSelectedContractRows.PaymentOption And _
_ContractRows.VAT Is _FirstSelectedContractRows.VAT And _
_ContractRows.DateExecution = _FirstSelectedContractRows.DateExecution And _
_ContractRows.CurrencyName Is _FirstSelectedContractRows.CurrencyName) Then
_RowsCanBeMerged = False
End If
End If
Next
'-- Amennyiben összevonhatóak átadjuk az elsõ adatait és a kijelölt sorok összegét egy új sornak majd a kiválaszottakat töröljük
' További megfejtendõ talányok:
'- mi lesz a keletkezett sor leírása? (jelenleg az elsõ kiválasztott elemének tulajdonságait kapja meg)
'- a fenti kritériák elégségesek-e?
If _RowsCanBeMerged Then
For Each _ContractRows In View.SelectedObjects
_SumAmountDEV += _ContractRows.NettoPriceDEV
_SumAmountHUF += _ContractRows.NettoPriceHUF
Next
_ContractRows_New = _ocur.CreateObject(Of ContractRows)()
_ContractRows_New.Contracts = _FirstSelectedContractRows.Contracts
_ContractRows_New.NettoPriceDEV = _SumAmountDEV
_ContractRows_New.NettoPriceHUF = _SumAmountHUF
_ContractRows_New.ContractRowsType = _FirstSelectedContractRows.ContractRowsType
_ContractRows_New.Controlling = _FirstSelectedContractRows.Controlling
_ContractRows_New.CostHolder = _FirstSelectedContractRows.CostHolder
_ContractRows_New.CostPlace = _FirstSelectedContractRows.CostPlace
_ContractRows_New.CurrencyName = _FirstSelectedContractRows.CurrencyName
_ContractRows_New.CurrencyRate = _FirstSelectedContractRows.CurrencyRate
_ContractRows_New.DateExecution = _FirstSelectedContractRows.DateExecution
_ContractRows_New.Description = _FirstSelectedContractRows.Description
_ContractRows_New.JobNumberObjects = _FirstSelectedContractRows.JobNumberObjects
_ContractRows_New.MileStone = _FirstSelectedContractRows.MileStone
_ContractRows_New.PaymentOption = _FirstSelectedContractRows.PaymentOption
_ContractRows_New.QTT = _FirstSelectedContractRows.QTT
_ContractRows_New.QualityOption = _FirstSelectedContractRows.QualityOption
_ContractRows_New.RowGroup1 = _FirstSelectedContractRows.RowGroup1
_ContractRows_New.RowGroup2 = _FirstSelectedContractRows.RowGroup2
_ContractRows_New.ShipmentOption = _FirstSelectedContractRows.ShipmentOption
_ContractRows_New.ShortName = _FirstSelectedContractRows.ShortName
_ContractRows_New.UniqueObjects = _FirstSelectedContractRows.UniqueObjects
_ContractRows_New.Units = _FirstSelectedContractRows.Units
_ContractRows_New.VAT = _FirstSelectedContractRows.VAT
_ocur.Delete(View.SelectedObjects)
Else
_ocur.Rollback()
Throw New Exception("*Nem lehet összevonni a kiválasztott sorokat!")
End If
End If
_ocur.CommitChanges()
End Sub
Private Sub aOpenRegistryInvoiceFromContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aOpenRegistryInvoiceFromContractRows.Execute
On Error Resume Next
Dim _Contractrows As ContractRows = TryCast(View.SelectedObjects(0), ContractRows)
Dim _CustomersFrom As CustomersFrom = _Contractrows.RegistryRowsFinancialControlling.RegistryHeader.CustomersFrom
Dim _Customers As Customers = _Contractrows.RegistryRowsFinancialControlling.RegistryHeader.Customers
Dim _DocumentNumber As String = _Contractrows.RegistryRowsFinancialControlling.RegistryHeader.DocumentNumber
ViewAttachments.ViewAttachments(View.ObjectSpace, Frame, _CustomersFrom, _Customers, _DocumentNumber, "")
End Sub
Private Sub aOpenInvoiceFromContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aOpenInvoiceFromContractRows.Execute
On Error Resume Next
Dim _Contractrows As ContractRows = TryCast(View.SelectedObjects(0), ContractRows)
Dim _CustomersFrom As CustomersFrom = _Contractrows.InvoiceRows.InvoiceHeader.CustomersFrom
Dim _Customers As Customers = _Contractrows.InvoiceRows.InvoiceHeader.Customers
Dim _DocumentNumber As String = _Contractrows.InvoiceRows.InvoiceHeader.DocumentNumber
Dim _DocumentNumberProforma As String = _Contractrows.InvoiceRows.InvoiceHeader.DocumentNumberProforma
ViewAttachments.ViewAttachments(View.ObjectSpace, Frame, _CustomersFrom, _Customers, _DocumentNumber, _DocumentNumberProforma)
End Sub
Private Sub aOpenCOCFromContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aOpenCOCFromContractRows.Execute
On Error Resume Next
Dim _Contractrows As ContractRows = TryCast(View.SelectedObjects(0), ContractRows)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _CertificateofContractHeader As CertificateofContractHeader
Dim _ReportData As ReportData
_CertificateofContractHeader = _Contractrows.CertificateofContractRows.CertificateofContractHeader
_ReportData = _ocur.FindObject(Of ReportData)(CriteriaOperator.Parse("Oid=?", _CertificateofContractHeader.Contracts.ContractTemplate.COC_ReportData.Oid), True)
If _ReportData Is Nothing Or _CertificateofContractHeader Is Nothing Then
Else
Frame.GetController(Of Reports.ReportServiceController).ShowPreview(_ReportData, CriteriaOperator.Parse("CertificateofContractHeader.DocumentNumber =?", _
_CertificateofContractHeader.DocumentNumber), True)
End If
End Sub
Private Sub aNewContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aNewContractRows.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _Contracts As Contracts = _ocur.GetObjectByKey(Of Contracts)(TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject.Oid)
Dim _ContractRows As ContractRows = _onew.CreateObject(Of ContractRows)()
_ContractRows.Contracts = _onew.GetObject(_Contracts)
If _Contracts.CurrencyName IsNot Nothing Then
_ContractRows.CurrencyName = _onew.GetObject(_Contracts.CurrencyName)
End If
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, "ContractRows_DetailView", True, _ContractRows)
End Sub
Private Sub aBackToEditableSignedContract_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aBackToEditableSignedContract.Execute
Try
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
Dim _Contracts As Contracts = TryCast(View.SelectedObjects(0), Contracts)
If _Contracts Is Nothing Then Throw New Exception("*Nics kiválasztott szerzõdés!")
If _Contracts.State <> State.Signed Then Throw New Exception("*A kiválasztott szerzõdés nem aláírt állapotban van!")
_Contracts.State = State.Preparation
_ocur.CommitChanges()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
End Try
End Sub
Private Sub aModifyContractData_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aModifyContractData.CustomizePopupWindowParams
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractModifyData As ContractModifyData = _onew.CreateObject(Of ContractModifyData)()
e.View = Application.CreateDetailView(_onew, "ContractModifyData_DetailView", False, _ContractModifyData)
End Sub
Private Sub aModifyContractData_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aModifyContractData.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _ContractModifyData As ContractModifyData = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractModifyData)
Dim _Contracts As Contracts = Nothing
For Each _Contracts In _selection
If _ContractModifyData.IsContractGroup = True Then
_Contracts.ContractGroup = _ocur.GetObject(_ContractModifyData.ContractGroup)
End If
If _ContractModifyData.IsCurrencyName_Invoice = True Then
_Contracts.CurrencyName_Invoice = _ocur.GetObject(_ContractModifyData.CurrencyName_Invoice)
End If
If _ContractModifyData.IsCurrencyName = True Then
_Contracts.CurrencyName = _ocur.GetObject(_ContractModifyData.CurrencyName)
End If
If _ContractModifyData.IsDateClosed = True Then
_Contracts.DateClosed = _ContractModifyData.DateClosed
End If
If _ContractModifyData.IsDateCreated = True Then
_ContractModifyData.DateCreated = _ContractModifyData.DateCreated
End If
If _ContractModifyData.IsHRResponsible = True Then
_Contracts.HRResponsible = _ocur.GetObject(_ContractModifyData.HRResponsible)
End If
If _ContractModifyData.IsJobNumberObjects = True Then
_Contracts.JobNumberObjects = _ocur.GetObject(_ContractModifyData.JobNumberObjects)
End If
If _ContractModifyData.IsUniqueObjects = True Then
_Contracts.UniqueObjects = _ocur.GetObject(_ContractModifyData.UniqueObjects)
End If
If _ContractModifyData.IsState = True Then
_Contracts.State = _ContractModifyData.State
End If
If _ContractModifyData.IsDefinite Then
_Contracts.Definite = _ContractModifyData.Definite
End If
If _ContractModifyData.IsTerminateDay Then
_Contracts.TerminateDay = _ContractModifyData.TerminateDay
End If
Next
_ocur.CommitChanges()
End Sub
Private Sub ContractRows_ListView_Invoice_Advance_DeleteAction_Executing(sender As Object, e As CancelEventArgs)
Try
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
Dim _ContractRows As ContractRows = TryCast(View.SelectedObjects(0), ContractRows)
If _ContractRows.Contracts.ContractRows.Count = 1 Then
_ocur.Delete(_ContractRows.Contracts)
End If
Dim _CRMEstate_Opportunity_AdvanceMoney As CRMEstate_Opportunity_AdvanceMoney = _
_ocur.FindObject(Of CRMEstate_Opportunity_AdvanceMoney)(CriteriaOperator.Parse("ContractRows=?", _ContractRows))
_ocur.Delete(_CRMEstate_Opportunity_AdvanceMoney)
_ocur.CommitChanges()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
End Try
End Sub
Private Sub aDescriptionSelect_CustomizePopupWindowParams(sender As Object, e As CustomizePopupWindowParamsEventArgs) Handles aDescriptionSelect.CustomizePopupWindowParams
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace()
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _InvoiceHeader_DescriptionChanger_PopUp As InvoiceHeader_DescriptionChanger_PopUp
Dim _CS_Description As New CollectionSource(_onew, GetType(InvoiceHeader_DescriptionChanger_PopUp))
Dim _InvoiceHeader_xpquery = New XPQuery(Of InvoiceHeader)(_ocur.Session)
Dim query = From _InvoiceHeader In _InvoiceHeader_xpquery _
Where _InvoiceHeader.Description IsNot Nothing _
Group _InvoiceHeader By _InvoiceHeader.Description Into g = Group _
Select New With {Key .Description = Description}
For Each item In query
_InvoiceHeader_DescriptionChanger_PopUp = _onew.CreateObject(Of InvoiceHeader_DescriptionChanger_PopUp)()
_InvoiceHeader_DescriptionChanger_PopUp.Description = item.Description
_CS_Description.Add(_InvoiceHeader_DescriptionChanger_PopUp)
Next
e.View = Application.CreateListView("InvoiceHeader_DescriptionChanger_PopUp_ListView", _CS_Description, False)
End Sub
Private Sub aDescriptionSelect_Execute(sender As Object, e As PopupWindowShowActionExecuteEventArgs) Handles aDescriptionSelect.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _ContractsRowsToInvoice As ContractsRowsToInvoice = TryCast(View.SelectedObjects(0), ContractsRowsToInvoice)
For Each _Description In e.PopupWindow.View.SelectedObjects
_ContractsRowsToInvoice.Description += vbNewLine & TryCast(_Description, InvoiceHeader_DescriptionChanger_PopUp).Description
Next
End Sub
Private Sub aMarkAsTerminating_CustomizePopupWindowParams(sender As Object, e As CustomizePopupWindowParamsEventArgs) Handles aMarkAsTerminating.CustomizePopupWindowParams
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ContractDatePopup As ContractDatePopup = _onew.CreateObject(Of ContractDatePopup)()
e.View = Application.CreateDetailView(_onew, "ContractDatePopup_DetailView", True, _ContractDatePopup)
End Sub
Private Sub aMarkAsTerminating_Execute(sender As Object, e As PopupWindowShowActionExecuteEventArgs) Handles aMarkAsTerminating.Execute
Dim _Contracts As Contracts = TryCast(View.SelectedObjects(0), Contracts)
Dim _ContractDatePopup As ContractDatePopup = TryCast(e.PopupWindow.View.SelectedObjects(0), ContractDatePopup)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
_Contracts.State = State.Terminating
_Contracts.DateTerminating = _ContractDatePopup.DateTerminating
_ocur.CommitChanges()
View.Close()
End Sub
End Class