180 lines
9.8 KiB
VB.net
180 lines
9.8 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.SystemModule
|
|
Imports DevExpress.ExpressApp.CloneObject
|
|
Imports DevExpress.Xpo
|
|
Imports DevExpress.Data.Filtering
|
|
|
|
Public Class Subcontractor_VC
|
|
Inherits DevExpress.ExpressApp.ViewController
|
|
|
|
Public Sub New()
|
|
MyBase.New()
|
|
InitializeComponent()
|
|
RegisterActions(components)
|
|
End Sub
|
|
|
|
Protected Overrides Sub OnActivated()
|
|
MyBase.OnActivated()
|
|
|
|
Frame.GetController(Of Subcontractor_VC).aSelectCustomersSubcontractor.Active.SetItemValue("", False)
|
|
|
|
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
|
|
|
|
If View.Id = "Subcontractor_ListView" Then
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
|
|
End If
|
|
If View.Id = "Subcontractor_SubcontractorCustomers_ListView" Then
|
|
Frame.GetController(Of NewObjectViewController)().Active.SetItemValue("", False)
|
|
Frame.GetController(Of LinkUnlinkController)().Active.SetItemValue("", False)
|
|
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of AuditTrailVC).aGetAuditTrail.Active.SetItemValue("", False)
|
|
|
|
Frame.GetController(Of Subcontractor_VC).aSelectCustomersSubcontractor.Active.SetItemValue("", True)
|
|
End If
|
|
If View.Id = "Subcontractor_SubcontractorWorksheetType_ListView" Then
|
|
Frame.GetController(Of LinkUnlinkController)().Active.SetItemValue("", False)
|
|
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of AuditTrailVC).aGetAuditTrail.Active.SetItemValue("", False)
|
|
End If
|
|
If View.Id = "PCIGroup_ListView_Subcontractor" Then
|
|
|
|
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of LinkUnlinkController)().Active.SetItemValue("", False)
|
|
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
|
|
|
|
Dim _Contacts As Contacts = _ocur.FindObject(Of Contacts)(CriteriaOperator.Parse("User.Oid = ?", SecuritySystem.CurrentUserId))
|
|
|
|
If _Contacts IsNot Nothing Then
|
|
If _Contacts.Customers IsNot Nothing Then
|
|
TryCast(View, ListView).CollectionSource.Criteria("BySubcontractorPCI") = CriteriaOperator.Parse("Customers.Oid = ?", _Contacts.Customers.Oid)
|
|
Else
|
|
TryCast(View, ListView).CollectionSource.Criteria("BySubcontractorPCI") = CriteriaOperator.Parse("1=2")
|
|
End If
|
|
Else
|
|
TryCast(View, ListView).CollectionSource.Criteria("BySubcontractorPCI") = CriteriaOperator.Parse("1=2")
|
|
End If
|
|
End If
|
|
'------------------DeatailViews----------------------
|
|
If View.Id = "Subcontractor_DetailView" Then
|
|
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", False)
|
|
End If
|
|
End Sub
|
|
Protected Overrides Sub OnDeactivated()
|
|
MyBase.OnDeactivated()
|
|
If View.Id = "Subcontractor_ListView" Then
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", True)
|
|
End If
|
|
If View.Id = "Subcontractor_SubcontractorCustomers_ListView" Then
|
|
Frame.GetController(Of NewObjectViewController)().Active.SetItemValue("", True)
|
|
Frame.GetController(Of LinkUnlinkController)().Active.SetItemValue("", True)
|
|
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of AuditTrailVC).aGetAuditTrail.Active.SetItemValue("", True)
|
|
End If
|
|
If View.Id = "Subcontractor_SubcontractorWorksheetType_ListView" Then
|
|
Frame.GetController(Of LinkUnlinkController)().Active.SetItemValue("", True)
|
|
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of AuditTrailVC).aGetAuditTrail.Active.SetItemValue("", True)
|
|
End If
|
|
If View.Id = "PCIGroup_ListView_Subcontractor" Then
|
|
|
|
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of DeleteObjectsViewController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of LinkUnlinkController)().Active.SetItemValue("", True)
|
|
Frame.GetController(Of ListViewProcessCurrentObjectController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", True)
|
|
End If
|
|
'------------------DeatailViews----------------------
|
|
If View.Id = "Subcontractor_DetailView" Then
|
|
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", True)
|
|
Frame.GetController(Of CloneObjectViewController).Active.SetItemValue("", True)
|
|
End If
|
|
End Sub
|
|
Private Sub aSelectCustomersSubcontractor_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aSelectCustomersSubcontractor.CustomizePopupWindowParams
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
|
|
|
|
Dim _CS As New CollectionSource(_onew, GetType(Customers))
|
|
|
|
'_CS.BeginUpdateCriteria()
|
|
'_CS.Criteria.Clear()
|
|
'_CS.Criteria("First") = ""
|
|
'_CS.EndUpdateCriteria()
|
|
|
|
e.View = Application.CreateListView("Customers_ListView_Select", _CS, False)
|
|
End Sub
|
|
Private Sub aSelectCustomersSubcontractor_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aSelectCustomersSubcontractor.Execute
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _Customers As Customers
|
|
Dim _Subcontractor As Subcontractor = TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject
|
|
Dim _SubcontractorCustomers As SubcontractorCustomers
|
|
Dim _Exists As Boolean = False
|
|
If _Subcontractor Is Nothing Then Exit Sub
|
|
|
|
If e.PopupWindow.View.SelectedObjects.Count > 0 Then
|
|
|
|
For Each _Customers In e.PopupWindow.View.SelectedObjects
|
|
_Exists = False
|
|
For Each _SubcontractorCustomers In _Subcontractor.SubcontractorCustomers
|
|
If _SubcontractorCustomers.Oid = _Customers.Oid Then
|
|
_Exists = True
|
|
End If
|
|
Next
|
|
If _Exists = False Then
|
|
_SubcontractorCustomers = _ocur.CreateObject(Of SubcontractorCustomers)()
|
|
_SubcontractorCustomers.Customers = _ocur.GetObject(_Customers)
|
|
_SubcontractorCustomers.Subcontractor = _Subcontractor
|
|
End If
|
|
Next
|
|
_ocur.CommitChanges()
|
|
End If
|
|
|
|
Dim nestedFrame As NestedFrame = TryCast(Frame, NestedFrame)
|
|
If nestedFrame IsNot Nothing Then
|
|
Dim parentView As View = nestedFrame.View
|
|
parentView.ObjectSpace.Refresh()
|
|
End If
|
|
End Sub
|
|
Private Sub aCreateSubcontractorUserRoles_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aCreateSubcontractorUserRoles.CustomizePopupWindowParams
|
|
Try
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
Dim _CS As New CollectionSource(_onew, GetType(SubcontractorRoles))
|
|
|
|
e.View = Application.CreateListView("SubcontractorRoles_ListView", _CS, False)
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message, MsgBoxStyle.OkOnly)
|
|
End Try
|
|
End Sub
|
|
Private Sub aCreateSubcontractorUserRoles_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aCreateSubcontractorUserRoles.Execute
|
|
Try
|
|
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
|
|
Dim _SubcontractorRoles As SubcontractorRoles = TryCast(e.PopupWindow.View.SelectedObjects(0), SubcontractorRoles)
|
|
Dim _Subcontractor As Subcontractor = TryCast(TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject, Subcontractor)
|
|
For Each _User As DevExpress.Persistent.BaseImpl.User In View.SelectedObjects
|
|
Dim _SubcontractorUserRoles As SubcontractorUserRoles = _ocur.CreateObject(Of SubcontractorUserRoles)()
|
|
_SubcontractorUserRoles.User = _User
|
|
_SubcontractorUserRoles.SubcontractorRoles = _ocur.GetObjectByKey(Of SubcontractorRoles)(_SubcontractorRoles.Oid)
|
|
_SubcontractorUserRoles.Subcontractor = _ocur.GetObjectByKey(Of Subcontractor)(_Subcontractor.Oid)
|
|
Next
|
|
_ocur.CommitChanges()
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message, MsgBoxStyle.OkOnly)
|
|
End Try
|
|
End Sub
|
|
End Class
|