First create solution

This commit is contained in:
2017-03-08 11:21:27 +01:00
commit a2fb86bacf
5508 changed files with 1082238 additions and 0 deletions
@@ -0,0 +1,716 @@
Imports System
Imports System.ComponentModel
Imports DevExpress.Xpo
Imports DevExpress.Data.Filtering
Imports DevExpress.ExpressApp
Imports DevExpress.Persistent.Base
Imports DevExpress.Persistent.BaseImpl
Imports DevExpress.Persistent.Validation
Imports DevExpress.Persistent.Base.General
Imports System.Data.SqlClient
Imports System.Configuration
Imports System.Linq
Imports System.Linq.Expressions
<DefaultClassOptions()> _
<NavigationItem("FinancialTransactions")> _
<CreatableItem(False)> _
Public Class GLRows
Inherits BaseObject
Private _GLHeader As GLHeader
Private _GLAccounts As GLAccounts
Private _DebitChartOfAccounts As ChartOfAccounts 'Tartozik számlaszám
Private _CreditChartOfAccounts As ChartOfAccounts ' Követel számlaszám
Private _AmountHUF As Double ' könyvelt összeg forintban
Private _AmountDEV As Double ' könyvelt összeg devizában
Private _AmountDEVFIFO As Double = 0 'FIFO értékeléshez felhasznált deviza összege
Private _LiquidAssets As LiquidAssets ' pénzeszköz
Private _Customer As Customers ' partner
Private _DateVAT As Date 'ÁFA idõszak
Private _DateExecution As Date 'Teljesítési idõszak
Private _VAT As VAT 'ÁFA kód
Private _NoteRows As String 'Sor megjegyzés
Private _Controlling As Controlling 'Kontrolling szám
Private _CostPlace As CostPlace 'Költséghely
Private _CostHolder As CostHolder 'Költségviselõ
Private _JobNumberObjects As JobNumberObjects 'Munkaszám
Private _UniqueObjects As UniqueObjects 'Egyedi azonosító
Private _ConnectInfo As String = "" 'Analitikus kötési szám folyószámlához
Private _ConnectInfoAdvanced As String = "" 'Analitikus kötési szám az előlegek pontozásához
Private _PartnerType As ePartnerType
Private _DebitAmountHUF As Double = 0
Private _CreditAmountHUF As Double = 0
Private _DebitAmountDEV As Double = 0
Private _CreditAmountDEV As Double = 0
Private _GLRowsGUID As Guid
Private _GLRowsTypeVAT As eGLRowsTypeVAT
Private _InAmountHUF As Double = 0 'Pénztár miatt befizetés
Private _OutAmountHUF As Double = 0 'Pénztár miatt kifizetés
Private _InAmountDEV As Double = 0 'Pénztár miatt befizetés
Private _OutAmountDEV As Double = 0 'Pénztár miatt kifizetés
Private _ImportID As String = "" 'Külsõ rendszerbõl importált sor
Private _CashType As eCashType
Private _TransactionType As eTransactionType
Private _CurrencyRate2 As Double = 1
Private _InAmountDEV2 As Double = 0 'Másodlagos deviza !
Private _OutAmountDEV2 As Double = 0 'Másodlagos deviza
Private _CurrencyName2 As CurrencyName 'Másodlagos devizanem
Private _BankImportHeaderSumDetail As BankImportHeaderSumDetail
Private _GLRowsRateDiff As GLRows
Private _InvoiceRows As InvoiceRows
Private _RegistryRowsFinancialControlling As RegistryRowsFinancialControlling
Private _GLRowsType As eGLRowsType '0 normál 1 Nyitó, 2 Záró
Private _RowIndex As Long 'Sorrend
Public Sub New(ByVal session As Session)
MyBase.New(session)
End Sub
Public Overrides Sub AfterConstruction()
MyBase.AfterConstruction()
If Me.GLHeader IsNot Nothing Then
If Me.GLHeader.DateExecution = Nothing Then
Else
Me.DateExecution = Me.GLHeader.DateExecution
End If
End If
End Sub
Protected Overrides Sub OnSaving()
MyBase.OnSaving()
If Me.ConnectInfo Is Nothing Then
Me.ConnectInfo = ""
End If
Dim _GLDetail_Collection As New XPCollection(Of GLDetails)(Session, CriteriaOperator.Parse("GLRows.Oid=?", Me.Oid))
Session.Delete(_GLDetail_Collection)
Dim _GLDetail As GLDetails
If Session.IsObjectToDelete(Me) = False Then
_GLDetail = New GLDetails(Session)
_GLDetail.GLRows = Me
_GLDetail.AmountDEV = Me.AmountDEV
_GLDetail.AmountHUF = Me.AmountHUF
_GLDetail.Side = "T"
_GLDetail.ChartOfAccounts = Me.DebitChartOfAccounts
_GLDetail = New GLDetails(Session)
_GLDetail.GLRows = Me
_GLDetail.AmountDEV = Me.AmountDEV
_GLDetail.AmountHUF = Me.AmountHUF
_GLDetail.Side = "K"
_GLDetail.ChartOfAccounts = Me.CreditChartOfAccounts
GLRowsType = eGLRowsType.eNormal
If CreditChartOfAccounts IsNot Nothing AndAlso DebitChartOfAccounts IsNot Nothing Then
If CreditChartOfAccounts.AccountNumber Like "491*" Or DebitChartOfAccounts.AccountNumber Like "491*" Then
GLRowsType = eGLRowsType.eOpen
End If
If CreditChartOfAccounts.AccountNumber Like "492*" Or DebitChartOfAccounts.AccountNumber Like "492*" Then
GLRowsType = eGLRowsType.eClose
End If
End If
If Me.DateExecution = Nothing Then
If Me.GLHeader IsNot Nothing Then
Me.DateExecution = Me.GLHeader.DateExecution
End If
End If
' '// Sorrend beállítása
' If Session.IsNewObject(Me) Then
' Me.RowIndex = Me.GLHeader.GLRows.Count
' End If
End If
End Sub
Protected Overrides Sub OnDeleting()
MyBase.OnDeleting()
Dim _GLDetail_Collection As New XPCollection(Of GLDetails)(Session, CriteriaOperator.Parse("GLRows.Oid=?", Me.Oid))
Session.Delete(_GLDetail_Collection)
Dim _GLDetail As GLDetails
Dim _GLRowsRateDiff_Collection As New XPCollection(Of GLRows)(Session, CriteriaOperator.Parse("GLRowsRateDiff=?", Me))
For Each _GLRows As GLRows In _GLRowsRateDiff_Collection
_GLRows.GLRowsRateDiff = Nothing
_GLRows.Save()
Next
End Sub
Protected Overrides Sub OnDeleted()
MyBase.OnDeleted()
'// PARASZTLENGŐS ÚJRAPONTOZÁS TÖRLÉS ESETÉN !!!!
On Error Resume Next
If Me.PartnerType <> ePartnerType.eNotSet Then
'Dim _uow As New UnitOfWork(Session.DataLayer)
'Dim _CustomersFrom_Collection As New XPCollection(Of CustomersFrom)(_uow)
'For Each _CustomersFrom As CustomersFrom In _CustomersFrom_Collection
' GLFunctions.ReconfigurePCI(_uow, _CustomersFrom, Me.Customer, Me.PartnerType, Me.ConnectInfo)
' _uow.CommitChanges()
'Next
End If
'// Sorrend újraépítése !!!
End Sub
<Association("GLHeader", GetType(GLHeader))> _
Property GLHeader() As GLHeader
Get
Return _GLHeader
End Get
Set(ByVal value As GLHeader)
SetPropertyValue("GLHeader", _GLHeader, value)
End Set
End Property
<RuleRequiredField("", DefaultContexts.Save)>
<ImmediatePostData(True), DataSourceCriteria("isnull(Children)=True")>
Property DebitChartOfAccounts() As ChartOfAccounts
Get
Return _DebitChartOfAccounts
End Get
Set(ByVal value As ChartOfAccounts)
SetPropertyValue("DebitChartOfAccounts", _DebitChartOfAccounts, value)
End Set
End Property
<RuleRequiredField("", DefaultContexts.Save)>
Property CreditChartOfAccounts() As ChartOfAccounts
Get
Return _CreditChartOfAccounts
End Get
Set(ByVal value As ChartOfAccounts)
SetPropertyValue("CreditChartOfAccounts", _CreditChartOfAccounts, value)
End Set
End Property
<RuleRequiredField("", DefaultContexts.Save)>
Property AmountHUF() As Double
Get
Return Math.Round(_AmountHUF, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("AmountHUF", _AmountHUF, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property AmountDEV() As Double
Get
Return Math.Round(_AmountDEV, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("AmountDEV", _AmountDEV, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
<VisibleInDetailView(False)>
Property AmountDEVFIFO As Double
Get
Return Math.Round(_AmountDEVFIFO, 4, MidpointRounding.AwayFromZero)
End Get
Set(value As Double)
SetPropertyValue("AmountDEVFIFO", _AmountDEVFIFO, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property LiquidAssets() As LiquidAssets
Get
Return _LiquidAssets
End Get
Set(ByVal value As LiquidAssets)
SetPropertyValue("LiquidAssets", _LiquidAssets, value)
End Set
End Property
Property Customer() As Customers
Get
Return _Customer
End Get
Set(ByVal value As Customers)
SetPropertyValue("Customer", _Customer, value)
End Set
End Property
Property DateVAT() As Date
Get
Return _DateVAT
End Get
Set(ByVal value As Date)
SetPropertyValue("DateCreated", _DateVAT, value)
End Set
End Property
Property DateExecution As Date
Get
Return _DateExecution
End Get
Set(value As Date)
SetPropertyValue("DateExecution", _DateExecution, value)
End Set
End Property
Property VAT() As VAT
Get
Return _VAT
End Get
Set(ByVal value As VAT)
SetPropertyValue("VAT", _VAT, value)
End Set
End Property
<Size(-1)>
Property NoteRows() As String
Get
Return _NoteRows
End Get
Set(ByVal value As String)
SetPropertyValue("NoteRows", _NoteRows, value)
End Set
End Property
Property RowIndex As Long
Get
Return _RowIndex
End Get
Set(value As Long)
SetPropertyValue("RowIndex", _RowIndex, value)
End Set
End Property
'Rule5DMatrix ...
<ImmediatePostData(True), DataSourceCriteria("IsParent=False")>
<RuleRequiredField("GLRows-Controlling", DefaultContexts.Save, TargetCriteria:="Rule5DMatrix.RequireControlling=True and Require5DValidation=True")> _
Property Controlling() As Controlling
Get
Return _Controlling
End Get
Set(ByVal value As Controlling)
SetPropertyValue("Controlling", _Controlling, value)
If Session.IsObjectsSaving = False And Session.IsObjectsLoading = False Then
End If
End Set
End Property
<RuleRequiredField("GLRows-JobNumberObjects", DefaultContexts.Save, TargetCriteria:="Rule5DMatrix.RequireJobNumberObjects=True and Require5DValidation=True")> _
Property JobNumberObjects() As JobNumberObjects
Get
Return _JobNumberObjects
End Get
Set(ByVal value As JobNumberObjects)
SetPropertyValue("JobNumberObjects", _JobNumberObjects, value)
End Set
End Property
<RuleRequiredField("GLRows-UniqueObjects", DefaultContexts.Save, TargetCriteria:="Rule5DMatrix.RequireUniqueObjects=True and Require5DValidation=True")> _
Property UniqueObjects() As UniqueObjects
Get
Return _UniqueObjects
End Get
Set(ByVal value As UniqueObjects)
SetPropertyValue("UniqueObjects", _UniqueObjects, value)
End Set
End Property
<RuleRequiredField("GLRows-CostPlace", DefaultContexts.Save, TargetCriteria:="Rule5DMatrix.RequireCostPlace=True and Require5DValidation=True")> _
Property CostPlace() As CostPlace
Get
Return _CostPlace
End Get
Set(ByVal value As CostPlace)
SetPropertyValue("CostPlace", _CostPlace, value)
End Set
End Property
<RuleRequiredField("GLRows-CostHolder", DefaultContexts.Save, TargetCriteria:="Rule5DMatrix.RequireCostHolder=True and Require5DValidation=True")> _
Property CostHolder() As CostHolder
Get
Return _CostHolder
End Get
Set(ByVal value As CostHolder)
SetPropertyValue("CostHolder", _CostHolder, value)
End Set
End Property
<Browsable(False)> _
ReadOnly Property Rule5DMatrix As Rule5DMatrix
Get
If GLHeader Is Nothing Then
Return Nothing
Else
Dim _Rule5DforGL As Rule5DforGL = Session.FindObject(Of Rule5DforGL)(CriteriaOperator.Parse("GLDocumentType=?", GLHeader.GLDocumentType))
If _Rule5DforGL IsNot Nothing Then
Return _Rule5DforGL.Rule5DMatrix
Else
Return Nothing
End If
End If
End Get
End Property
<Browsable(False)> _
ReadOnly Property Require5DValidation As Boolean
Get
Dim _Require5DValidation As Boolean = True
If _Require5DValidation Then
Select Case Me.CreditChartOfAccounts.AccountNumber
Case "599", "491", "492", "493"
_Require5DValidation = False
Case Else
_Require5DValidation = True
End Select
End If
If _Require5DValidation Then
Select Case Me.DebitChartOfAccounts.AccountNumber
Case "599", "491", "492", "493"
_Require5DValidation = False
Case Else
_Require5DValidation = True
End Select
End If
Return _Require5DValidation
End Get
End Property
Property ConnectInfo() As String
Get
Return _ConnectInfo
End Get
Set(ByVal value As String)
SetPropertyValue("ConnectInfo", _ConnectInfo, LTrim(RTrim(value)))
End Set
End Property
Property ConnectInfoAdvanced As String
Get
Return _ConnectInfoAdvanced
End Get
Set(value As String)
SetPropertyValue("ConnectInfoAdvanced", _ConnectInfoAdvanced, value)
End Set
End Property
Property PartnerType() As ePartnerType
Get
Return _PartnerType
End Get
Set(ByVal value As ePartnerType)
SetPropertyValue("PartnerType", _PartnerType, value)
End Set
End Property
Property DebitAmountHUF() As Double
Get
Return Math.Round(_DebitAmountHUF, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("DebitAmountHUF", _DebitAmountHUF, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property CreditAmountHUF() As Double
Get
Return Math.Round(_CreditAmountHUF, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("CreditAmountHUF", _CreditAmountHUF, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property DebitAmountDEV() As Double
Get
Return _DebitAmountDEV
End Get
Set(ByVal value As Double)
SetPropertyValue("DebitAmountDEV", _DebitAmountDEV, value)
End Set
End Property
Property CreditAmountDEV() As Double
Get
Return _CreditAmountDEV
End Get
Set(ByVal value As Double)
SetPropertyValue("CreditAmountDEV", _CreditAmountDEV, value)
End Set
End Property
Property GLRowsTypeVAT As eGLRowsTypeVAT
Get
Return _GLRowsTypeVAT
End Get
Set(ByVal value As eGLRowsTypeVAT)
SetPropertyValue("GLRowsTypeVAT", _GLRowsTypeVAT, value)
End Set
End Property
Property GLRowsGUID As Guid
Get
Return _GLRowsGUID
End Get
Set(ByVal value As Guid)
SetPropertyValue("GLRowsGUID", _GLRowsGUID, value)
End Set
End Property
'-- Összegek !!!
Property InAmountHUF As Double
Get
Return Math.Round(_InAmountHUF, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("InAmountHUF", _InAmountHUF, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property OutAmountHUF As Double
Get
Return Math.Round(_OutAmountHUF, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("OutAmountHUF", _OutAmountHUF, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property InAmountDEV As Double
Get
Return Math.Round(_InAmountDEV, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("InAmountDEV", _InAmountDEV, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property OutAmountDEV As Double
Get
Return Math.Round(_OutAmountDEV, 4, MidpointRounding.AwayFromZero)
End Get
Set(ByVal value As Double)
SetPropertyValue("OutAmountDEV", _OutAmountDEV, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property ImportID As String
Get
Return _ImportID
End Get
Set(ByVal value As String)
SetPropertyValue("ImportID", _ImportID, value)
End Set
End Property
Property CashType As eCashType
Get
Return _CashType
End Get
Set(ByVal value As eCashType)
SetPropertyValue("CashType", _CashType, value)
End Set
End Property
Property TransactionType As eTransactionType
Get
Return _TransactionType
End Get
Set(ByVal value As eTransactionType)
SetPropertyValue("TransactionType", _TransactionType, value)
End Set
End Property
Property CurrencyRate2 As Double
Get
Return _CurrencyRate2
End Get
Set(value As Double)
SetPropertyValue("CurrencyRate2", _CurrencyRate2, value)
End Set
End Property
Property InAmountDEV2 As Double
Get
Return Math.Round(_InAmountDEV2, 4, MidpointRounding.AwayFromZero)
End Get
Set(value As Double)
SetPropertyValue("InAmountDEV2", _InAmountDEV2, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property OutAmountDEV2 As Double
Get
Return Math.Round(_OutAmountDEV2, 4, MidpointRounding.AwayFromZero)
End Get
Set(value As Double)
SetPropertyValue("OutAmountDEV2", _OutAmountDEV2, Math.Round(value, 4, MidpointRounding.AwayFromZero))
End Set
End Property
Property GLRowsType As eGLRowsType
Get
Return _GLRowsType
End Get
Set(value As eGLRowsType)
SetPropertyValue("GLRowsType", _GLRowsType, value)
End Set
End Property
<VisibleInDetailView(False)> _
<VisibleInListView(False)> _
<VisibleInLookupListView(False)> _
Property GLRowsRateDiff As GLRows
Get
Return _GLRowsRateDiff
End Get
Set(value As GLRows)
SetPropertyValue("GLRowsRateDiff", _GLRowsRateDiff, value)
End Set
End Property
<VisibleInDetailView(False)> _
<VisibleInListView(False)> _
<VisibleInLookupListView(False)> _
Property InvoiceRows As InvoiceRows
Get
Return _InvoiceRows
End Get
Set(value As InvoiceRows)
SetPropertyValue("InvoiceRows", _InvoiceRows, value)
End Set
End Property
<VisibleInDetailView(False)> _
<VisibleInListView(False)> _
<VisibleInLookupListView(False)> _
Property RegistryRowsFinancialControlling As RegistryRowsFinancialControlling
Get
Return _RegistryRowsFinancialControlling
End Get
Set(value As RegistryRowsFinancialControlling)
SetPropertyValue("RegistryRowsFinancialControlling", _RegistryRowsFinancialControlling, value)
End Set
End Property
Property BankImportHeaderSumDetail As BankImportHeaderSumDetail
Get
Return _BankImportHeaderSumDetail
End Get
Set(value As BankImportHeaderSumDetail)
SetPropertyValue("BankImportHeaderSumDetail", _BankImportHeaderSumDetail, value)
End Set
End Property
ReadOnly Property CurrencyRate As Double
Get
If AmountDEV <> 0 Then
Return AmountHUF / AmountDEV
Else
Return 1
End If
End Get
End Property
Public Sub AddGLRows(ByVal p_GLHeader As GLHeader, ByVal p_DebitChartOfAccounts As ChartOfAccounts, ByVal p_CreditChartOfAccounts As ChartOfAccounts, _
ByVal p_AmountDEV As Double, ByVal p_AmountHUF As Double, ByVal p_LiquidAssets As LiquidAssets, _
ByVal p_Customer As Customers, ByVal p_DateVAT As Date, _
ByVal p_VAT As VAT, ByVal p_NoteRows As String, ByVal p_UniqueObjects As UniqueObjects, _
ByVal p_Controlling As Controlling, ByVal p_JobNumberOBjects As JobNumberObjects, _
ByVal p_CostPlace As CostPlace, ByVal p_CostHolder As CostHolder, ByVal p_ConnectInfo As String, _
ByVal p_GLRowsTypeVAT As eGLRowsTypeVAT, ByVal p_GLRowsGUID As Guid, Optional ByVal p_TransactionType As eTransactionType = eTransactionType.eNotSet, _
Optional ByVal p_CashType As eCashType = eCashType.eNormal, Optional ByVal p_PartnerType As ePartnerType = ePartnerType.eNotSet)
TransactionType = p_TransactionType
GLHeader = p_GLHeader
DebitChartOfAccounts = p_DebitChartOfAccounts
CreditChartOfAccounts = p_CreditChartOfAccounts
AmountDEV = p_AmountDEV
AmountHUF = p_AmountHUF
LiquidAssets = p_LiquidAssets
Customer = p_Customer
DateVAT = p_DateVAT
VAT = p_VAT
NoteRows = p_NoteRows
UniqueObjects = p_UniqueObjects
Controlling = p_Controlling
JobNumberObjects = p_JobNumberOBjects
CostPlace = p_CostPlace
CostHolder = p_CostHolder
ConnectInfo = p_ConnectInfo
GLRowsTypeVAT = p_GLRowsTypeVAT
GLRowsGUID = p_GLRowsGUID
CashType = p_CashType
PartnerType = p_PartnerType
End Sub
Public Sub DivideRows(_ocur As Xpo.XPObjectSpace, p_GLRowsBase As GLRows, p_GLRowsDivideH As GLRowsDivideH, Optional p_WithCommit As Boolean = False)
'-- Az eljárás megcsinálja a megfelelõ fõkönyvi sor sorbontását
Dim _GLRowsDivideR As GLRowsDivideR
Dim _GLHeader As GLHeader
Dim _GLBank As GLBank
Dim _GLCassa As GLCassa
Dim _GLCompensation As GLCompensation
Dim _GLRows As GLRows
Dim _DebitChartOfAccounts As ChartOfAccounts = Nothing
Dim _CreditChartOfAccounts As ChartOfAccounts = Nothing
Dim _LiquidAssets As LiquidAssets = Nothing
Dim _CustomersFrom_Base As CustomersFrom = Nothing
Dim _Customers_Base As Customers = Nothing
Dim _ConnectInfo_Base As String = ""
Dim _PartnerType_Base As ePartnerType = ePartnerType.eNotSet
If p_GLRowsBase IsNot Nothing Then
_GLHeader = p_GLRowsBase.GLHeader
If p_GLRowsBase.PartnerType = ePartnerType.ePayabels Or p_GLRowsBase.PartnerType = ePartnerType.eReceivables Then
_CustomersFrom_Base = p_GLRowsBase.GLHeader.CustomersFrom
_Customers_Base = p_GLRowsBase.Customer
_PartnerType_Base = p_GLRowsBase.PartnerType
_ConnectInfo_Base = p_GLRowsBase.ConnectInfo
End If
If p_GLRowsBase.GLHeader.GLDocumentType = eGLDocumentType.eGLBank Or _
p_GLRowsBase.GLHeader.GLDocumentType = eGLDocumentType.eGLCassa Or _
p_GLRowsBase.GLHeader.GLDocumentType = eGLDocumentType.eGLCompensation Or _
p_GLRowsBase.GLHeader.GLDocumentType = eGLDocumentType.eGLMixed Then ' Bank esetén mi a helyzet !
Select Case p_GLRowsBase.GLHeader.GLDocumentType
Case eGLDocumentType.eGLBank
_GLBank = _ocur.FindObject(Of GLBank)(CriteriaOperator.Parse("Oid=?", p_GLRowsBase.GLHeader.Oid), True)
_LiquidAssets = _GLBank.LiquidAssets_Main
Case eGLDocumentType.eGLCassa
_GLCassa = _ocur.FindObject(Of GLCassa)(CriteriaOperator.Parse("Oid=?", p_GLRowsBase.GLHeader.Oid), True)
_LiquidAssets = _GLCassa.LiquidAssets_Cassa
Case eGLDocumentType.eGLCompensation
_GLCompensation = _ocur.FindObject(Of GLCompensation)(CriteriaOperator.Parse("Oid=?", p_GLRowsBase.GLHeader.Oid), True)
_LiquidAssets = _GLCompensation.LiquidAssets_Main
End Select
For Each _GLRowsDivideR In p_GLRowsDivideH.GLRowsDivideR
_GLRows = _ocur.CreateObject(Of GLRows)()
_GLRows.GLHeader = _GLHeader
If p_GLRowsBase.GLHeader.GLDocumentType <> eGLDocumentType.eGLMixed Then
If _LiquidAssets.GetChartOfAccounts(_GLRows.GLHeader.DateExecution.Year, 0).AccountNumber = p_GLRowsBase.DebitChartOfAccounts.AccountNumber Then
'-- Bankba jóváírás érkezett
_DebitChartOfAccounts = _LiquidAssets.GetChartOfAccounts(_GLRows.GLHeader.DateExecution.Year, 0)
If _GLRowsDivideR.ChartOfAccounts IsNot Nothing Then
_CreditChartOfAccounts = _GLRowsDivideR.ChartOfAccounts
Else
_CreditChartOfAccounts = p_GLRowsDivideH.GLRowsBase.CreditChartOfAccounts
End If
_GLRows.InAmountDEV = _GLRowsDivideR.AmountDEV
_GLRows.InAmountHUF = _GLRowsDivideR.AmountHUF
ElseIf _LiquidAssets.GetChartOfAccounts(_GLRows.GLHeader.DateExecution.Year, 0).AccountNumber = p_GLRowsBase.CreditChartOfAccounts.AccountNumber Then
'-- Banki terhelés
_CreditChartOfAccounts = _LiquidAssets.GetChartOfAccounts(_GLRows.GLHeader.DateExecution.Year, 0)
If _GLRowsDivideR.ChartOfAccounts IsNot Nothing Then
_DebitChartOfAccounts = _GLRowsDivideR.ChartOfAccounts
Else
_DebitChartOfAccounts = p_GLRowsDivideH.GLRowsBase.DebitChartOfAccounts
End If
_GLRows.OutAmountDEV = _GLRowsDivideR.AmountDEV
_GLRows.OutAmountHUF = _GLRowsDivideR.AmountHUF
End If
End If
If p_GLRowsBase.GLHeader.GLDocumentType = eGLDocumentType.eGLMixed Then
_DebitChartOfAccounts = _GLRowsDivideR.DebitChartOfAccounts
_CreditChartOfAccounts = _GLRowsDivideR.CreditChartOfAccounts
_GLRows.OutAmountDEV = _GLRowsDivideR.AmountDEV
_GLRows.OutAmountHUF = _GLRowsDivideR.AmountHUF
_LiquidAssets = Nothing
End If
_GLRows.AddGLRows(_GLHeader, _ocur.GetObject(_DebitChartOfAccounts), _ocur.GetObject(CreditChartOfAccounts), _GLRowsDivideR.AmountDEV, _GLRowsDivideR.AmountHUF, _
_LiquidAssets, _ocur.GetObject(_GLRowsDivideR.Customers), _GLHeader.DateExecution, Nothing, _ocur.GetObject(_GLRowsDivideR.NoteRows), _
_ocur.GetObject(_GLRowsDivideR.UniqueObjects), _ocur.GetObject(_GLRowsDivideR.Controlling), _ocur.GetObject(_GLRowsDivideR.JobNumberObjects), _ocur.GetObject(_GLRowsDivideR.CostPlace), _
_ocur.GetObject(_GLRowsDivideR.CostHolder), _GLRowsDivideR.ConnectInfo, eGLRowsTypeVAT.eNettoRow, p_GLRowsBase.GLRowsGUID, _
p_GLRowsBase.TransactionType, p_GLRowsBase.CashType, p_GLRowsBase.PartnerType)
If p_WithCommit Then
_ocur.CommitChanges()
If _GLRows.PartnerType = ePartnerType.ePayabels Or _GLRows.PartnerType = ePartnerType.eReceivables Then
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
GLFunctions.ReconfigurePCI(_uow, _GLHeader.CustomersFrom, _GLRows.Customer, _GLRows.PartnerType, _GLRows.ConnectInfo)
End If
End If
Next
_ocur.Delete(p_GLRowsBase)
End If
If p_WithCommit Then
_ocur.CommitChanges()
If _PartnerType_Base = ePartnerType.ePayabels Or _PartnerType_Base = ePartnerType.eReceivables Then
Dim _uow As New UnitOfWork(_ocur.Session.DataLayer)
GLFunctions.ReconfigurePCI(_uow, _CustomersFrom_Base, _Customers_Base, _PartnerType_Base, _ConnectInfo_Base)
End If
End If
End If
End Sub
End Class