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

708 lines
47 KiB
VB.net

Imports System
Imports System.ComponentModel
Imports System.Collections.Generic
Imports System.Diagnostics
Imports System.Text
Imports DevExpress.ExpressApp
Imports DevExpress.ExpressApp.Actions
Imports DevExpress.Persistent.Base
Imports DevExpress.ExpressApp.Editors
Imports DevExpress.Xpo
Imports DevExpress.Data.Filtering
Imports System.Linq
Imports DevExpress.Persistent.Validation
Imports DevExpress.Persistent.BaseImpl
Imports DevExpress.ExpressApp.Utils
Public Class DeliveryNoteInVC
Inherits DevExpress.ExpressApp.ViewController
Public Event InitWork(ByVal _Minimum As Long, ByVal _Step As Long, ByVal _Maximum As Long)
Public Event DoWork()
Public Event FinalWork
Public Sub New()
MyBase.New()
'This call is required by the Component Designer.
InitializeComponent()
RegisterActions(components)
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
Frame.GetController(Of DeliveryNoteInVC).aTotable_DeliveryNoteIn.Active.SetItemValue("", False) ' -- Sor hozzáadása (DeliveryNoteInHeader_DeliveryNoteInRows_ListView)
Frame.GetController(Of DeliveryNoteInVC).aTotableD_DeliveryNoteIn.Active.SetItemValue("", False) ' -- Sor törlése (DeliveryNoteInHeader_DeliveryNoteInRows_ListView)
Frame.GetController(Of DeliveryNoteInVC).aUp_DeliveryNoteIn.Active.SetItemValue("", False) ' kiválasztott sor fel
Frame.GetController(Of DeliveryNoteInVC).aDown_DeliveryNoteIn.Active.SetItemValue("", False) ' kiválasztott sor le
Frame.GetController(Of DeliveryNoteInVC).aFinalize_DeliveryNoteIn.Active.SetItemValue("", False) ' véglegesítés letiltása
Frame.GetController(Of DeliveryNoteInVC).aStorno_DeliveryNoteIn.Active.SetItemValue("", False) ' sztorno letiltása
Frame.GetController(Of DeliveryNoteInVC).aGenerateStorageIn_From_DeliveryNoteInRows.Active.SetItemValue("", False) ' Betárolás bejövő szállítólevél sorokból
Frame.GetController(Of DeliveryNoteInVC).aFinalize_And_Storage_DeliveryNoteIn.Active.SetItemValue("", False)
'------------------------- LISTVIEWS --------------------------------------------------------------------------------------------------------------------------------------
If View.Id = "DeliveryNoteInHeader_DeliveryNoteInrows_ListView" Then ' -- A beágyazott ListView feletti toolbar
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)().Active.SetItemValue("", False)
Frame.GetController(Of DeliveryNoteInVC).aUp_DeliveryNoteIn.Active.SetItemValue("", True)
Frame.GetController(Of DeliveryNoteInVC).aDown_DeliveryNoteIn.Active.SetItemValue("", True)
End If
If View.Id = "DeliveryNoteInHeader_ListView" Then
Frame.GetController(Of DeliveryNoteInVC).aGenerateStorageIn_From_DeliveryNoteInRows.Active.SetItemValue("", True)
End If
If View.Id = "StorageInfromDeliveryNoteInRowsHeader_StorageInfromDeliveryNoteInRowsRows_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)().Active.SetItemValue("", False)
End If
If View.Id = "DeliveryNoteInFromOrderOutRowsHeader_DeliveryNoteInFromOrderOutRowsRows_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", False)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)().Active.SetItemValue("", False)
End If
'------------------------- DETAILVIEWS ------------------------------------------------------------------------------------------------------------------------------------
If View.Id = "DeliveryNoteInHeader_DetailView" Then
Frame.GetController(Of DeliveryNoteInVC).aFinalize_DeliveryNoteIn.Active.SetItemValue("", True)
Frame.GetController(Of DeliveryNoteInVC).aStorno_DeliveryNoteIn.Active.SetItemValue("", True)
Frame.GetController(Of DeliveryNoteInVC).aFinalize_And_Storage_DeliveryNoteIn.Active.SetItemValue("", True)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(View.SelectedObjects(0), DeliveryNoteInHeader)
If _DeliveryNoteInHeader IsNot Nothing Then
Frame.GetController(Of DeliveryNoteInVC).aTotable_DeliveryNoteIn.Active.SetItemValue("", True)
Frame.GetController(Of DeliveryNoteInVC).aTotableD_DeliveryNoteIn.Active.SetItemValue("", True)
End If
End If
If View.Id = "StorageInfromDeliveryNoteInRowsHeader_DetailView" Or View.Id = "DeliveryNoteInFromOrderOutRowsHeader_DetailView" Then ' Előleg bekérő készítő view
AddHandler Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DialogController)().AcceptAction.Executing, AddressOf AcceptAction_Executing
End If
If View.Id = "DeliveryNoteInHeader_ListView_Deleted" Then
If TryCast(View, ListView) IsNot Nothing Then
If TryCast(View, ListView).CollectionSource IsNot Nothing Then
If TryCast(View, ListView).CollectionSource.Collection IsNot Nothing Then
If TryCast(TryCast(View, ListView).CollectionSource.Collection, ProxyCollection) IsNot Nothing Then
If TryCast(TryCast(View, ListView).CollectionSource.Collection, ProxyCollection).OriginalCollection IsNot Nothing Then
If TryCast(TryCast(TryCast(View, ListView).CollectionSource.Collection, ProxyCollection).OriginalCollection, XPCollection) IsNot Nothing Then
TryCast(TryCast(TryCast(View, ListView).CollectionSource.Collection, ProxyCollection).OriginalCollection, XPCollection).SelectDeleted = True
End If
End If
End If
End If
End If
End If
End If
End Sub
Protected Overrides Sub OnDeactivated()
MyBase.OnDeactivated()
'------------------------- LISTVIEWS --------------------------------------------------------------------------------------------------------------------------------------
If View.Id = "DeliveryNoteInHeader_DeliveryNoteInRows_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)().Active.SetItemValue("", True)
End If
If View.Id = "StorageInfromDeliveryNoteInRowsHeader_StorageInfromDeliveryNoteInRowsRows_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)().Active.SetItemValue("", True)
End If
If View.Id = "DeliveryNoteInFromOrderOutRowsHeader_DeliveryNoteInFromOrderOutRowsRows_ListView" Then
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DeleteObjectsViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.CloneObject.CloneObjectViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.NewObjectViewController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.LinkUnlinkController)().Active.SetItemValue("", True)
Frame.GetController(Of DevExpress.ExpressApp.SystemModule.ListViewProcessCurrentObjectController)().Active.SetItemValue("", True)
End If
'------------------------- DETAILVIEWS ------------------------------------------------------------------------------------------------------------------------------------
If View.Id = "DeliveryNoteInHeader_DeatilView" Then
Frame.GetController(Of DeliveryNoteInVC).aTotable_DeliveryNoteIn.Active.SetItemValue("", False)
Frame.GetController(Of DeliveryNoteInVC).aTotableD_DeliveryNoteIn.Active.SetItemValue("", False)
End If
If View.Id = "StorageInfromDeliveryNoteInRowsHeader_DetailView" Or View.Id = "DeliveryNoteInFromOrderOutRowsHeader_DetailView" Then
RemoveHandler Frame.GetController(Of DevExpress.ExpressApp.SystemModule.DialogController)().AcceptAction.Executing, AddressOf AcceptAction_Executing
End If
End Sub
Private Sub AcceptAction_Executing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs)
Validator.RuleSet.ValidateAll(View.ObjectSpace, View.SelectedObjects, DefaultContexts.Save)
End Sub
Private Sub aTotable_DeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aTotable_DeliveryNoteIn.Execute
' hozzáad egy új sort a fejléchez ------------------------
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = CType(e.SelectedObjects(0), DeliveryNoteInHeader)
Dim _DeliveryNoteInRows As DeliveryNoteInRows = New DeliveryNoteInRows(_ocur.Session)
Dim _OrderOutRows As OrderOutRows = _ocur.GetObject(_DeliveryNoteInHeader.row_OrderOutRows)
Dim ItemToFocus As ViewItem = TryCast(View, DetailView).FindItem("row_Products")
Try
If ItemToFocus IsNot Nothing Then
Dim ItemControl As Object
ItemControl = ItemToFocus.Control
ItemControl.Focus()
End If
If _OrderOutRows IsNot Nothing Then
If _DeliveryNoteInHeader.row_QTT + _OrderOutRows.QTT_DeliveryNoteIn > _OrderOutRows.QTT Then
Throw New Exception("*Nem volt ennyi megrendelve ebből a tételből !")
Else
_OrderOutRows.QTT_DeliveryNoteIn += _DeliveryNoteInHeader.row_QTT
End If
End If
_DeliveryNoteInRows.AddRows(_DeliveryNoteInHeader)
_ocur.CommitChanges()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Finally
_DeliveryNoteInHeader.row_Products = Nothing
_DeliveryNoteInHeader.row_QTT = 0
_DeliveryNoteInHeader.row_ListPriceHUF = 0
_DeliveryNoteInHeader.row_ListPriceDEV = 0
_DeliveryNoteInHeader.row_DiscountPercent = 0
_DeliveryNoteInHeader.row_OrderOutRows = Nothing
_DeliveryNoteInHeader.row_PacketNumber = ""
_DeliveryNoteInHeader.row_Weight = 0
_DeliveryNoteInHeader.row_CountryFrom = Nothing
View.Refresh()
End Try
End Sub
Private Sub aTotableD_DeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aTotableD_DeliveryNoteIn.Execute
' a kiválasztott sorokat törli -----------------------------------------------
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(e.SelectedObjects(0), DeliveryNoteInHeader)
Dim _DeliveryNoteInRows_Collection As ArrayList = New ArrayList
Dim _DeliveryNoteInRows_ListEditor As ListPropertyEditor
_DeliveryNoteInRows_ListEditor = TryCast(View, DetailView).FindItem("DeliveryNoteInrows")
For Each _DeliveryNoteInRows As DeliveryNoteInRows In _DeliveryNoteInRows_ListEditor.ListView.SelectedObjects
Dim _DelivNoteInRows As DeliveryNoteInRows = _DeliveryNoteInRows
For Each _DeliveryNoteInRows2 As DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
If _DeliveryNoteInRows2.RowIndex > _DelivNoteInRows.RowIndex Then
_DeliveryNoteInRows2.RowIndex -= 1
End If
Next
Next
For Each _DeliveryNoteInRows As DeliveryNoteInRows In _DeliveryNoteInRows_ListEditor.ListView.SelectedObjects
If _DeliveryNoteInRows.OrderOutRows IsNot Nothing Then
_DeliveryNoteInRows.OrderOutRows.QTT_DeliveryNoteIn -= _DeliveryNoteInRows.QTT
_DeliveryNoteInRows.OrderOutRows.Save()
End If
_DeliveryNoteInRows_Collection.Add(_DeliveryNoteInRows)
Next
_ocur.Delete(_DeliveryNoteInRows_Collection)
_ocur.CommitChanges()
View.Refresh()
End Sub
Private Sub aUp_DeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aUp_DeliveryNoteIn.Execute
' A kiválaszott sort egy sorral feljebb helyezi
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(View.SelectedObjects(0), DeliveryNoteInRows).DeliveryNoteInHeader
Dim _DeliveryNoteInRowsSelected As DeliveryNoteInRows = Nothing
Dim _DeliveryNoteInRowsMinus As DeliveryNoteInRows = Nothing
Dim _DeliveryNoteInRows As DeliveryNoteInRows = Nothing
Try
_DeliveryNoteInRowsSelected = TryCast(View.SelectedObjects(0), DeliveryNoteInRows) ' Az editor egy listview, kiveszi az első kijelölt sorát
Catch
' TESZT MIATT!!!! ----------------------------------------------------------------
Throw New Exception("*Nincs sor kiválasztva, vagy nem a sor kijelölése az aktív!")
End Try
If _DeliveryNoteInRowsSelected.RowIndex > 0 Then
For Each _DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
If _DeliveryNoteInRows.RowIndex = _DeliveryNoteInRowsSelected.RowIndex - 1 Then
_DeliveryNoteInRowsMinus = _DeliveryNoteInRows
Exit For
End If
Next
If _DeliveryNoteInRowsMinus IsNot Nothing Then
_DeliveryNoteInRowsSelected.RowIndex -= 1
_DeliveryNoteInRowsMinus.RowIndex += 1
End If
_DeliveryNoteInRowsMinus.Save()
_DeliveryNoteInRowsSelected.Save()
_ocur.CommitChanges()
View.Refresh()
End If
End Sub
Private Sub aDown_DeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aDown_DeliveryNoteIn.Execute
' A kiválaszott sort egy sorral lejebb helyezi
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(View.SelectedObjects(0), DeliveryNoteInRows).DeliveryNoteInHeader
Dim _DeliveryNoteInRowsSelected As DeliveryNoteInRows
Dim _DeliveryNoteInRowsPlus As DeliveryNoteInRows = Nothing
Dim _DeliveryNoteInRows As DeliveryNoteInRows
Try
_DeliveryNoteInRowsSelected = TryCast(View.SelectedObjects(0), DeliveryNoteInRows) ' Kiveszi a kijelölt sorok közül az elsőt
Catch
' TESZT MIATT!!!! ----------------------------------------------------------------
Throw New Exception("*Nincs sor kiválasztva, vagy nem a sor kijelölése az aktív!")
End Try
If _DeliveryNoteInRowsSelected.RowIndex < _DeliveryNoteInHeader.DeliveryNoteInrows.Count - 1 Then
For Each _DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
If _DeliveryNoteInRows.RowIndex = _DeliveryNoteInRowsSelected.RowIndex + 1 Then
_DeliveryNoteInRowsPlus = _DeliveryNoteInRows
Exit For
End If
Next
If _DeliveryNoteInRowsPlus IsNot Nothing Then
_DeliveryNoteInRowsSelected.RowIndex += 1
_DeliveryNoteInRowsPlus.RowIndex -= 1
End If
_DeliveryNoteInRowsPlus.Save()
_DeliveryNoteInRowsSelected.Save()
_ocur.CommitChanges()
View.Refresh()
End If
End Sub
Private Sub aFinalizeDeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aFinalize_DeliveryNoteIn.Execute
'---Az akció véglegesít egy bejövõ szállítólevelet------------------------------------------------
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(View.SelectedObjects(0), DeliveryNoteInHeader)
If _DeliveryNoteInHeader.DeliveryNoteInrows.Count <= 0 Then
Throw New Exception("*Nincs mit betárolni !")
End If
_DeliveryNoteInHeader.IsEditable = False
If _DeliveryNoteInHeader.DocumentNumber = "" Then
_DeliveryNoteInHeader.DocumentNumber = _DeliveryNoteInHeader.DeliveryNoteInType.NumberGenerator.GetNewNumber(_DeliveryNoteInHeader.DeliveryNoteInType.NumberGenerator)
End If
_DeliveryNoteInHeader.Save()
_ocur.CommitChanges()
View.Close()
End Sub
Private Sub aStorno_DeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aStorno_DeliveryNoteIn.Execute
'---Az akció sztornóz egy bejövõ szállítólevelet------------------------------------------------
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(View.SelectedObjects(0), DeliveryNoteInHeader)
Dim _IsFound As Boolean = False
Dim _StorageInRows_XPQuery As New XPQuery(Of StorageInRows)(_ocur.Session)
Dim query = From _SIR In _StorageInRows_XPQuery
Where _SIR.DeliveryNoteInRows.DeliveryNoteInHeader Is _DeliveryNoteInHeader
Group _SIR By _SIR.DeliveryNoteInRows Into g = Group _
Select New With {Key .DeliveryNoteInRows = DeliveryNoteInRows,
Key .QTT_Sum = g.Sum(Function(inv) inv.QTT)}
For Each _DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
_DeliveryNoteInRows.OrderOutRows.QTT_DeliveryNoteIn -= _DeliveryNoteInRows.QTT
_DeliveryNoteInRows.OrderOutRows = Nothing
For Each item In query
If item.DeliveryNoteInRows.Oid = _DeliveryNoteInRows.Oid And item.QTT_Sum <> 0 Then ' Ha talál olyan sort aminek azonos a szállítólevél sora az aktuálissal, akkor kiszállunk
_IsFound = True
Exit For
End If
Next
Next
If _IsFound = False Then
_DeliveryNoteInHeader.IsStorno = True
_DeliveryNoteInHeader.Save()
_ocur.CommitChanges()
View.Close()
Else
ThrowNewException("Erről a széllítólevélről már készült betárolás.") 'Teszt
End If
End Sub
Private Sub aGenerateStorageIn_From_DeliveryNoteInRows_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aGenerateStorageIn_From_DeliveryNoteInRows.CustomizePopupWindowParams
' Egy kiválaszott végleges szállítólevél azon sorait hozza fel egy listában, ahol a mennyiség még több mint a már erről a betárolt össz mennyiség
Dim _NOStorageInRows As New ArrayList
Try
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace()
Dim _DeliveryNoteInRows As DeliveryNoteInRows
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = _onew.GetObject(TryCast(View.SelectedObjects(0), DeliveryNoteInHeader))
Dim _StorageInfromDeliveryNoteInRowsHeader As New StorageInfromDeliveryNoteInRowsHeader(_onew.Session)
Dim _QTT_Sum As Double = 0
_StorageInfromDeliveryNoteInRowsHeader.DeliveryNoteInHeader = _DeliveryNoteInHeader
_StorageInfromDeliveryNoteInRowsHeader.DateCreation = GetSQLTime(_onew.Session)
' Az összes olyan betárolási sor keresése adott termékre, ami szállítólevéllről jött
Dim _StorageInRows_XPQuery As New XPQuery(Of StorageInRows)(_onew.Session)
Dim query = From _SIR In _StorageInRows_XPQuery
Where _SIR.DeliveryNoteInRows.DeliveryNoteInHeader Is _DeliveryNoteInHeader
Group _SIR By _SIR.DeliveryNoteInRows Into g = Group _
Select New With {Key .DeliveryNoteInRows = DeliveryNoteInRows,
Key .QTT_Sum = g.Sum(Function(inv) inv.QTT)}
For Each _DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
_QTT_Sum = 0
For Each item In query
If item.DeliveryNoteInRows.Oid = _DeliveryNoteInRows.Oid Then ' Ha talál olyan sort aminek azonos a szállítólevél sora az aktuálissal, akkor számolja hogy összesen mennyi van betárolva
_QTT_Sum = item.QTT_Sum
End If
Next
If _DeliveryNoteInRows.QTT > _QTT_Sum Then ' Csak azokat a sorokat hozza fel a ListView-ba amikre még lehet betárolást csinálni
Dim _StorageInfromDeliveryNoteInRowsRows As New StorageInfromDeliveryNoteInRowsRows(_onew.Session)
_StorageInfromDeliveryNoteInRowsRows.DeliveryNoteInRows = _DeliveryNoteInRows
_StorageInfromDeliveryNoteInRowsRows.StorageInfromDeliveryNoteInRowsHeader = _StorageInfromDeliveryNoteInRowsHeader
_StorageInfromDeliveryNoteInRowsRows.QTT_Process = _DeliveryNoteInRows.QTT - _QTT_Sum
_StorageInfromDeliveryNoteInRowsRows.QTT_Max = _StorageInfromDeliveryNoteInRowsRows.QTT_Process
If _StorageInfromDeliveryNoteInRowsRows.DeliveryNoteInRows.Products.Units.ShortName = "zsák" And _StorageInfromDeliveryNoteInRowsRows.DeliveryNoteInRows.Products.ProductGroups.Parent.Name = "VETŐ" Then
If _DeliveryNoteInRows.Weight = 0 Or String.IsNullOrEmpty(_DeliveryNoteInRows.PacketNumber) Then
_NOStorageInRows.Add(_DeliveryNoteInRows.Products)
End If
End If
End If
Next
_onew.CommitChanges()
e.View = Application.CreateDetailView(_onew, _StorageInfromDeliveryNoteInRowsHeader, False)
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Finally
If _NOStorageInRows.Count > 0 Then
Dim _ErrorMessage As String = "A következő szállítólevélről az alábbi sorok nem tárolhatóak be :" + vbNewLine
For Each _NOSIR As Products In _NOStorageInRows
_ErrorMessage += vbNewLine + _NOSIR.ProductNumber + " / " + _NOSIR.ShortName + vbNewLine
Next
_ErrorMessage += vbNewLine + "mert NINCS megadva a KÖTEGSZÁM vagy a SÚLY!"
'MsgBox(_ErrorMessage, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Throw New UserFriendlyException(_ErrorMessage)
View.Close()
End If
End Try
End Sub
Private Sub aGenerateStorageIn_From_DeliveryNoteInRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aGenerateStorageIn_From_DeliveryNoteInRows.Execute
' A popup-on kiválasztott bej. szállítólevél sorokból a kézzel megadott szándékkal végleges bet. bizonylatot hoz létre (Sorokkal)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _uow_lock As New UnitOfWork(_onew.Session.DataLayer)
Dim _User As User = _onew.GetObject(TryCast(SecuritySystem.CurrentUser, User))
Try
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = _onew.GetObject(TryCast(View.SelectedObjects(0), DeliveryNoteInHeader))
If Not LockingModule.LockObject(_uow_lock, GetType(StorageComputed), "-", _User) Then
Dim _LockingObject As LockingObject = _onew.FindObject(Of LockingObject)(CriteriaOperator.Parse("TableName=?", GetType(StorageComputed).Name + "-" + "-"))
Dim _Prompt As String = DevExpress.ExpressApp.Utils.CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions\StorageComputed", "CanNotStorageInByLocking")
Dim _Title As String = DevExpress.ExpressApp.Utils.CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxError")
MsgBox(String.Format(_Prompt, _LockingObject.User.FullName, _LockingObject.ObjectCreated), MsgBoxStyle.Information + MsgBoxStyle.OkOnly, _Title)
Exit Sub
Else
Dim _StorageInfromDeliveryNoteInRowsHeader As StorageInfromDeliveryNoteInRowsHeader = _onew.GetObjectByKey(Of StorageInfromDeliveryNoteInRowsHeader)(TryCast(e.PopupWindow.View.SelectedObjects(0), StorageInfromDeliveryNoteInRowsHeader).Oid)
_StorageInfromDeliveryNoteInRowsHeader.Storage = _onew.GetObjectByKey(Of Storage)(TryCast(e.PopupWindow.View.SelectedObjects(0), StorageInfromDeliveryNoteInRowsHeader).Storage.Oid)
Dim _StorageInfromDeliveryNoteInRowsRows_ListEditor As ListPropertyEditor = TryCast(e.PopupWindow.View, DetailView).FindItem("StorageInfromDeliveryNoteInRowsRows") ' Bekeresi az összes bejövõ megrendelési sort
Dim _StorageInfromDeliveryNoteInRowsRows As StorageInfromDeliveryNoteInRowsRows
Dim _MSGBoxNeed As Boolean = False
For Each _StorageInfromDeliveryNoteInRowsRows In _StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects
If _StorageInfromDeliveryNoteInRowsRows.QTT_Process > _StorageInfromDeliveryNoteInRowsRows.QTT_Max Then
_StorageInfromDeliveryNoteInRowsRows.QTT_Process = _StorageInfromDeliveryNoteInRowsRows.QTT_Max
_MSGBoxNeed = True
Exit For
End If
Next
If _MSGBoxNeed = True Then Throw New Exception("*Volt olyan szándék megadva ami több mint amit be lehet tárolni, így az értéke visszaállítódott a maximális értékre!")
' --- Létrehozzuk a bet. fejlécet ----
Dim _StorageInHeader_New As New StorageInHeader(_onew.Session)
With _StorageInHeader_New
.IsEditable = False
.Storage = _onew.GetObject(TryCast(e.PopupWindow.View.SelectedObjects(0), StorageInfromDeliveryNoteInRowsHeader).Storage)
.ObjectCreated = GetSQLTime(_onew.Session)
.StorageMoveType = _onew.GetObject(TryCast(e.PopupWindow.View.SelectedObjects(0), StorageInfromDeliveryNoteInRowsHeader).StorageMoveType)
.DocumentNumber = _StorageInHeader_New.Storage.NumberGeneratorIn.GetNewNumber(_StorageInHeader_New.Storage.NumberGeneratorIn)
End With
' Létrehozzuk a bet. sorokat, minden kiválasztott bejövő szállítólevél sorokhoz ----------------------------------------------------------------------------------------------
For i = 0 To _StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects.Count - 1 ' A kiválasztott sorokon végigmegyünk és létrehozzuk a bet. sorokat.
Dim _StorageComputed As StorageComputed = _onew.Session.FindObject(Of StorageComputed)(CriteriaOperator.Parse("Products=? and Storage=?", _
_onew.GetObject(_StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects(i).DeliveryNoteInRows.Products), _onew.GetObject(_StorageInfromDeliveryNoteInRowsHeader.Storage)))
Dim _QTT_Process As Double = 0
_QTT_Process = TryCast(_StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects(i), StorageInfromDeliveryNoteInRowsRows).QTT_Process ' Kinyerjük az adott sorhoz tartozó szándékot
If _StorageComputed Is Nothing Then
_StorageComputed = _onew.CreateObject(Of StorageComputed)()
With _StorageComputed
.Storage = _StorageInfromDeliveryNoteInRowsHeader.Storage
.Products = _onew.GetObject(_StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects(i).DeliveryNoteInRows.Products)
End With
End If
' Új betárolási sorok létrehozása --------------------------------------------
Dim _StorageInRows_New As StorageInRows = _onew.CreateObject(Of StorageInRows)()
With _StorageInRows_New
.DeliveryNoteInRows = _onew.GetObject(_StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects(i).DeliveryNoteInRows)
.StorageInHeader = _StorageInHeader_New
.Products = _onew.GetObject(_StorageInfromDeliveryNoteInRowsRows_ListEditor.ListView.SelectedObjects(i).DeliveryNoteInRows.Products)
.QTT_Will = _QTT_Process
.RowIndex = i + 1 ' Sorindexelés
End With
_StorageComputed.QTTReservedIn += _QTT_Process
Next
'--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
For Each _StorageInRows In _StorageInHeader_New.StorageInRows
Dim _StorageComputed As StorageComputed = _onew.FindObject(Of StorageComputed)(CriteriaOperator.Parse("Products=? and Storage=?", _StorageInRows.Products, _StorageInHeader_New.Storage))
Dim _StorageMoveEvents As New StorageMoveEvents(_onew.Session)
If _StorageInRows.QTT_Will > 0 Then
_StorageInRows.QTT = _StorageInRows.QTT_Will
_StorageComputed.QTTFree += _StorageInRows.QTT_Will
_StorageComputed.QTTReservedIn -= _StorageInRows.QTT_Will
_StorageMoveEvents.StorageInRows = _StorageInRows
_StorageMoveEvents.QTT = _StorageInRows.QTT
_StorageMoveEvents.QTT_Free_After = _StorageComputed.QTTFree
_StorageMoveEvents.QTT_Free_Before = _StorageMoveEvents.QTT_Free_After - _StorageMoveEvents.QTT
_StorageMoveEvents.MoveEventsType = eMoveEventsType.StorageInFinal
_StorageMoveEvents.ExecutionDate = _StorageInRows.StorageInHeader.CreateDate
_StorageInRows.QTT_Will = 0
End If
Next
_StorageInHeader_New.IsEditable = False
_StorageInHeader_New.IsFinalized = True
_DeliveryNoteInHeader.IsEditable = False
_onew.CommitChanges()
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Finally
LockingModule.UnLockObject(_uow_lock, GetType(StorageComputed), "-", _User)
End Try
End Sub
Private Sub aFinalize_And_Storage_DeliveryNoteIn_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aFinalize_And_Storage_DeliveryNoteIn.CustomizePopupWindowParams
'---Létrehoz egy ListView-t ahol a raktárat kell kiválasztani a rendelésből kitárolási akcióhoz
Dim _NOStorageInRows As New ArrayList
Try
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _DeliveryNoteInToStorageInHeader As DeliveryNoteInToStorageInHeader = _onew.CreateObject(Of DeliveryNoteInToStorageInHeader)()
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = _onew.GetObject(TryCast(View.SelectedObjects(0), DeliveryNoteInHeader))
For Each _DeliveryNoteInRows As DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
If _DeliveryNoteInRows.Products.Units.ShortName = "zsák" And _DeliveryNoteInRows.Products.ProductGroups.Parent.Name = "VETŐ" Then
If _DeliveryNoteInRows.Weight = 0 Or String.IsNullOrEmpty(_DeliveryNoteInRows.PacketNumber) Then
_NOStorageInRows.Add(_DeliveryNoteInRows.Products)
End If
End If
Next
e.View = Application.CreateDetailView(_onew, "DeliveryNoteInToStorageInHeader_DetailView", False, _DeliveryNoteInToStorageInHeader)
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Finally
If _NOStorageInRows.Count > 0 Then
Dim _ErrorMessage As String = "A következő szállítólevélről az alábbi sor(ok) nem tárolhatóak be :" + vbNewLine
For Each _NOSIR As Products In _NOStorageInRows
_ErrorMessage += vbNewLine + _NOSIR.ProductNumber + " / " + _NOSIR.ShortName + vbNewLine
Next
_ErrorMessage += vbNewLine + "mert NINCS megadva a KÖTEGSZÁM vagy a SÚLY!"
'MsgBox(_ErrorMessage, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Throw New UserFriendlyException(_ErrorMessage)
View.Close()
End If
End Try
End Sub
Private Sub aFinalize_And_Storage_DeliveryNoteIn_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aFinalize_And_Storage_DeliveryNoteIn.Execute
'---Az akció véglegesít egy bejövő szállítólevelet------------------------------------------------
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _uow_lock As New UnitOfWork(_onew.Session.DataLayer)
Dim _User As User = _onew.GetObject(TryCast(SecuritySystem.CurrentUser, User))
Dim _DeliveryNoteInHeader As DeliveryNoteInHeader = TryCast(View.SelectedObjects(0), DeliveryNoteInHeader)
Dim _StorageInHeader As StorageInHeader
Try
Dim _DeliveryNoteInRows As DeliveryNoteInRows
Dim _DeliveryNoteInToStorageInHeader As DeliveryNoteInToStorageInHeader = TryCast(e.PopupWindow.View.SelectedObjects(0), DeliveryNoteInToStorageInHeader)
Dim _StorageInRows As StorageInRows
If _DeliveryNoteInHeader.DeliveryNoteInrows.Count <= 0 Then Throw New Exception("*A szállítólevélnek nincs egyetlen sora sem!")
Dim _DeliveryNoteInRows_Collection As New ArrayList
For Each _DeliveryNoteInRows In _DeliveryNoteInHeader.DeliveryNoteInrows
If _DeliveryNoteInRows.OrderOutRows IsNot Nothing Then
If _DeliveryNoteInRows.QTT > 0 And _DeliveryNoteInRows.QTT <= _DeliveryNoteInRows.OrderOutRows.QTT Then
_DeliveryNoteInRows_Collection.Add(_DeliveryNoteInRows)
End If
Else
_DeliveryNoteInRows_Collection.Add(_DeliveryNoteInRows)
End If
Next
If _DeliveryNoteInRows_Collection.Count = 0 Then Throw New Exception("*A szállítólevélnek nincs egyetlen olyan sora sem, melyet be lehetne tárolni!")
'zárolás
If Not LockingModule.LockObject(_uow_lock, GetType(StorageComputed), "-", _User) Then
Dim _LockingObject As LockingObject = _onew.FindObject(Of LockingObject)(CriteriaOperator.Parse("TableName=?", GetType(StorageComputed).Name + "-" + "-"))
Dim _Prompt As String = DevExpress.ExpressApp.Utils.CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions\StorageComputed", "CanNotStorageInByLocking")
Dim _Title As String = DevExpress.ExpressApp.Utils.CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxError")
MsgBox(String.Format(_Prompt, _LockingObject.User.FullName, _LockingObject.ObjectCreated), MsgBoxStyle.Information + MsgBoxStyle.OkOnly, _Title)
Exit Sub
Else
_StorageInHeader = _ocur.CreateObject(Of StorageInHeader)()
_StorageInHeader.Active = True
_StorageInHeader.CreateDate = GetSQLTime(_ocur.Session)
_StorageInHeader.Storage = _ocur.GetObjectByKey(Of Storage)(_DeliveryNoteInToStorageInHeader.Storage.Oid)
_StorageInHeader.StorageMoveType = _ocur.GetObjectByKey(Of StorageMoveType)(_DeliveryNoteInToStorageInHeader.StorageMoveType.Oid)
For Each _DeliveryNoteInRows In _DeliveryNoteInRows_Collection
_StorageInRows = _ocur.CreateObject(Of StorageInRows)()
With _StorageInRows
.Active = True
.DeliveryNoteInRows = _DeliveryNoteInRows
.PacketNumber = _DeliveryNoteInRows.PacketNumber
.Products = _DeliveryNoteInRows.Products
.QTT_Will = _DeliveryNoteInRows.QTT
.RowIndex = _StorageInHeader.StorageInRows.Count + 1
.SerialNumber = ""
.StorageInHeader = _StorageInHeader
.Storage = _StorageInHeader.Storage
.Weight = _DeliveryNoteInRows.Weight
.WeightMode = _DeliveryNoteInRows.WeightMode
End With
Dim _StorageComputed As StorageComputed = _ocur.FindObject(Of StorageComputed)(CriteriaOperator.Parse("Products=? and Storage=?", _
_StorageInRows.Products, _StorageInHeader.Storage))
If _StorageComputed Is Nothing Then
_StorageComputed = _ocur.CreateObject(Of StorageComputed)()
With _StorageComputed
.Storage = _StorageInHeader.Storage
.Products = _DeliveryNoteInRows.Products
.QTTReservedIn = _DeliveryNoteInRows.QTT
End With
Else
_StorageComputed.QTTReservedIn += _DeliveryNoteInRows.QTT
End If
Next
'--------- Véglegesítjük a betárolást !
For Each _StorageInRows In _StorageInHeader.StorageInRows
Dim _StorageComputed As StorageComputed = _ocur.FindObject(Of StorageComputed)(CriteriaOperator.Parse("Products=? and Storage=?", _StorageInRows.Products, _StorageInHeader.Storage))
Dim _StorageMoveEvents As New StorageMoveEvents(_ocur.Session)
If _StorageInRows.QTT_Will > 0 Then
_StorageInRows.QTT = _StorageInRows.QTT_Will
_StorageComputed.QTTFree += _StorageInRows.QTT_Will
_StorageComputed.QTTReservedIn -= _StorageInRows.QTT_Will
_StorageMoveEvents.StorageInRows = _StorageInRows
_StorageMoveEvents.QTT = _StorageInRows.QTT
_StorageMoveEvents.QTT_Free_After = _StorageComputed.QTTFree
_StorageMoveEvents.QTT_Free_Before = _StorageMoveEvents.QTT_Free_After - _StorageMoveEvents.QTT
_StorageMoveEvents.MoveEventsType = eMoveEventsType.StorageInFinal
_StorageMoveEvents.ExecutionDate = _StorageInRows.StorageInHeader.CreateDate
_StorageInRows.QTT_Will = 0
End If
Next
_StorageInHeader.IsEditable = False
_StorageInHeader.IsFinalized = True
_DeliveryNoteInHeader.IsEditable = False
_ocur.CommitChanges()
If _DeliveryNoteInToStorageInHeader.IsRegistry Then
Dim _RegistryHeader As New RegistryHeader(_ocur.Session)
With _RegistryHeader
.CustomersFrom = _DeliveryNoteInHeader.CustomersFrom
.Customers = _DeliveryNoteInHeader.Customers
.RegistryType = _DeliveryNoteInHeader.DeliveryNoteInType.RegistryType
End With
Dim _orenew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _ShowViewParameters As New ShowViewParameters
Dim _ShowViewSource As New ShowViewSource(Frame, Nothing)
_ShowViewParameters.CreatedView = Application.CreateDetailView(_orenew, "RegistryHeader_DetailView", True, _orenew.GetObject(_RegistryHeader))
_ShowViewParameters.NewWindowTarget = NewWindowTarget.MdiChild
_ShowViewParameters.TargetWindow = TargetWindow.NewWindow
Application.ShowViewStrategy.ShowView(_ShowViewParameters, _ShowViewSource)
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_orenew, _RegistryHeader)
End If
Dim _ReportData As ReportData = _ocur.FindObject(Of ReportData)(CriteriaOperator.Parse("Oid=?", _StorageInHeader.Storage.ReportIn.Oid), True)
If _ReportData Is Nothing Or _StorageInHeader Is Nothing Then
Else
Frame.GetController(Of Reports.ReportServiceController).ShowPreview(_ReportData, CriteriaOperator.Parse("StorageInHeader.DocumentNumber =?", _StorageInHeader.DocumentNumber), True)
End If
View.Close()
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, String.Format(CaptionHelper.GetLocalizedText("Exceptions\NuvolarExceptions", "MsgBoxCheckItAgain")))
Finally
LockingModule.ReleaseAllLocking(_uow_lock, _User)
End Try
End Sub
Private Sub aRecalculateDeliveryNoteInRowsSumPrice_Execute(sender As Object, e As SimpleActionExecuteEventArgs) Handles aRecalculateDeliveryNoteInRowsSumPrice.Execute
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DeliveryNoteInRRFC As DeliveryNoteInRRFC
Dim _StorageComputed As StorageComputed
RaiseEvent InitWork(1, 1, View.SelectedObjects.Count)
For Each _DeliveryNoteInRRFC In View.SelectedObjects
RaiseEvent DoWork()
If _DeliveryNoteInRRFC.RegistryRowsFinancialControlling.RegistryHeader.F_CurrencyName.ShortName = "HUF" Then
If _DeliveryNoteInRRFC.DeliveryNoteInRows.QTT <> 0 Then
_DeliveryNoteInRRFC.DeliveryNoteInRows.ListPriceHUF = Math.Round(_DeliveryNoteInRRFC.RegistryRowsFinancialControlling.Amount / _DeliveryNoteInRRFC.DeliveryNoteInRows.QTT, 2, MidpointRounding.AwayFromZero)
_DeliveryNoteInRRFC.DeliveryNoteInRows.ListPriceDEV = 0
_DeliveryNoteInRRFC.DeliveryNoteInRows.DiscountPriceDEV = 0
_DeliveryNoteInRRFC.DeliveryNoteInRows.DiscountPriceHUF = 0
End If
Else
If _DeliveryNoteInRRFC.DeliveryNoteInRows.QTT <> 0 Then
If _DeliveryNoteInRRFC.RegistryRowsFinancialControlling.RegistryHeader.F_CurrencyRate <> 0 Then
_DeliveryNoteInRRFC.DeliveryNoteInRows.ListPriceHUF = Math.Round(_DeliveryNoteInRRFC.RegistryRowsFinancialControlling.Amount / _DeliveryNoteInRRFC.DeliveryNoteInRows.QTT, 2, MidpointRounding.AwayFromZero)
_DeliveryNoteInRRFC.DeliveryNoteInRows.ListPriceDEV = Math.Round(_DeliveryNoteInRRFC.DeliveryNoteInRows.ListPriceHUF / _DeliveryNoteInRRFC.RegistryRowsFinancialControlling.RegistryHeader.F_CurrencyRate, 2, MidpointRounding.AwayFromZero)
_DeliveryNoteInRRFC.DeliveryNoteInRows.DiscountPriceDEV = 0
_DeliveryNoteInRRFC.DeliveryNoteInRows.DiscountPriceHUF = 0
End If
End If
End If
Dim _StorageComputed_Collection As New XPCollection(Of StorageComputed)(_ocur.Session, CriteriaOperator.Parse("Products=?", _DeliveryNoteInRRFC.DeliveryNoteInRows.Products))
For Each _StorageComputed In _StorageComputed_Collection
_StorageComputed.RecalculateAveragePrice()
_StorageComputed.RecalculateMinimumPrice()
Next
Next
_ocur.CommitChanges()
RaiseEvent FinalWork
End Sub
End Class