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,449 @@
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.ExpressApp.ConditionalAppearance
Imports System.Linq
Imports System.Linq.Expressions
Imports DevExpress.ExpressApp.Editors
'<EditorStateRuleAttribute("Hide reinvoice info", "ReInvoiceMode;ReInvoice_ExtraCharge;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoiceReason", EditorState.Hidden, "IsReInvoice=False", ViewType.DetailView)> _
'<EditorStateRuleAttribute("Hide reinvoice info 2", "ReInvoice_ExtraCharge;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoiceReason", EditorState.Hidden, "ReInvoiceMode=2", ViewType.DetailView)> _
'<EditorStateRuleAttribute("Hide reinvoice info 3", "ReInvoice_ExtraCharge;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoiceReason", EditorState.Hidden, "ReInvoiceMode=0", ViewType.DetailView)> _
'<EditorStateRuleAttribute("Hide contractrows when from COC", "Contracts;ContractRows", EditorState.Hidden, "ChoiceRowMode=1", ViewType.DetailView)> _
'<EditorStateRuleAttribute("Disable properties in RegistryRowsFinancialControlling", "RegistryHeader;UniqueObjects;JobNumberObjects;ChoiceRowMode;Controlling;ChartOfAccounts;Contracts;ContractRows;PaymentOption;Note;Amount;CostHolder;CostPlace;IsReInvoice;ReInvoiceReason;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoice_ExtraCharge;IsGuaranteeBack;ReInvoiceMode", _
' ViewType.DetailView, "RegistryHeader.CurrentWorkflowSystemSteps.StepFinancialType in (2,5) = False", EditorState.Disabled)> _
'<EditorStateRuleAttribute("Disable properties in RegistryRowsFinancialControlling2", "*", ViewType.DetailView, "RegistryHeader.CurrentWorkflowSystemSteps.StepIndex>4", EditorState.Disabled)> _
<DefaultClassOptions()> _
<NavigationItem(False), CreatableItem(False)> _
<DefaultProperty("DisplayName")> _
<Appearance("Hide reinvoice info", TargetItems:="ReInvoiceMode;ReInvoice_ExtraCharge;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoiceReason", Criteria:="IsReInvoice=False", Visibility:=Editors.ViewItemVisibility.Hide, Context:="DetailView")> _
<Appearance("Hide reinvoice info 2", TargetItems:="ReInvoice_ExtraCharge;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoiceReason", Criteria:="ReInvoiceMode=2", Visibility:=Editors.ViewItemVisibility.Hide, Context:="DetailView")> _
<Appearance("Hide reinvoice info 3", TargetItems:="ReInvoice_ExtraCharge;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoiceReason", Criteria:="ReInvoiceMode=0", Visibility:=Editors.ViewItemVisibility.Hide, Context:="DetailView")> _
<Appearance("Hide contractrows when from COC", TargetItems:="Contracts;ContractRows", Criteria:="ChoiceRowMode=1", Visibility:=Editors.ViewItemVisibility.Hide, Context:="DetailView")> _
<Appearance("Disable properties in RegistryRowsFinancialControlling", TargetItems:="RegistryHeader;UniqueObjects;JobNumberObjects;ChoiceRowMode;Controlling;ChartOfAccounts;Contracts;ContractRows;PaymentOption;Note;Amount;CostHolder;CostPlace;IsReInvoice;ReInvoiceReason;ReInvoice_Customers;ReInvoice_ContractRows;ReInvoice_ExtraCharge;IsGuaranteeBack;ReInvoiceMode", _
Criteria:="RegistryHeader.CurrentWorkflowSystemSteps.StepFinancialType in (2,5) = False", Enabled:=False, Context:="DetailView")> _
<Appearance("Disable properties in RegistryRowsFinancialControlling2", TargetItems:="*", Criteria:="RegistryHeader.CurrentWorkflowSystemSteps.StepIndex>4", Enabled:=False, Context:="DetailView")> _
<Appearance("HIDE aCreateTechnicalContractFromRegistry StepIndex>3", AppearanceItemType.Action, _
"(RegistryHeader.CurrentWorkflowSystemSteps.StepFinancialType in (2,5) = False) Or !IsNull(ContractRows) Or ! IsNull(Contracts)", _
TargetItems:="aCreateTechnicalContractFromRegistry", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("HIDE aCreateContracts", AppearanceItemType.Action, "ChoiceRowMode=1", TargetItems:="aCreateContracts", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("HIDE aCreateContractsRowsfromControllingRows", AppearanceItemType.Action, "ChoiceRowMode=1 or IsNull(Contracts)", TargetItems:="aCreateContractsRowsfromControllingRows", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("HIDE aCreateTechnicalContractFromRegistry", AppearanceItemType.Action, "ChoiceRowMode=1", TargetItems:="aCreateTechnicalContractFromRegistry", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("HIDE @COCManipulation", AppearanceItemType.LayoutItem, "ChoiceRowMode=1", TargetItems:="@COCManipulation", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("HIDE aGenerateCOC", AppearanceItemType.Action, "ChoiceRowMode=1", TargetItems:="aGenerateCOC", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("HIDE ContractRows", AppearanceItemType.ViewItem, "isnull(Contracts)=True", TargetItems:="ContractRows", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("Hide RegistryBankTransfer_Group when IsGuaranteeBack = false", AppearanceItemType.LayoutItem, "IsGuaranteeBack = False", TargetItems:="RegistryBankTransfer_Group", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("Hide RegistryBankTransfer_Group when RegistryHeader.F_PayMode!=1", AppearanceItemType.ViewItem, "RegistryHeader.F_PayMode!=1", TargetItems:="IsGuaranteeBack", visibility:=Editors.ViewItemVisibility.Hide)> _
<Appearance("Disable actions if currentstep is not eCheckControlling", AppearanceItemType:="Action", Criteria:="RegistryHeader.CurrentWorkflowSystemSteps.StepFinancialType In (2,3,5) = False ", TargetItems:="Save;SaveAndNew;SaveAndClose;Delete", Enabled:=False, Context:="Any")> _
<Appearance("HIDE New action - RegistryRowsFinancialControlling", AppearanceItemType:="Action", TargetItems:="New", Enabled:=False, Criteria:="RegistryHeader.NettoAmountRemaining=0 and isnull(RegistryHeader.NettoAmountRemaining)=False", Context:="Any")> _
<RuleCriteria("RuleCriteria RegistryRowsFinancialControlling-Controlling", DefaultContexts.Save, _
"(Controlling.IsParent=False) or (RegistryHeader.RegistryType.Rule5DMatrix.RequireControlling=False and isnull(Controlling)=True)", _
"Gyüjtõ kontrollszám nem választható ki!", SkipNullOrEmptyValues:=False)> _
<RuleCriteria("RuleCriteria RegistryRowsFinancialControlling-Controlling-II", "aCreateContractsRowsfromControllingRows", _
"(Controlling.IsParent=False) or (RegistryHeader.RegistryType.Rule5DMatrix.RequireControlling=False and isnull(Controlling)=True)", _
"Gyüjtõ kontrollszám nem választható ki!", SkipNullOrEmptyValues:=False)> _
Public Class RegistryRowsFinancialControlling
Inherits BaseObject
Private _RegistryHeader As RegistryHeader 'Iktatás fejléce
Private _ChoiceRowMode As eChoiceRowMode 'Szerzõdési sor vagy teljesítési igazolás sor kiválasztása
Private _DateExecution As Date 'Teljesítés dátuma
Private _ChartOfAccounts As ChartOfAccounts 'FK által beállított számlaszám <NonCloneable()> _
Private _Contracts As Contracts 'Szerzõdés fejléce<NonCloneable()> _
Private _ContractRows As ContractRows 'Szerzõdési sor<NonCloneable()> _
Private _PaymentOption As PaymentOption 'Fizetési mód
Private _Note As String 'Megjegyzés
Private _Amount As Double 'Nettó összeg<NonCloneable()> _
Private _Controlling As Controlling 'Kontroll szám
Private _CostHolder As CostHolder 'Költségviselõ
Private _CostPlace As CostPlace 'Költséghely
Private _UniqueObjects As UniqueObjects 'Egyedi azonosító
Private _JobNumberObjects As JobNumberObjects 'Munkaszám, project
Private _File As FileData 'A beszkennelt telj. igazolás file<NonCloneable()> _
Private _IsReInvoice As Boolean '= False 'Tovább kell számlázni ?
Private _ReInvoice_Customers As Customers 'Kinek kell továbbszámlázni ?
Private _ReInvoice_ContractRows As ContractRows 'Milyen szerzõdési sor alapján <NonCloneable()> _
Private _ReInvoice_ExtraCharge As Double 'Mennyiért
Private _ReInvoice_Contracts As Contracts 'Melyik szerzõdésre hozza létre a sort amin ki lesz számlázva <NonCloneable()> _
Private _ReInvoiceMode As eReinvoiceMode 'Továbbszámlázás módja
Private _ReInvoiceReason As Controlling 'Továbbszámlázás jogcíme
Private _IsGuaranteeBack As Boolean '= False 'Van-e visszatartási garancia
Private _F_ReadyforBookEntryRows As Boolean '= False '<NonCloneable()> _
Private _WorkflowMessage As String 'Léptetéskori üzenet<NonCloneable()> _
Private _ConnectInfoAdvanced As String = "" 'Analitikus kötési szám az elõlegek pontozásához
Public Sub New(ByVal session As Session)
MyBase.New(session)
End Sub
Public Overrides Sub AfterConstruction()
MyBase.AfterConstruction()
Me.ChoiceRowMode = eChoiceRowMode.eFromContractRows
If Me.RegistryHeader IsNot Nothing Then
Me.DateExecution = Me.RegistryHeader.F_DateExecution
End If
IsGuaranteeBack = False
F_ReadyforBookEntryRows = False
IsReInvoice = False
End Sub
Protected Overrides Sub OnSaving()
MyBase.OnSaving()
If IsDeleted = False Then
If Me.ContractRows IsNot Nothing Then
Dim _CurrencyRate As Double = 1.0
If Math.Abs(Me.ContractRows.NettoPriceHUF) < Math.Abs(Me.Amount) Then
If Math.Abs(Math.Abs(Me.ContractRows.NettoPriceHUF) - Math.Abs(Me.Amount)) > 5 Then
Throw New Exception("*A leigazolni kívánt összeg meghaladja, az igazoláshoz felhasznált szerzõdési sor összegét, módosítsa a szerzõdési sort ! Iktatószám : " & Me.RegistryHeader.DocumentNumber)
End If
End If
If Math.Abs(Me.ContractRows.NettoPriceHUF) > Math.Abs(Me.Amount) Then
If Math.Abs(Math.Abs(Me.ContractRows.NettoPriceHUF) - Math.Abs(Me.Amount)) > 5 Then
Throw New Exception("*A leigazoláshoz felhasználni kívánt szerzõdési sor összege meghaladja a számla sor összegét. Módosítsa a szerzõdési sort ! Iktatószám : " & Me.RegistryHeader.DocumentNumber)
End If
End If
End If
If Me.RegistryHeader IsNot Nothing Then
If Me.DateExecution = Nothing Then
Me.DateExecution = Me.RegistryHeader.F_DateExecution
End If
End If
End If
End Sub
Protected Overrides Sub OnDeleting()
MyBase.OnDeleting()
If Me.ContractRows IsNot Nothing Then
If Me.ContractRows.Contracts.ContractTemplate.IsTechnical Then
Me.ContractRows.Delete()
End If
If Me.ContractRows IsNot Nothing Then
Me.ContractRows.RegistryRowsFinancialControlling = Nothing
End If
End If
Dim _DeliveryNoteInRRFC_Collection As New XPCollection(Of DeliveryNoteInRRFC)(PersistentCriteriaEvaluationBehavior.InTransaction, Session, CriteriaOperator.Parse("RegistryRowsFinancialControlling=?", Me))
Session.Delete(_DeliveryNoteInRRFC_Collection)
End Sub
<Association("RegistryHeader-RegistryRowsFinancialControlling", GetType(RegistryHeader))> _
Property RegistryHeader As RegistryHeader
Get
Return _RegistryHeader
End Get
Set(ByVal value As RegistryHeader)
SetPropertyValue("RegistryHeader", _RegistryHeader, value)
If Session.IsNewObject(Me) And Session.IsObjectsLoading = False And Session.IsObjectsSaving = False And Me.RegistryHeader IsNot Nothing Then
Me.Note = RegistryHeader.ShortName
End If
End Set
End Property
<ImmediatePostData(True)> _
Property ChoiceRowMode As eChoiceRowMode
Get
Return _ChoiceRowMode
End Get
Set(ByVal value As eChoiceRowMode)
SetPropertyValue("ChoiceRowMode", _ChoiceRowMode, value)
End Set
End Property
Property DateExecution As Date
Get
Return _DateExecution.Date
End Get
Set(value As Date)
SetPropertyValue("DateExecution", _DateExecution, value.Date)
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
'-Rule5DMatrix -------------------------------
<RuleRequiredField("RegistryRowsFinancialControlling-Controlling", DefaultContexts.Save, targetcriteria:="RegistryHeader.RegistryType.Rule5DMatrix.RequireControlling")> _
<RuleRequiredField("RegistryRowsFinancialControlling-Controlling_2", "aCreateContractsRowsfromControllingRows", targetcriteria:="RegistryHeader.RegistryType.Rule5DMatrix.RequireControlling")> _
Property Controlling As Controlling
Get
Return _Controlling
End Get
Set(ByVal value As Controlling)
SetPropertyValue("Controlling", _Controlling, value)
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving And Me.ContractRows IsNot Nothing Then
If Me.ContractRows.Controlling IsNot value Then
Me.ContractRows.Controlling = value
Me.ContractRows.Save()
End If
End If
End Set
End Property
<RuleRequiredField("RegistryRowsFinancialControlling-CostHolder", "aCreateContractsRowsfromControllingRows", targetcriteria:="RegistryHeader.RegistryType.Rule5DMatrix.RequireCostHolder")> _
Property CostHolder As CostHolder
Get
Return _CostHolder
End Get
Set(ByVal value As CostHolder)
SetPropertyValue("CostHolder", _CostHolder, value)
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving And Me.ContractRows IsNot Nothing Then
If Me.ContractRows.CostHolder IsNot value Then
Me.ContractRows.CostHolder = value
Me.ContractRows.Save()
End If
End If
End Set
End Property
<RuleRequiredField("RegistryRowsFinancialControlling-CostPlace", "aCreateContractsRowsfromControllingRows", targetcriteria:="RegistryHeader.RegistryType.Rule5DMatrix.RequireCostPlace")> _
Property CostPlace As CostPlace
Get
Return _CostPlace
End Get
Set(ByVal value As CostPlace)
SetPropertyValue("CostPlace", _CostPlace, value)
End Set
End Property
<RuleRequiredField("RegistryRowsFinancialControlling-UniqueObjects", "aCreateContractsRowsfromControllingRows", targetcriteria:="RegistryHeader.RegistryType.Rule5DMatrix.RequireUniqueObjects")> _
Property UniqueObjects As UniqueObjects
Get
Return _UniqueObjects
End Get
Set(ByVal value As UniqueObjects)
SetPropertyValue("UniqueObjects", _UniqueObjects, value)
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving And Me.ContractRows IsNot Nothing Then
If Me.ContractRows.UniqueObjects IsNot value Then
Me.ContractRows.UniqueObjects = value
Me.ContractRows.Save()
End If
End If
End Set
End Property
<RuleRequiredField("RegistryRowsFinancialControlling-JobNumberObjects", "aCreateContractsRowsfromControllingRows", targetcriteria:="RegistryHeader.RegistryType.Rule5DMatrix.RequireJobNumberObjects")> _
Property JobNumberObjects As JobNumberObjects
Get
Return _JobNumberObjects
End Get
Set(ByVal value As JobNumberObjects)
SetPropertyValue("JobNumberObjects", _JobNumberObjects, value)
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving And Me.ContractRows IsNot Nothing Then
If Me.ContractRows.JobNumberObjects IsNot value Then
Me.ContractRows.JobNumberObjects = value
Me.ContractRows.Save()
End If
End If
End Set
End Property
<NonCloneable()>
<ImmediatePostData(True), DataSourceCriteria("IsParent=False")>
Property ChartOfAccounts As ChartOfAccounts
Get
Return _ChartOfAccounts
End Get
Set(ByVal value As ChartOfAccounts)
SetPropertyValue("ChartOfAccounts", _ChartOfAccounts, value)
End Set
End Property
<NonPersistent()>
<NonCloneable()>
<ImmediatePostData(True), DataSourceCriteria("ContractTemplate.PartnerType=1 and Customers='@This.RegistryHeader.Customers' and CustomersFrom ='@This.RegistryHeader.CustomersFrom' AND ContractTemplate.IsTechnical=False AND (State = 1 OR State = 2)")>
Property Contracts As Contracts
Get
Return (_Contracts)
End Get
Set(ByVal value As Contracts)
SetPropertyValue("Contracts", _Contracts, value)
End Set
End Property
<ImmediatePostData(True), DataSourceCriteria("Contracts='@This.Contracts' AND IsNull(RegistryRowsFinancialControlling)=TRue and CurrencyName.ShortName='@This.RegistryHeader.F_CurrencyName.ShortName'")>
<RuleRequiredField("RegistryRowsFinancialControlling.ContractRows", DefaultContexts.Save)>
<NonCloneable()>
Property ContractRows As ContractRows
Get
Return _ContractRows
End Get
Set(ByVal value As ContractRows)
SetPropertyValue("ContractRows", _ContractRows, value)
If Session.IsObjectsLoading = False And Session.IsObjectsSaving = False Then
If value IsNot Nothing Then
PaymentOption = value.PaymentOption
Controlling = value.Controlling
UniqueObjects = value.UniqueObjects
Note = value.Description
CostHolder = value.CostHolder
CostPlace = value.CostPlace
JobNumberObjects = value.JobNumberObjects
If Me.RegistryHeader.F_CurrencyName.ShortName <> "HUF" Then
Me.Amount = Math.Round(value.NettoPriceDEV * Me.RegistryHeader.F_CurrencyRate, 0, MidpointRounding.AwayFromZero)
value.NettoPriceHUF = Math.Round(value.NettoPriceDEV * Me.RegistryHeader.F_CurrencyRate, 0, MidpointRounding.AwayFromZero)
'-- Itt van egy SAVE !!!!! De ez kell !!!!!!
value.Save()
Else
Me.Amount = value.NettoPriceHUF
End If
End If
End If
End Set
End Property
Property PaymentOption As PaymentOption
Get
Return _PaymentOption
End Get
Set(ByVal value As PaymentOption)
SetPropertyValue("PaymentOption", _PaymentOption, value)
End Set
End Property
Property Note As String
Get
Return _Note
End Get
Set(ByVal value As String)
SetPropertyValue("Note", _Note, value)
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving And Me.ContractRows IsNot Nothing Then
'If Not Me.ContractRows.ShortName = value Then
' Me.ContractRows.ShortName = value
' Me.ContractRows.Save()
'End If
End If
End Set
End Property
<NonCloneable()>
Property Amount As Double
Get
Return _Amount
End Get
Set(ByVal value As Double)
SetPropertyValue("Amount", _Amount, value)
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving And Me.ContractRows IsNot Nothing Then
If Me.ContractRows.NettoPriceHUF = value Then
Me.ContractRows.NettoPriceHUF = value
Me.ContractRows.NettoPriceHUF = Math.Round(Me.ContractRows.NettoPriceHUF, 2, MidpointRounding.AwayFromZero)
End If
value = Math.Round(value, 2, MidpointRounding.AwayFromZero)
End If
End Set
End Property
<NonCloneable()>
Property File As FileData
Get
Return _File
End Get
Set(ByVal value As FileData)
SetPropertyValue("File", _File, value)
End Set
End Property
<ImmediatePostData(True)>
Property IsReInvoice As Boolean
Get
Return _IsReInvoice
End Get
Set(ByVal value As Boolean)
SetPropertyValue("IsReInvoice", _IsReInvoice, value)
End Set
End Property
<ImmediatePostData(True)>
<RuleValueComparison("RegistryRowsFinancialControlling.ReInvoiceMode", DefaultContexts.Save, ValueComparisonType.NotEquals, eReinvoiceMode.eNotSet, TargetCriteria:="IsReInvoice = True")>
Property ReInvoiceMode As eReinvoiceMode
Get
Return _ReInvoiceMode
End Get
Set(ByVal value As eReinvoiceMode)
SetPropertyValue("ReinvoiceMode", _ReInvoiceMode, value)
If Session.IsObjectsLoading = False And Session.IsObjectsSaving = False Then
End If
End Set
End Property
<RuleRequiredField("RegistryRowsFinancialControlling", DefaultContexts.Save, TargetCriteria:="IsReInvoice=True AND ReInvoiceMode=1")>
<ImmediatePostData(True), DataSourceCriteria("Controllingdirection = 0 And IsReInvoiceReason = True")>
Property ReInvoiceReason As Controlling
Get
Return _ReInvoiceReason
End Get
Set(ByVal value As Controlling)
SetPropertyValue("ReInvoiceReason", _ReInvoiceReason, value)
End Set
End Property
Property ReInvoice_Customers As Customers
Get
Return _ReInvoice_Customers
End Get
Set(ByVal value As Customers)
SetPropertyValue("ReInvoice_Customers", _ReInvoice_Customers, value)
End Set
End Property
<NonCloneable()>
<ImmediatePostData(True), DataSourceCriteria("Contracts.CustomersFrom = '@This.RegistryHeader.CustomersFrom' And Contracts.Customers = '@This.ReInvoice_Customers' And Contracts.ContractTemplate.PartnerType = 0")>
Property ReInvoice_ContractRows As ContractRows
Get
Return _ReInvoice_ContractRows
End Get
Set(ByVal value As ContractRows)
SetPropertyValue("ReInvoice_ContractRows", _ReInvoice_ContractRows, value)
End Set
End Property
Property ReInvoice_ExtraCharge As Double
Get
Return _ReInvoice_ExtraCharge
End Get
Set(ByVal value As Double)
SetPropertyValue("ReInvoice_ExtraCharge", _ReInvoice_ExtraCharge, value)
End Set
End Property
<ImmediatePostData()> _
Property IsGuaranteeBack As Boolean
Get
Return _IsGuaranteeBack
End Get
Set(ByVal value As Boolean)
SetPropertyValue("IsGuaranteeBack", _IsGuaranteeBack, value)
End Set
End Property
<NonCloneable()> _
Property F_ReadyforBookEntryRows As Boolean
Get
Return _F_ReadyforBookEntryRows
End Get
Set(ByVal value As Boolean)
SetPropertyValue("F_ReadyforBookEntryRows", _F_ReadyforBookEntryRows, value)
End Set
End Property
<NonCloneable()> _
<VisibleInDetailView(False), VisibleInListView(False), VisibleInLookupListView(False), Size(-1)>
Property WorkflowMessage As String
Get
Return _WorkflowMessage
End Get
Set(ByVal value As String)
SetPropertyValue("WorkflowMessage", _WorkflowMessage, value)
End Set
End Property
'------ReadOnly----------
<VisibleInListView(False)> _
ReadOnly Property RegistryBankTransfer As XPCollection(Of RegistryBankTransfer)
Get
Return New XPCollection(Of RegistryBankTransfer)(Session, CriteriaOperator.Parse("RegistryHeader=?", Me.RegistryHeader))
End Get
End Property
ReadOnly Property DisplayName As String
Get
If Me.RegistryHeader IsNot Nothing Then
Return Me.RegistryHeader.RegistryNumber & ", " & Me.RegistryHeader.DocumentNumber
Else
Return ""
End If
End Get
End Property
End Class
@@ -0,0 +1,65 @@
Partial Class RegistryRowsFinancialControllingVC
<System.Diagnostics.DebuggerNonUserCode()> _
Public Sub New(ByVal Container As System.ComponentModel.IContainer)
MyClass.New()
'Required for Windows.Forms Class Composition Designer support
Container.Add(Me)
End Sub
'Component overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Component Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Component Designer
'It can be modified using the Component Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Me.aOpenContractRows = New DevExpress.ExpressApp.Actions.SimpleAction(Me.components)
Me.aViewRegistryNoTask = New DevExpress.ExpressApp.Actions.SimpleAction(Me.components)
'
'aOpenContractRows
'
Me.aOpenContractRows.Caption = "OpenContractRows"
Me.aOpenContractRows.ConfirmationMessage = Nothing
Me.aOpenContractRows.Id = "aOpenContractRows"
Me.aOpenContractRows.ImageName = Nothing
Me.aOpenContractRows.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireSingleObject
Me.aOpenContractRows.Shortcut = Nothing
Me.aOpenContractRows.Tag = Nothing
Me.aOpenContractRows.TargetObjectsCriteria = Nothing
Me.aOpenContractRows.TargetViewId = "RegistryRowsFinancialControlling_DetailView"
Me.aOpenContractRows.ToolTip = Nothing
Me.aOpenContractRows.TypeOfView = Nothing
'
'aViewRegistryNoTask
'
Me.aViewRegistryNoTask.Caption = "aView Registry No Task"
Me.aViewRegistryNoTask.ConfirmationMessage = Nothing
Me.aViewRegistryNoTask.Id = "aViewRegistryNoTask"
Me.aViewRegistryNoTask.ImageName = Nothing
Me.aViewRegistryNoTask.Shortcut = Nothing
Me.aViewRegistryNoTask.Tag = Nothing
Me.aViewRegistryNoTask.TargetObjectsCriteria = Nothing
Me.aViewRegistryNoTask.TargetObjectType = GetType(Nuvolar.[Module].RegistryHeader)
Me.aViewRegistryNoTask.TargetViewId = Nothing
Me.aViewRegistryNoTask.ToolTip = Nothing
Me.aViewRegistryNoTask.TypeOfView = Nothing
End Sub
Friend WithEvents aOpenContractRows As DevExpress.ExpressApp.Actions.SimpleAction
Friend WithEvents aViewRegistryNoTask As DevExpress.ExpressApp.Actions.SimpleAction
End Class
@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="aOpenContractRows.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="aViewRegistryNoTask.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>180, 17</value>
</metadata>
<metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>
@@ -0,0 +1,165 @@
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.ExpressApp.SystemModule
Imports DevExpress.Data.Filtering
Imports DevExpress.Xpo
Public Class RegistryRowsFinancialControllingVC
Inherits DevExpress.ExpressApp.ViewController
Public Sub New()
MyBase.New()
'This call is required by the Component Designer.
InitializeComponent()
RegisterActions(components)
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
If View.Id Like "RegistryRowsFinancialControlling_ListView_Reinvoice*" Then
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", False)
End If
If View.Id = "RegistryHeader_RegistryRowsFinancialControlling_ListView" Then
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", False)
'If TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject IsNot Nothing Then
' Dim _RegistryHeader As RegistryHeader = TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject
' If _RegistryHeader IsNot Nothing Then
' Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader)
' 'AddHandler _RegistryHeader.Changed, AddressOf RegistryHeader_RegistryRowsFinancialControlling_ListView_MasterObjectChanged
' AddHandler View.ObjectSpace.ObjectChanged, AddressOf _RegistryRowsFinancialControlling_ListView_ObjectChanged
' AddHandler View.ObjectSpace.ObjectSaved, AddressOf _RegistryRowsFinancialControlling_ListView_ObjectSaved
' AddHandler View.ObjectSpace.ObjectReloaded, AddressOf _RegistryRowsFinancialControlling_ListView_ObjectReloaded
' AddHandler View.ObjectSpace.ObjectDeleted, AddressOf _RegistryRowsFinancialControlling_ListView_ObjectDeleted
' End If
'End If
End If
If View.Id = "RegistryHeader_ListView_Subcontractor" Then
Frame.GetController(Of RegistryRowsFinancialControllingVC).aViewRegistryNoTask.Active.SetItemValue("", False)
End If
End Sub
Protected Overrides Sub OnDeactivated()
MyBase.OnDeactivated()
If View.Id Like "RegistryRowsFinancialControlling_ListView_Reinvoice*" Then
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", True)
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", True)
End If
If View.Id = "RegistryHeader_RegistryRowsFinancialControlling_ListView" Then
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", True)
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", True)
'If TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject IsNot Nothing Then
' Dim _RegistryHeader As RegistryHeader = TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject
' If _RegistryHeader IsNot Nothing Then
' RemoveHandler _RegistryHeader.Changed, AddressOf RegistryHeader_RegistryRowsFinancialControlling_ListView_MasterObjectChanged
' End If
'End If
End If
If View.Id = "RegistryHeader_ListView_Subcontractor" Then
Frame.GetController(Of RegistryRowsFinancialControllingVC).aViewRegistryNoTask.Active.SetItemValue("", True)
End If
End Sub
Private Sub aOpenContractRows_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aOpenContractRows.Execute
Dim _RegistryRowsFinancialControlling As RegistryRowsFinancialControlling = TryCast(View.SelectedObjects(0), RegistryRowsFinancialControlling)
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
e.ShowViewParameters.CreatedView = Application.CreateDetailView(_onew, _onew.GetObject(_RegistryRowsFinancialControlling.ContractRows.Contracts))
End Sub
Private Sub RegistryHeader_RegistryRowsFinancialControlling_ListView_MasterObjectChanged(sender As Object, e As DevExpress.Xpo.ObjectChangeEventArgs)
Dim _RegistryHeader As RegistryHeader = TryCast(e.Object, RegistryHeader)
Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader)
End Sub
Private Sub _RegistryRowsFinancialControlling_ListView_ObjectChanged(sender As Object, e As DevExpress.ExpressApp.ObjectChangedEventArgs)
Dim _RegistryHeader As RegistryHeader = TryCast(e.Object, RegistryHeader)
Dim _RegistryRowsFinancialControlling As RegistryRowsFinancialControlling = TryCast(e.Object, RegistryRowsFinancialControlling)
If _RegistryHeader IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader)
If _RegistryRowsFinancialControlling IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryRowsFinancialControlling.RegistryHeader)
End Sub
Private Sub _RegistryRowsFinancialControlling_ListView_ObjectReloaded(sender As Object, e As ObjectManipulatingEventArgs)
Dim _RegistryHeader As RegistryHeader = TryCast(e.Object, RegistryHeader)
Dim _RegistryRowsFinancialControlling As RegistryRowsFinancialControlling = TryCast(e.Object, RegistryRowsFinancialControlling)
If _RegistryHeader IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader)
If _RegistryRowsFinancialControlling IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryRowsFinancialControlling.RegistryHeader)
End Sub
Private Sub _RegistryRowsFinancialControlling_ListView_ObjectSaved(sender As Object, e As ObjectManipulatingEventArgs)
Dim _RegistryHeader As RegistryHeader = TryCast(e.Object, RegistryHeader)
Dim _RegistryRowsFinancialControlling As RegistryRowsFinancialControlling = TryCast(e.Object, RegistryRowsFinancialControlling)
If _RegistryHeader IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader)
If _RegistryRowsFinancialControlling IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryRowsFinancialControlling.RegistryHeader)
End Sub
Private Sub _RegistryRowsFinancialControlling_ListView_ObjectDeleted(sender As Object, e As ObjectsManipulatingEventArgs)
If e.Objects.Count <= 0 Then Exit Sub
Dim _Object As Object = Nothing
For Each _Object In e.Objects
Next
Dim _RegistryHeader As RegistryHeader = TryCast(_Object, RegistryHeader)
Dim _RegistryRowsFinancial As RegistryRowsFinancial = TryCast(_Object, RegistryRowsFinancial)
If _RegistryHeader IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader)
If _RegistryRowsFinancial IsNot Nothing Then Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryRowsFinancial.RegistryHeader)
End Sub
Private Sub Action_NEW_DELETE_Hide_RegistryHeader_RegistryRowsFinancialControlling(_RegistryHeader As RegistryHeader)
'// Mikor NE látszódjon a NEW action
If _RegistryHeader Is Nothing Then Exit Sub
If _RegistryHeader.CurrentWorkflowSystemSteps Is Nothing Then Exit Sub
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
If _RegistryHeader.CurrentWorkflowSystemSteps.StepFinancialType = eStepFinancialType.eCheckVATPlusControlling Then
If _RegistryHeader.IsEditable = True Then
If _RegistryHeader.BruttoAmountRemaining = 0 And _RegistryHeader.F_AmountBruttoHUF <> 0 Then
If _RegistryHeader.NettoAmountRemaining <> 0 Then
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", True)
End If
End If
End If
End If
'// Mikor NE látszódjon a törlés gomb
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", False)
If _RegistryHeader.CurrentWorkflowSystemSteps.StepFinancialType = eStepFinancialType.eCheckVATPlusControlling Then
If _RegistryHeader.IsEditable = True Then
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", True)
End If
End If
End Sub
Private Sub aViewRegistryNoTask_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aViewRegistryNoTask.Execute
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
Dim _CS As New CollectionSource(_onew, GetType(RegistryHeader))
_CS.BeginUpdateCriteria()
_CS.Criteria.Clear()
_CS.Criteria("First") = CriteriaOperator.Parse("1=2")
_CS.EndUpdateCriteria()
Dim _RegistryHeader_Collection As New XPCollection(Of RegistryHeader)(_onew.Session, CriteriaOperator.Parse("RegistryType.RegistryMainType='eAccount' and RegistryAcceptState='eAccept' and CurrentWorkflowSystemSteps.IsLastStep=False"))
Dim _RegistryHeader As RegistryHeader
Dim _RegistryTasks As RegistryTasks
For Each _RegistryHeader In _RegistryHeader_Collection
_RegistryTasks = _onew.FindObject(Of RegistryTasks)(CriteriaOperator.Parse("RegistryHeader=? and Status in ('InProgress','NotStarted','WaitingForSomeoneElse')", _RegistryHeader))
If _RegistryTasks Is Nothing Then
_CS.Add(_RegistryHeader)
End If
Next
e.ShowViewParameters.CreatedView = Application.CreateListView("RegistryHeader_ListView_NoTask", _CS, True)
End Sub
End Class