From b263d7d70e0d4e9577aa4a45fcc8c72101499fc9 Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Thu, 9 Jun 2022 16:42:40 +0200 Subject: [PATCH] MS --- GUIs.Common/frmDialog.Designer.vb | 1 + GUIs.ZooFlow/frmTreeViewNavi.Designer.vb | 120 ++++++++++----- GUIs.ZooFlow/frmTreeViewNavi.resx | 3 + GUIs.ZooFlow/frmTreeViewNavi.vb | 144 +++++++++++++----- Service.EDMIService/IDB/Helpers.vb | 8 +- .../ImportFile/ImportFileMethod.vb | 6 +- .../My Project/AssemblyInfo.vb | 2 +- 7 files changed, 208 insertions(+), 76 deletions(-) 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 + 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 - RibbonPageGroup3.Enabled = False + 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: ' - +