diff --git a/GUIs.Common/frmDialog.Designer.vb b/GUIs.Common/frmDialog.Designer.vb
index 96a2263f..6088a4ee 100644
--- a/GUIs.Common/frmDialog.Designer.vb
+++ b/GUIs.Common/frmDialog.Designer.vb
@@ -161,6 +161,7 @@ Partial Class frmDialog
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Dialog1"
+ Me.TopMost = True
CType(Me.pnlContent, System.ComponentModel.ISupportInitialize).EndInit()
Me.pnlContent.ResumeLayout(False)
CType(Me.SvgImageBox1, System.ComponentModel.ISupportInitialize).EndInit()
diff --git a/GUIs.ZooFlow/frmTreeViewNavi.Designer.vb b/GUIs.ZooFlow/frmTreeViewNavi.Designer.vb
index 8896298b..38bc5e42 100644
--- a/GUIs.ZooFlow/frmTreeViewNavi.Designer.vb
+++ b/GUIs.ZooFlow/frmTreeViewNavi.Designer.vb
@@ -26,12 +26,12 @@ Partial Class frmTreeViewNavi
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmTreeViewNavi))
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.BarCheckItemAdminFolderRights = New DevExpress.XtraBars.BarCheckItem()
- Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
- Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
+ Me.BarButtonItemAddRelation = New DevExpress.XtraBars.BarButtonItem()
+ Me.BarButtonItemRelationDel = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
- Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
+ Me.RibbonPageGroupRelationsChange = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.TreeList2 = New DevExpress.XtraTreeList.TreeList()
@@ -44,6 +44,9 @@ Partial Class frmTreeViewNavi
Me.GridViewFreeUser = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.XtraTabPage2 = New DevExpress.XtraTab.XtraTabPage()
Me.ImageCollection1 = New DevExpress.Utils.ImageCollection(Me.components)
+ Me.GridControlFreeGroups = New DevExpress.XtraGrid.GridControl()
+ Me.GridViewFreeGroups = New DevExpress.XtraGrid.Views.Grid.GridView()
+ Me.SvgImageCollection1 = New DevExpress.Utils.SvgImageCollection(Me.components)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TreeList2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -59,14 +62,18 @@ Partial Class frmTreeViewNavi
Me.XtraTabPage1.SuspendLayout()
CType(Me.GridControlFreeUser, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewFreeUser, System.ComponentModel.ISupportInitialize).BeginInit()
+ Me.XtraTabPage2.SuspendLayout()
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.GridControlFreeGroups, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.GridViewFreeGroups, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'RibbonControl1
'
Me.RibbonControl1.EmptyAreaImageOptions.ImagePadding = New System.Windows.Forms.Padding(45, 48, 45, 48)
Me.RibbonControl1.ExpandCollapseItem.Id = 0
- Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarCheckItemAdminFolderRights, Me.BarButtonItem1, Me.BarButtonItem2})
+ Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarCheckItemAdminFolderRights, Me.BarButtonItemAddRelation, Me.BarButtonItemRelationDel})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.RibbonControl1.MaxItemId = 4
@@ -74,7 +81,7 @@ Partial Class frmTreeViewNavi
Me.RibbonControl1.OptionsMenuMinWidth = 495
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
- Me.RibbonControl1.Size = New System.Drawing.Size(949, 160)
+ Me.RibbonControl1.Size = New System.Drawing.Size(1116, 160)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
'
'BarCheckItemAdminFolderRights
@@ -84,23 +91,23 @@ Partial Class frmTreeViewNavi
Me.BarCheckItemAdminFolderRights.ImageOptions.SvgImage = CType(resources.GetObject("BarCheckItemAdminFolderRights.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarCheckItemAdminFolderRights.Name = "BarCheckItemAdminFolderRights"
'
- 'BarButtonItem1
+ 'BarButtonItemAddRelation
'
- Me.BarButtonItem1.Caption = "Hinzufügen"
- Me.BarButtonItem1.Id = 2
- Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
- Me.BarButtonItem1.Name = "BarButtonItem1"
+ Me.BarButtonItemAddRelation.Caption = "Hinzufügen"
+ Me.BarButtonItemAddRelation.Id = 2
+ Me.BarButtonItemAddRelation.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
+ Me.BarButtonItemAddRelation.Name = "BarButtonItemAddRelation"
'
- 'BarButtonItem2
+ 'BarButtonItemRelationDel
'
- Me.BarButtonItem2.Caption = "Entfernen"
- Me.BarButtonItem2.Id = 3
- Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
- Me.BarButtonItem2.Name = "BarButtonItem2"
+ Me.BarButtonItemRelationDel.Caption = "Entfernen"
+ Me.BarButtonItemRelationDel.Id = 3
+ Me.BarButtonItemRelationDel.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
+ Me.BarButtonItemRelationDel.Name = "BarButtonItemRelationDel"
'
'RibbonPage1
'
- Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3})
+ Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroupRelationsChange})
Me.RibbonPage1.Name = "RibbonPage1"
Me.RibbonPage1.Text = "Start"
'
@@ -116,13 +123,14 @@ Partial Class frmTreeViewNavi
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
Me.RibbonPageGroup2.Text = "Einstellungen"
'
- 'RibbonPageGroup3
+ 'RibbonPageGroupRelationsChange
'
- Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
- Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1)
- Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem2)
- Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
- Me.RibbonPageGroup3.Text = "Relationen anpassen"
+ Me.RibbonPageGroupRelationsChange.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
+ Me.RibbonPageGroupRelationsChange.ItemLinks.Add(Me.BarButtonItemAddRelation)
+ Me.RibbonPageGroupRelationsChange.ItemLinks.Add(Me.BarButtonItemRelationDel)
+ Me.RibbonPageGroupRelationsChange.Name = "RibbonPageGroupRelationsChange"
+ Me.RibbonPageGroupRelationsChange.Text = "Relationen anpassen"
+ Me.RibbonPageGroupRelationsChange.Visible = False
'
'RibbonStatusBar1
'
@@ -130,7 +138,7 @@ Partial Class frmTreeViewNavi
Me.RibbonStatusBar1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
- Me.RibbonStatusBar1.Size = New System.Drawing.Size(949, 22)
+ Me.RibbonStatusBar1.Size = New System.Drawing.Size(1116, 22)
'
'RibbonPage2
'
@@ -154,6 +162,7 @@ Partial Class frmTreeViewNavi
Me.TreeList2.OptionsView.ShowTreeLines = DevExpress.Utils.DefaultBoolean.[False]
Me.TreeList2.OptionsView.ShowVertLines = False
Me.TreeList2.Size = New System.Drawing.Size(412, 432)
+ Me.TreeList2.StateImageList = Me.SvgImageCollection1
Me.TreeList2.TabIndex = 5
'
'SplitContainerControl1
@@ -173,18 +182,18 @@ Partial Class frmTreeViewNavi
Me.SplitContainerControl1.Panel2.Controls.Add(Me.GridControlRelations)
Me.SplitContainerControl1.Panel2.Controls.Add(Me.XtraTabControlRelationScope)
Me.SplitContainerControl1.Panel2.Text = "Panel2"
- Me.SplitContainerControl1.Size = New System.Drawing.Size(949, 432)
+ Me.SplitContainerControl1.Size = New System.Drawing.Size(1116, 432)
Me.SplitContainerControl1.SplitterPosition = 412
Me.SplitContainerControl1.TabIndex = 8
'
'GridControlRelations
'
Me.GridControlRelations.Dock = System.Windows.Forms.DockStyle.Right
- Me.GridControlRelations.Location = New System.Drawing.Point(344, 0)
+ Me.GridControlRelations.Location = New System.Drawing.Point(398, 0)
Me.GridControlRelations.MainView = Me.GridViewRelations
Me.GridControlRelations.MenuManager = Me.RibbonControl1
Me.GridControlRelations.Name = "GridControlRelations"
- Me.GridControlRelations.Size = New System.Drawing.Size(183, 432)
+ Me.GridControlRelations.Size = New System.Drawing.Size(296, 432)
Me.GridControlRelations.TabIndex = 2
Me.GridControlRelations.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewRelations})
'
@@ -196,15 +205,18 @@ Partial Class frmTreeViewNavi
Me.GridViewRelations.OptionsSelection.EnableAppearanceFocusedCell = False
Me.GridViewRelations.OptionsView.ShowAutoFilterRow = True
Me.GridViewRelations.OptionsView.ShowGroupPanel = False
- Me.GridViewRelations.ViewCaption = "Nicht zugeordnete User"
+ Me.GridViewRelations.OptionsView.ShowViewCaption = True
+ Me.GridViewRelations.ViewCaption = "..."
'
'XtraTabControlRelationScope
'
- Me.XtraTabControlRelationScope.Dock = System.Windows.Forms.DockStyle.Left
- Me.XtraTabControlRelationScope.Location = New System.Drawing.Point(0, 0)
+ Me.XtraTabControlRelationScope.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
+ Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.XtraTabControlRelationScope.Location = New System.Drawing.Point(68, 0)
Me.XtraTabControlRelationScope.Name = "XtraTabControlRelationScope"
Me.XtraTabControlRelationScope.SelectedTabPage = Me.XtraTabPage1
- Me.XtraTabControlRelationScope.Size = New System.Drawing.Size(211, 432)
+ Me.XtraTabControlRelationScope.Size = New System.Drawing.Size(324, 432)
Me.XtraTabControlRelationScope.TabIndex = 1
Me.XtraTabControlRelationScope.TabPages.AddRange(New DevExpress.XtraTab.XtraTabPage() {Me.XtraTabPage1, Me.XtraTabPage2})
'
@@ -212,7 +224,7 @@ Partial Class frmTreeViewNavi
'
Me.XtraTabPage1.Controls.Add(Me.GridControlFreeUser)
Me.XtraTabPage1.Name = "XtraTabPage1"
- Me.XtraTabPage1.Size = New System.Drawing.Size(209, 409)
+ Me.XtraTabPage1.Size = New System.Drawing.Size(322, 409)
Me.XtraTabPage1.Text = "Freie User"
'
'GridControlFreeUser
@@ -222,7 +234,7 @@ Partial Class frmTreeViewNavi
Me.GridControlFreeUser.MainView = Me.GridViewFreeUser
Me.GridControlFreeUser.MenuManager = Me.RibbonControl1
Me.GridControlFreeUser.Name = "GridControlFreeUser"
- Me.GridControlFreeUser.Size = New System.Drawing.Size(209, 409)
+ Me.GridControlFreeUser.Size = New System.Drawing.Size(322, 409)
Me.GridControlFreeUser.TabIndex = 0
Me.GridControlFreeUser.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewFreeUser})
'
@@ -238,8 +250,9 @@ Partial Class frmTreeViewNavi
'
'XtraTabPage2
'
+ Me.XtraTabPage2.Controls.Add(Me.GridControlFreeGroups)
Me.XtraTabPage2.Name = "XtraTabPage2"
- Me.XtraTabPage2.Size = New System.Drawing.Size(209, 409)
+ Me.XtraTabPage2.Size = New System.Drawing.Size(240, 409)
Me.XtraTabPage2.Text = "Freie Gruppen"
'
'ImageCollection1
@@ -248,12 +261,38 @@ Partial Class frmTreeViewNavi
Me.ImageCollection1.Images.SetKeyName(0, "team_32x32.png")
Me.ImageCollection1.Images.SetKeyName(1, "customer_32x32.png")
'
+ 'GridControlFreeGroups
+ '
+ Me.GridControlFreeGroups.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.GridControlFreeGroups.Location = New System.Drawing.Point(0, 0)
+ Me.GridControlFreeGroups.MainView = Me.GridViewFreeGroups
+ Me.GridControlFreeGroups.MenuManager = Me.RibbonControl1
+ Me.GridControlFreeGroups.Name = "GridControlFreeGroups"
+ Me.GridControlFreeGroups.Size = New System.Drawing.Size(240, 409)
+ Me.GridControlFreeGroups.TabIndex = 1
+ Me.GridControlFreeGroups.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewFreeGroups})
+ '
+ 'GridViewFreeGroups
+ '
+ Me.GridViewFreeGroups.GridControl = Me.GridControlFreeGroups
+ Me.GridViewFreeGroups.Name = "GridViewFreeGroups"
+ Me.GridViewFreeGroups.OptionsBehavior.Editable = False
+ Me.GridViewFreeGroups.OptionsSelection.EnableAppearanceFocusedCell = False
+ Me.GridViewFreeGroups.OptionsView.ShowAutoFilterRow = True
+ Me.GridViewFreeGroups.OptionsView.ShowGroupPanel = False
+ Me.GridViewFreeGroups.ViewCaption = "Nicht zugeordnete User"
+ '
+ 'SvgImageCollection1
+ '
+ Me.SvgImageCollection1.Add("open", "image://svgimages/actions/open.svg")
+ Me.SvgImageCollection1.Add("opened", "image://svgimages/actions/open2.svg")
+ '
'frmTreeViewNavi
'
Me.Appearance.Options.UseFont = True
Me.AutoScaleDimensions = New System.Drawing.SizeF(9.0!, 21.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
- Me.ClientSize = New System.Drawing.Size(949, 614)
+ Me.ClientSize = New System.Drawing.Size(1116, 614)
Me.Controls.Add(Me.SplitContainerControl1)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
@@ -278,7 +317,11 @@ Partial Class frmTreeViewNavi
Me.XtraTabPage1.ResumeLayout(False)
CType(Me.GridControlFreeUser, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridViewFreeUser, System.ComponentModel.ISupportInitialize).EndInit()
+ Me.XtraTabPage2.ResumeLayout(False)
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.GridControlFreeGroups, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.GridViewFreeGroups, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -295,13 +338,16 @@ Partial Class frmTreeViewNavi
Friend WithEvents SplitContainerControl1 As DevExpress.XtraEditors.SplitContainerControl
Friend WithEvents GridControlFreeUser As DevExpress.XtraGrid.GridControl
Friend WithEvents GridViewFreeUser As DevExpress.XtraGrid.Views.Grid.GridView
- Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
- Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
- Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents BarButtonItemAddRelation As DevExpress.XtraBars.BarButtonItem
+ Friend WithEvents BarButtonItemRelationDel As DevExpress.XtraBars.BarButtonItem
+ Friend WithEvents RibbonPageGroupRelationsChange As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents GridControlRelations As DevExpress.XtraGrid.GridControl
Friend WithEvents GridViewRelations As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents XtraTabControlRelationScope As DevExpress.XtraTab.XtraTabControl
Friend WithEvents XtraTabPage1 As DevExpress.XtraTab.XtraTabPage
Friend WithEvents XtraTabPage2 As DevExpress.XtraTab.XtraTabPage
Friend WithEvents ImageCollection1 As DevExpress.Utils.ImageCollection
+ Friend WithEvents GridControlFreeGroups As DevExpress.XtraGrid.GridControl
+ Friend WithEvents GridViewFreeGroups As DevExpress.XtraGrid.Views.Grid.GridView
+ Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection
End Class
diff --git a/GUIs.ZooFlow/frmTreeViewNavi.resx b/GUIs.ZooFlow/frmTreeViewNavi.resx
index 071f6354..628ed0d9 100644
--- a/GUIs.ZooFlow/frmTreeViewNavi.resx
+++ b/GUIs.ZooFlow/frmTreeViewNavi.resx
@@ -220,6 +220,9 @@
NSwxMC43LDEyLDkuMyw5Ljl6IiBjbGFzcz0iQmxhY2siIC8+DQo8L3N2Zz4L
+
+ 164, 17
+
17, 17
diff --git a/GUIs.ZooFlow/frmTreeViewNavi.vb b/GUIs.ZooFlow/frmTreeViewNavi.vb
index 4f637b43..512a92cf 100644
--- a/GUIs.ZooFlow/frmTreeViewNavi.vb
+++ b/GUIs.ZooFlow/frmTreeViewNavi.vb
@@ -1,12 +1,15 @@
Imports DevExpress.XtraBars
Imports DevExpress.XtraEditors.Controls
Imports DevExpress.XtraEditors.Repository
+Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
+Imports DevExpress.XtraTreeList
Imports DigitalData.GUIs.ZooFlow.ClassConstants
Public Class frmTreeViewNavi
Dim RightAddActive As Boolean = False
Dim FormShown As Boolean = False
Dim SelectedNodeID As Integer = 0
+ Dim selectedNodeCapt As String
Private Sub frmTreeViewNavi_Load(sender As Object, e As EventArgs) Handles Me.Load
Try
Dim oSQL = "select SN_ID ChildID,SN_PARENT_ID ParentID,TERM_VALUE as CAPTION from VWIDB_STRUCTURE_NODES_STRUCTURE"
@@ -37,41 +40,62 @@ Public Class frmTreeViewNavi
End Sub
Private Sub TreeList2_SelectionChanged(sender As Object, e As EventArgs) Handles TreeList2.SelectionChanged
- Try
- Dim KeyValue As Object
- KeyValue = TreeList2.FocusedNode(TreeList2.KeyFieldName)
- Console.WriteLine($"keyfield: {KeyValue.ToString}")
- If IsNumeric(KeyValue) And RightAddActive Then
- SelectedNodeID = KeyValue
- Refresh_Relations()
- If XtraTabControlRelationScope.SelectedTabPageIndex = 0 Then
- Refresh_FreeUsers()
- End If
- End If
- Catch ex As Exception
-
- End Try
End Sub
+ Sub Refresh_all()
+ Refresh_Relations()
+ If XtraTabControlRelationScope.SelectedTabPageIndex = 0 Then
+ Refresh_FreeUsers()
+ GridViewFreeUser.FocusedRowHandle = GridControl.InvalidRowHandle
+ Else
+ Refresh_FreeGroups()
+ GridViewFreeGroups.FocusedRowHandle = GridControl.InvalidRowHandle
+ End If
+ GridViewRelations.FocusedRowHandle = GridControl.InvalidRowHandle
+
+ End Sub
Private Sub BarCheckItemAdminFolderRights_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarCheckItemAdminFolderRights.CheckedChanged
Dim oitm As BarCheckItem = e.Item
RightAddActive = oitm.Checked
SplitContainerControl1.Collapsed = Not RightAddActive
-
+ If RightAddActive = True Then
+ RibbonPageGroupRelationsChange.Visible = True
+ If SelectedNodeID > 0 Then
+ Refresh_all()
+ End If
+ Else
+ RibbonPageGroupRelationsChange.Visible = False
+ End If
End Sub
Private Sub Refresh_FreeUsers()
Try
Dim oSQL = $"SELECT GUID as USR_ID, EMAIL FROM DD_ECM.dbo.TBDD_USER USR WHERE GUID NOT IN (
- SELECT ScopeID FROM VWIDB_SN_RELATIONS WHERE SN_ID = {SelectedNodeID}) AND USR.ACTIVE = 1 AND LEN(EMAIL) > 0"
+ SELECT ScopeID FROM VWIDB_SN_RELATIONS WHERE Scope = 'USR' AND SN_ID = {SelectedNodeID}) AND USR.ACTIVE = 1 AND LEN(EMAIL) > 0"
Dim oDT As DataTable = My.DatabaseIDB.GetDatatable(oSQL)
If Not IsNothing(oDT) Then
GridViewFreeUser.Columns.Clear()
GridControlFreeUser.DataSource = oDT
GridViewFreeUser.Columns("USR_ID").Visible = False
End If
+
+ Catch ex As Exception
+
+ End Try
+ End Sub
+ Private Sub Refresh_FreeGroups()
+ Try
+ Dim oSQL = $"SELECT GUID as GroupID, NAME FROM DD_ECM.dbo.TBDD_GROUPS GRP WHERE GUID NOT IN (
+ SELECT ScopeID FROM VWIDB_SN_RELATIONS WHERE Scope = 'GRP' AND SN_ID = {SelectedNodeID}) AND GRP.ACTIVE = 1 "
+ Dim oDT As DataTable = My.DatabaseIDB.GetDatatable(oSQL)
+ If Not IsNothing(oDT) Then
+ GridViewFreeGroups.Columns.Clear()
+ GridControlFreeGroups.DataSource = oDT
+ GridViewFreeGroups.Columns("GroupID").Visible = False
+ End If
+
Catch ex As Exception
End Try
@@ -93,12 +117,14 @@ Public Class frmTreeViewNavi
GridViewRelations.Columns("REL_ID").Visible = False
GridViewRelations.Columns("SN_ID").Visible = False
GridViewRelations.Columns("Scope").Visible = False
+ GridViewRelations.Columns("ScopeID").Visible = False
GridViewRelations.Columns("NODE_CAPTION").Visible = False
GridViewRelations.Columns.Item("ICON").MaxWidth = 25
GridViewRelations.Columns.Item("ICON").MinWidth = 25
GridViewRelations.Columns.Item("ICON").AppearanceCell.BackColor = Color.White
GridViewRelations.Columns.Item("ICON").Fixed = FixedStyle.Left
+ GridViewRelations.ViewCaption = $"Relationen für [{selectedNodeCapt}]"
If oDT.Rows.Count > 0 Then
Dim oRowIndex As Integer = 0
For Each oRow As DataRow In oDT.Rows
@@ -120,6 +146,7 @@ Public Class frmTreeViewNavi
Next
End If
End If
+
Catch ex As Exception
End Try
@@ -130,41 +157,88 @@ Public Class frmTreeViewNavi
SplitContainerControl1.Collapsed = True
End Sub
- Private Sub BarButtonItem1_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem1.ItemClick
+ Private Sub BarButtonItem1_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItemAddRelation.ItemClick
+ Dim oInsert As String
+ oInsert = $"INSERT INTO [dbo].[TBIDB_STRUCTURE_NODES_RELATIONS]
+ ([SN_ID]"
If XtraTabControlRelationScope.SelectedTabPageIndex = 0 Then
- Dim oInsert = $"INSERT INTO [dbo].[TBIDB_STRUCTURE_NODES_RELATIONS]
- ([SN_ID]
- ,[USR_ID]
- ,[ADDED_WHO]) VALUES ({SelectedNodeID}, {BarButtonItem2.Tag},'{My.Application.User.UserName}')"
- If My.DatabaseIDB.ExecuteNonQuery(oInsert) = True Then
- Refresh_Relations()
- Refresh_FreeUsers()
+ oInsert &= ",[USR_ID]"
- End If
+ Else
+ oInsert &= ",[GRP_ID]"
+ End If
+ oInsert &= $",[ADDED_WHO]) VALUES ({SelectedNodeID}, {BarButtonItemRelationDel.Tag},'{My.Application.User.UserName}')"
+ If My.DatabaseIDB.ExecuteNonQuery(oInsert) = True Then
+ Refresh_all()
End If
End Sub
Private Sub GridViewFreeUser_FocusedRowChanged(sender As Object, e As DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs) Handles GridViewFreeUser.FocusedRowChanged
Dim oFocusedUSR = GridViewFreeUser.GetFocusedRowCellValue(GridViewFreeUser.Columns("USR_ID"))
If Not IsNothing(oFocusedUSR) Then
- RibbonPageGroup3.Enabled = True
- BarButtonItem1.Enabled = True
- BarButtonItem2.Enabled = False
- BarButtonItem2.Tag = oFocusedUSR
+ RibbonPageGroupRelationsChange.Enabled = True
+ BarButtonItemAddRelation.Enabled = True
+ BarButtonItemRelationDel.Enabled = False
+ BarButtonItemRelationDel.Tag = oFocusedUSR
+ GridViewRelations.FocusedRowHandle = GridControl.InvalidRowHandle
Else
- RibbonPageGroup3.Enabled = False
+ RibbonPageGroupRelationsChange.Enabled = False
End If
End Sub
Private Sub GridViewRelations_FocusedRowChanged(sender As Object, e As DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs) Handles GridViewRelations.FocusedRowChanged
Dim oFocusedRELID = GridViewRelations.GetFocusedRowCellValue(GridViewRelations.Columns("REL_ID"))
If Not IsNothing(oFocusedRELID) Then
- RibbonPageGroup3.Enabled = True
- BarButtonItem1.Enabled = False
- BarButtonItem2.Enabled = True
- BarButtonItem2.Tag = oFocusedRELID
+ RibbonPageGroupRelationsChange.Enabled = True
+ BarButtonItemAddRelation.Enabled = False
+ BarButtonItemRelationDel.Enabled = True
+ BarButtonItemRelationDel.Tag = oFocusedRELID
+
Else
- RibbonPageGroup3.Enabled = False
+ RibbonPageGroupRelationsChange.Enabled = False
+ End If
+ End Sub
+
+ Private Sub BarButtonItem2_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItemRelationDel.ItemClick
+ Dim oDel = $"DELETE FROM TBIDB_STRUCTURE_NODES_RELATIONS WHERE GUID = {BarButtonItemRelationDel.Tag}"
+ If My.DatabaseIDB.ExecuteNonQuery(oDel) = True Then
+ Refresh_all()
+ End If
+ End Sub
+
+ Private Sub TreeList2_FocusedNodeChanged(sender As Object, e As FocusedNodeChangedEventArgs) Handles TreeList2.FocusedNodeChanged
+ Try
+ Dim KeyValue As Object
+ KeyValue = TreeList2.FocusedNode(TreeList2.KeyFieldName)
+ If IsNothing(KeyValue) Then
+ Exit Sub
+ End If
+ Dim oNodeCaption = e.Node.GetDisplayText("CAPTION")
+
+ selectedNodeCapt = oNodeCaption
+ Console.WriteLine($"keyfield: {KeyValue.ToString}")
+ If IsNumeric(KeyValue) Then
+ SelectedNodeID = KeyValue
+ Else
+ Exit Sub
+ End If
+ If RightAddActive Then
+ Refresh_all()
+ End If
+ Catch ex As Exception
+
+ End Try
+ End Sub
+
+ Private Sub GridViewFreeGroups_FocusedRowChanged(sender As Object, e As DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs) Handles GridViewFreeGroups.FocusedRowChanged
+ Dim oFocusedGRP = GridViewFreeGroups.GetFocusedRowCellValue(GridViewFreeGroups.Columns("GroupID"))
+ If Not IsNothing(oFocusedGRP) Then
+ RibbonPageGroupRelationsChange.Enabled = True
+ BarButtonItemAddRelation.Enabled = True
+ BarButtonItemRelationDel.Enabled = False
+ BarButtonItemRelationDel.Tag = oFocusedGRP
+ Else
+ RibbonPageGroupRelationsChange.Enabled = False
End If
End Sub
End Class
\ No newline at end of file
diff --git a/Service.EDMIService/IDB/Helpers.vb b/Service.EDMIService/IDB/Helpers.vb
index 9e225ed1..fc384684 100644
--- a/Service.EDMIService/IDB/Helpers.vb
+++ b/Service.EDMIService/IDB/Helpers.vb
@@ -189,9 +189,13 @@ Namespace IDB
Next
End Sub
- Public Function NewDynamicFolderForObject(pObjectId As Long, pFolder As String, pWho As String, pLangID As Integer) As Boolean
+ Public Function NewDynamicFolderForObject(pObjectId As Long, pFolder As String, pWho As String, pLangID As Integer, pLangCode As String) As Boolean
Logger.Info("Setting Dynamic Folder [{0}]", pFolder)
Dim oSql = $"
+ DECLARE @NEW_OBJ_MD_ID BIGINT
+ EXEC PRIDB_NEW_OBJ_DATA {pObjectId}, 'VIRTUAL_FOLDER', '{pWho}', 'pFolder', '{pLangCode}', 0, @OMD_ID = @NEW_OBJ_MD_ID OUTPUT"
+ Database.ExecuteNonQuery(oSql)
+ oSql = $"
DECLARE @LAST_SN_ID BIGINT
EXEC PRIDB_NEW_DYNAMIC_FOLDER '{pFolder}','{pWho}',1,@LAST_SN_ID OUTPUT
SELECT @LAST_SN_ID"
@@ -199,7 +203,7 @@ Namespace IDB
oNodeID = Database.GetScalarValue(oSql)
If IsNothing(oNodeID) = False Then
oSql = $"DECLARE @LAST_SN_ID BIGINT
- PRIDB_NEW_STUCTURE_NODE_FOR_OBJECT {pObjectId}',{oNodeID},'{pWho}',{pLangID}, @LAST_SN_ID OUTPUT"
+ EXEC PRIDB_NEW_STUCTURE_NODE_FOR_OBJECT {pObjectId},{oNodeID},'{pWho}',{pLangID}, @LAST_SN_ID OUTPUT"
If Database.ExecuteNonQuery(oSql) = False Then
Logger.Warn("Error while setting Dynamic Folder.")
Return False
diff --git a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb
index 32766d36..2f4dfae9 100644
--- a/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb
+++ b/Service.EDMIService/Methods/GlobalIndexer/ImportFile/ImportFileMethod.vb
@@ -110,7 +110,11 @@ Namespace Methods.GlobalIndexer.ImportFile
Dim oDynamicFilePath = GetVirtualPath(
pData.File.FileInfoRaw, oProfile.DynamicPath, User, oUserAttributes, oAutoAttributes)
- Helpers.NewDynamicFolderForObject(oResponse.ObjectId, oProfile.DynamicPath, User.UserName, User.LanguageId)
+ If oProfile.DynamicPath <> String.Empty Then
+ Logger.Info("Generating DynamicPath for ObjectId [{0}]", oResponse.ObjectId)
+ Helpers.NewDynamicFolderForObject(oResponse.ObjectId, oProfile.DynamicPath, User.UserName, User.LanguageId, User.Language)
+ End If
+
Logger.Info("Collecting Attributes for ObjectId [{0}]", oResponse.ObjectId)
diff --git a/Service.EDMIService/My Project/AssemblyInfo.vb b/Service.EDMIService/My Project/AssemblyInfo.vb
index 128ecdda..557abdef 100644
--- a/Service.EDMIService/My Project/AssemblyInfo.vb
+++ b/Service.EDMIService/My Project/AssemblyInfo.vb
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
'
-
+