997 lines
41 KiB
VB.net
997 lines
41 KiB
VB.net
Imports System.Data.SqlClient
|
|
Imports System.Data.SqlTypes
|
|
Imports System.Reflection
|
|
|
|
|
|
Public Class frmUebersichtRE
|
|
|
|
|
|
#Region "Deklarationen"
|
|
Dim Uebersicht As New clsUebersichtre
|
|
Dim KeyValue As Integer = -1
|
|
Dim TargetDBObject As String
|
|
Dim WithEvents evh As _Generic_Event_Handler.Generic_Event_Handler = Globals.Generic_Event_Handler
|
|
Dim Datenklasse As New _DataClass.DataClass
|
|
Dim sec As New Utils.MySecurity
|
|
Dim Change_Keys As Boolean = False
|
|
Dim WHandler As New clsWindowHandling
|
|
Dim WithEvents fneuebeziehung As _AllgMainObjekte.frmSetNeueBeziehung
|
|
Dim allNodes As List(Of TreeNode) = New List(Of TreeNode)()
|
|
Dim OnTreeRefresh As Boolean = False
|
|
Dim mymsg As New Utils.MyMessage
|
|
Dim Active_Node As TreeNode
|
|
|
|
Dim movecopy_sourcekey As Integer
|
|
Dim movecopy_grid As C1.Win.C1TrueDBGrid.C1TrueDBGrid
|
|
Dim instopmode As Boolean = False
|
|
Private ico As Icon
|
|
|
|
Private customCursor As Cursor
|
|
Dim onload As Boolean = False
|
|
Dim xpoint As Integer
|
|
Dim ypoint As Integer
|
|
#End Region
|
|
|
|
#Region "Form"
|
|
|
|
Private Sub frmUebersichtRE_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Private Sub frmUebersichtRE_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
Me.onload = True
|
|
Try
|
|
movecopy_grid = Globals.MoveCopy_Grid
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
Refresh_Tree(Me.KeyValue)
|
|
sec.Set_Form_Security(Me)
|
|
If Me.tsbtnReadonly.Enabled = False Then
|
|
Me.TreeStruktur.AllowDrop = False
|
|
End If
|
|
Me.Cursor = Cursors.WaitCursor
|
|
Refresh_Tree(Me.KeyValue)
|
|
Me.Cursor = Cursors.Default
|
|
Me.WHandler.get_windowsize(1)
|
|
If WHandler.Width > 0 Then Me.Width = WHandler.Width
|
|
If WHandler.height > 0 Then Me.Height = WHandler.height
|
|
Me.WHandler.get_windowsize(11)
|
|
If WHandler.Width > 0 Then Me.SplitContainer1.SplitterDistance = WHandler.Width
|
|
Me.onload = False
|
|
Me.TreeStruktur.FullRowSelect = True
|
|
End Sub
|
|
|
|
Sub New()
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Datenklasse.Mitarbeiternr = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
Datenklasse.ConnectionString = Globals.sConnectionString
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Sub New(Optional ByVal Keyvalue As Integer = -1)
|
|
InitializeComponent()
|
|
Me.KeyValue = Keyvalue
|
|
Datenklasse.Mitarbeiternr = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
Datenklasse.ConnectionString = Globals.sConnectionString
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "Toolbar/Menu"
|
|
Private Sub TSBtnQuit_Click(sender As Object, e As EventArgs) Handles TSBtnQuit.Click
|
|
Me.Close()
|
|
End Sub
|
|
|
|
Private Sub SchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SchliessenToolStripMenuItem.Click
|
|
Me.TSBtnQuit_Click(sender, e)
|
|
End Sub
|
|
|
|
Public Sub TSBtnSuche_Click(sender As Object, e As EventArgs) Handles TSBtnSuche.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Uebersicht.Init_Search()
|
|
Me.onload = True
|
|
Me.TreeStruktur.SelectedNode = Uebersicht.SearchNode(Me.TreeStruktur, Trim(Me.ToolStriptxtSuche.Text))
|
|
Me.onload = False
|
|
End Sub
|
|
|
|
Private Sub TSBtnNext_Click(sender As Object, e As EventArgs) Handles TSBtnNext.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Me.onload = True
|
|
Me.TreeStruktur.SelectedNode = Uebersicht.FindNextNode(Me.TreeStruktur)
|
|
Me.onload = False
|
|
End Sub
|
|
|
|
|
|
Private Sub ToolStriptxtSuche_KeyDown(sender As Object, e As KeyEventArgs) Handles ToolStriptxtSuche.KeyDown
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
If e.KeyCode = Keys.Enter Then
|
|
Me.onload = True
|
|
TSBtnSuche_Click(sender, e)
|
|
Me.onload = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub TSBtnPrevious_Click(sender As Object, e As EventArgs) Handles TSBtnPrevious.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Me.onload = True
|
|
Me.TreeStruktur.SelectedNode = Uebersicht.FindPrevNode(Me.TreeStruktur)
|
|
Me.onload = False
|
|
End Sub
|
|
|
|
Private Sub TSBtnFirst_Click(sender As Object, e As EventArgs) Handles TSBtnFirst.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
AllgMainObjekte1.Save_Data()
|
|
End If
|
|
End If
|
|
Me.onload = True
|
|
Me.TreeStruktur.SelectedNode = Uebersicht.FindFirst(Me.TreeStruktur)
|
|
Me.onload = False
|
|
End Sub
|
|
|
|
Private Sub TSBtnLast_Click(sender As Object, e As EventArgs) Handles TSBtnLast.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Me.onload = True
|
|
Me.TreeStruktur.SelectedNode = Uebersicht.FindLastNode(Me.TreeStruktur)
|
|
Me.onload = False
|
|
End Sub
|
|
|
|
Private Sub TSBtnFilterAufheben_Click(sender As Object, e As EventArgs) Handles TSBtnFilterAufheben.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Me.ToolStriptxtSuche.Text = ""
|
|
Uebersicht.Init_Search()
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "Treehandling"
|
|
|
|
Sub Refresh_Tree(ByVal Keyvalue As Integer, Optional NodeCollection As TreeNodeCollection = Nothing)
|
|
TreeStruktur.Nodes.Clear()
|
|
Uebersicht.Load_Treeview(Me.TreeStruktur)
|
|
If Keyvalue <> -1 Then
|
|
Me.TreeStruktur.SelectedNode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, Keyvalue, Keyvalue)
|
|
Else
|
|
Me.TreeStruktur.SelectedNode = TreeStruktur.Nodes(0)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub TreeStruktur_AfterNodeDrop(sender As Object, e As DevComponents.AdvTree.TreeDragDropEventArgs) Handles TreeStruktur.AfterNodeDrop
|
|
'If e.OldParentNode.TreeControl.Handle = Me.TreeStruktur.Handle Then
|
|
Dim destinationnode As New DevComponents.AdvTree.Node
|
|
destinationnode = e.NewParentNode
|
|
For Each n As DevComponents.AdvTree.Node In e.Nodes
|
|
Dim DBOBjektname = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, destinationnode))
|
|
Dim DBObjekt As New Object
|
|
Datenklasse.CreateNew(DBOBjektname, DBObjekt)
|
|
DBObjekt.get_data(n.Tag)
|
|
DBObjekt.iparentid = New SqlInt32(CType(destinationnode.Tag, Int32))
|
|
DBObjekt.save_data()
|
|
DBObjekt.dispose()
|
|
n.Parent.Nodes.Sort()
|
|
evh.Fire_Icon_Changed(e.OldParentNode.Tag, get_Icon(e.OldParentNode))
|
|
evh.Fire_Node_Moved(n, e.NewParentNode, Me.TreeStruktur.Handle)
|
|
Globals.TempTreeControl = e.OldParentNode.TreeControl
|
|
Globals.TempTreeOldParentNode = e.OldParentNode
|
|
Globals.TempTreeNewParentNode = e.NewParentNode
|
|
Globals.TempTreeCurrentNode = e.Node
|
|
Globals.TempTreeControl1 = Me.TreeStruktur
|
|
|
|
evh.Fire_Node_Droped()
|
|
|
|
Next
|
|
|
|
End Sub
|
|
|
|
Private Sub TreeStruktur_AfterNodeSelect(sender As Object, e As DevComponents.AdvTree.AdvTreeNodeEventArgs) Handles TreeStruktur.AfterNodeSelect
|
|
Try
|
|
TreeStruktur_Click(sender, e)
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub TreeStruktur_BeforeNodeDrop(sender As Object, e As DevComponents.AdvTree.TreeDragDropEventArgs) Handles TreeStruktur.BeforeNodeDrop
|
|
Try
|
|
If e.OldParentNode.TreeControl.Handle <> Me.TreeStruktur.Handle Then
|
|
Dim tn As New DevComponents.AdvTree.Node
|
|
tn = Uebersicht.FindNode(Me.TreeStruktur.Nodes, e.Node.Tag, e.Node.Tag)
|
|
tn.Remove()
|
|
End If
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
Dim DestinationNode As DevComponents.AdvTree.Node
|
|
Dim SourceNode As DevComponents.AdvTree.Node
|
|
SourceNode = e.Node
|
|
DestinationNode = e.NewParentNode
|
|
Try
|
|
If Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, DestinationNode) = Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, SourceNode) And _
|
|
SourceNode.Tag <> DestinationNode.Tag Then
|
|
'TreeNode found allow move effect
|
|
e.Cancel = False
|
|
TreeStruktur.DragDropEnabled = True
|
|
Else
|
|
'No TreeNode found, prevent move
|
|
e.Cancel = True
|
|
TreeStruktur.DragDropEnabled = True
|
|
End If
|
|
Catch ex As Exception
|
|
e.Cancel = True
|
|
TreeStruktur.DragDropEnabled = True
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub TreeStruktur_BeforeNodeSelect(sender As Object, e As DevComponents.AdvTree.AdvTreeNodeCancelEventArgs) Handles TreeStruktur.BeforeNodeSelect
|
|
If MoveCopy <> 0 And instopmode = True Then e.Cancel = True
|
|
End Sub
|
|
|
|
Private Sub TreeStruktur_Click(sender As Object, e As EventArgs) Handles TreeStruktur.Click
|
|
If OnTreeRefresh Then Exit Sub
|
|
|
|
Try
|
|
If Globals.MoveCopy <> 0 And movecopy_sourcekey = Me.TreeStruktur.SelectedNode.Tag Then Exit Sub
|
|
Catch
|
|
End Try
|
|
If Not onload Then
|
|
If Globals.MoveCopy = 1 Then
|
|
Dim a As MsgBoxResult = MsgBox("Beziehungen nach '" + Me.TreeStruktur.SelectedNode.Text + "' verschieben?", vbYesNoCancel + vbQuestion, "Beziehungen")
|
|
Select Case a
|
|
Case MsgBoxResult.Cancel
|
|
Cursor = Cursors.Default
|
|
Globals.MoveCopy = 0
|
|
Case MsgBoxResult.No
|
|
Case MsgBoxResult.Yes
|
|
AllgMainObjekte1.Update_Beziehung(TreeStruktur.SelectedNode.Tag, Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, TreeStruktur.SelectedNode), movecopy_grid, 1)
|
|
Cursor = Cursors.Default
|
|
Globals.MoveCopy = 0
|
|
evh.Fire_Refresh_SelectedNodes()
|
|
'Exit Sub
|
|
End Select
|
|
End If
|
|
If Globals.MoveCopy = 2 Then
|
|
Dim a As MsgBoxResult = MsgBox("Beziehungen nach '" + Me.TreeStruktur.SelectedNode.Text + "' kopieren?", vbYesNoCancel + vbQuestion, "Beziehungen")
|
|
Select Case a
|
|
Case MsgBoxResult.Cancel
|
|
Cursor = Cursors.Default
|
|
Globals.MoveCopy = 0
|
|
Case MsgBoxResult.No
|
|
Case MsgBoxResult.Yes
|
|
AllgMainObjekte1.Update_Beziehung(TreeStruktur.SelectedNode.Tag, Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, TreeStruktur.SelectedNode), movecopy_grid, 2)
|
|
Cursor = Cursors.Default
|
|
Globals.MoveCopy = 0
|
|
evh.Fire_Refresh_SelectedNodes()
|
|
'Exit Sub
|
|
End Select
|
|
End If
|
|
End If
|
|
If TreeStruktur.SelectedNode Is Nothing Then Exit Sub
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(True)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Me.SuspendLayout()
|
|
Me.AllgMainObjekte1.Generic_Event_Handler = Globals.Generic_Event_Handler
|
|
Me.AllgMainObjekte1.Dock = DockStyle.Fill
|
|
Me.AllgMainObjekte1.ConnectionFilename = Globals.ConnectionFileName
|
|
Me.AllgMainObjekte1.ConnectionString = Globals.sConnectionString
|
|
Me.AllgMainObjekte1.TempFilePath = Globals.clsapplication.sTmp_filepath.Value
|
|
Me.AllgMainObjekte1.Mitarbeiternr = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
Me.AllgMainObjekte1.Type = Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode))
|
|
Me.AllgMainObjekte1.KeyValue = Me.TreeStruktur.SelectedNode.Tag
|
|
Me.AllgMainObjekte1.TreeHandle = Me.TreeStruktur.Handle
|
|
Me.ResumeLayout()
|
|
End Sub
|
|
|
|
|
|
Private Sub TreeStruktur_MouseMove(sender As Object, e As MouseEventArgs) Handles TreeStruktur.MouseMove
|
|
'If Globals.MoveCopy = 0 Then
|
|
' Cursor = Cursors.Default
|
|
' Exit Sub
|
|
'End If
|
|
'Dim DestinationNode As New DevComponents.AdvTree.Node
|
|
'Dim pt As Point = CType(sender, DevComponents.AdvTree.AdvTree).PointToClient(New Point(e.X, e.Y))
|
|
'pt = New Point(e.X, e.Y)
|
|
'DestinationNode = TreeStruktur.GetNodeAt(e.X, e.Y)
|
|
'If DestinationNode Is Nothing Then Exit Sub
|
|
'Dim zielname As String
|
|
'Dim sourcename As String
|
|
'Dim tn As DevComponents.AdvTree.Node
|
|
|
|
'zielname = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, DestinationNode))
|
|
|
|
'tn = Uebersicht.FindNode(Me.TreeStruktur.Nodes, Me.movecopy_sourcekey, movecopy_sourcekey)
|
|
'sourcename = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, tn))
|
|
|
|
'If sourcename <> zielname Then
|
|
' Dim bmp As New Bitmap(CType(My.Resources.ResourceManager.GetObject("Stop"), Image))
|
|
' ico = Icon.FromHandle(bmp.GetHicon)
|
|
' customCursor = New Cursor(ico.Handle)
|
|
' instopmode = True
|
|
' Me.Cursor = customCursor
|
|
' Exit Sub
|
|
'End If
|
|
instopmode = False
|
|
If Globals.MoveCopy = 2 Then
|
|
Dim bmp As New Bitmap(CType(My.Resources.ResourceManager.GetObject("CopyCursor"), Image))
|
|
ico = Icon.FromHandle(bmp.GetHicon)
|
|
customCursor = New Cursor(ico.Handle)
|
|
Me.Cursor = customCursor
|
|
Exit Sub
|
|
End If
|
|
If Globals.MoveCopy = 1 Then
|
|
Dim bmp As New Bitmap(CType(My.Resources.ResourceManager.GetObject("MoveCursor"), Image))
|
|
ico = Icon.FromHandle(bmp.GetHicon)
|
|
customCursor = New Cursor(ico.Handle)
|
|
Me.Cursor = customCursor
|
|
Exit Sub
|
|
End If
|
|
If Me.Cursor <> Cursors.Default Then Me.Cursor = Cursors.Default
|
|
End Sub
|
|
|
|
Private Sub TreeStruktur_DragEnter(sender As Object, e As DragEventArgs) Handles TreeStruktur.DragEnter
|
|
If e.Data.GetDataPresent("DevComponents.AdvTree.Node", True) Then
|
|
|
|
'TreeNode found allow move effect
|
|
e.Effect = DragDropEffects.Move
|
|
Else
|
|
If e.Data.GetDataPresent("C1.Win.C1TrueDBGrid.C1TrueDBGrid", True) = True Then
|
|
e.Effect = DragDropEffects.Link
|
|
Else
|
|
e.Effect = DragDropEffects.None
|
|
End If
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub TreeStruktur_DragOver(sender As Object, e As DragEventArgs) Handles TreeStruktur.DragOver
|
|
If e.Data.GetDataPresent("C1.Win.C1TrueDBGrid.C1TrueDBGrid", True) = True Then
|
|
e.Effect = DragDropEffects.Copy
|
|
End If
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "Contextmenu-Tree"
|
|
|
|
Private Sub ctxMenuTree_Opening(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles ctxMenuTree.Opening
|
|
Try
|
|
Dim pt As Point
|
|
pt = Me.TreeStruktur.PointToClient(New Point(xpoint, ypoint))
|
|
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.GetNodeAt(pt)
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
If Me.TreeStruktur.SelectedNodes.Count > 1 Then
|
|
ElementLöschenToolStripMenuItem.Text = "Elemente löschen"
|
|
Else
|
|
ElementLöschenToolStripMenuItem.Text = "Element löschen"
|
|
End If
|
|
|
|
If Me.TreeStruktur.SelectedNode.Tag < 0 Then
|
|
Me.NeuesElementToolStripMenuItem.Enabled = True
|
|
Me.ElementLöschenToolStripMenuItem.Enabled = False
|
|
Else
|
|
Me.NeuesElementToolStripMenuItem.Enabled = True
|
|
Me.ElementLöschenToolStripMenuItem.Enabled = True
|
|
|
|
End If
|
|
Globals.ncol.Clear()
|
|
If Me.TreeStruktur.SelectedNodes.Count > 0 Then
|
|
Me.ElementLöschenToolStripMenuItem.Enabled = False
|
|
End If
|
|
Dim s As String
|
|
s = Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode))
|
|
If s = "Berechtigung" Or s = "Plattform" Or s = "Server" Then Me.Sync.Enabled = True Else Me.Sync.Enabled = False
|
|
If s = "Personal" Or s = "Funktionstelle" Then Me.NeueBeziehungErstellenToolStripMenuItem.Visible = True Else Me.NeueBeziehungErstellenToolStripMenuItem.Visible = False
|
|
Try
|
|
If sec.Check_DataObjectReadonly(Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode))) Then
|
|
Me.NeuesElementToolStripMenuItem.Enabled = False
|
|
Me.ElementLöschenToolStripMenuItem.Enabled = False
|
|
Else
|
|
Me.NeuesElementToolStripMenuItem.Enabled = True
|
|
Me.ElementLöschenToolStripMenuItem.Enabled = True
|
|
End If
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub InEinemNeuenFensterÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles InEinemNeuenFensterÖffnenToolStripMenuItem.Click
|
|
|
|
Dim allnodes As List(Of String) = New List(Of String)
|
|
Dim dn As DevComponents.AdvTree.Node
|
|
For Each n As DevComponents.AdvTree.Node In Me.TreeStruktur.SelectedNodes
|
|
allnodes.Add(n.Tag)
|
|
Next
|
|
|
|
For i = allNodes.Count - 1 To 0 Step -1
|
|
Dim f As New frmUebersichtRE(allnodes(i))
|
|
f.MdiParent = Me.MdiParent
|
|
f.Show()
|
|
Next
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub NeuesElementToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NeuesElementToolStripMenuItem.Click
|
|
Me.AllgMainObjekte1.Add_Entry(Me.TreeStruktur.SelectedNode.Tag)
|
|
End Sub
|
|
|
|
Private Sub KnotenÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KnotenÖffnenToolStripMenuItem.Click
|
|
Try
|
|
Me.TreeStruktur.SelectedNode.ExpandAll()
|
|
Me.TreeStruktur.SelectedNode.EnsureVisible()
|
|
Catch ex As Exception
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub KnotenSchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KnotenSchliessenToolStripMenuItem.Click
|
|
Try
|
|
Me.TreeStruktur.SelectedNode.Collapse()
|
|
Me.TreeStruktur.SelectedNode.EnsureVisible()
|
|
Catch ex As Exception
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
Private Sub ElementLöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ElementLöschenToolStripMenuItem.Click
|
|
|
|
If Me.TreeStruktur.SelectedNodes.Count = 1 Then
|
|
Dim subnodes As List(Of String) = New List(Of String)
|
|
Dim Allnodes As List(Of String) = New List(Of String)
|
|
For Each n As DevComponents.AdvTree.Node In Me.TreeStruktur.SelectedNodes
|
|
subnodes = GetChildren(n)
|
|
For i = 0 To subnodes.Count - 1
|
|
allNodes.Add(subnodes(i))
|
|
Next
|
|
Next
|
|
Dim res As MsgBoxResult
|
|
If Allnodes.Count > 0 Then
|
|
res = MsgBox("Datensatz '" + Me.TreeStruktur.SelectedNode.Text + "' inkl. allen " + Allnodes.Count.ToString + " Unterelemente löschen?", vbYesNo + vbQuestion)
|
|
Else
|
|
res = MsgBox("Datensatz '" + Me.TreeStruktur.SelectedNode.Text + "' löschen?", vbYesNo + vbQuestion)
|
|
End If
|
|
If res = MsgBoxResult.No Then Exit Sub
|
|
Me.Cursor = Cursors.WaitCursor
|
|
Delete_Entries()
|
|
Me.Cursor = Cursors.Default
|
|
End If
|
|
If Me.TreeStruktur.SelectedNodes.Count > 1 Then
|
|
Dim s As String = ""
|
|
Dim subnodes As List(Of String) = New List(Of String)
|
|
Dim Allnodes As List(Of String) = New List(Of String)
|
|
Dim res As MsgBoxResult
|
|
|
|
For Each n As DevComponents.AdvTree.Node In Me.TreeStruktur.SelectedNodes
|
|
If s <> "" Then s = s + ", "
|
|
s = s + vbCrLf + "'" + n.Text + "'"
|
|
subnodes = GetChildren(n)
|
|
For i = 0 To subnodes.Count - 1
|
|
Allnodes.Add(subnodes(i))
|
|
Next
|
|
Next
|
|
If Allnodes.Count > 0 Then s = s + vbCrLf + " inkl. allen " + Allnodes.Count.ToString + " Unterlemete" Else s = s + vbCrLf
|
|
If MsgBox("Datensätze " + s + " löschen?", vbYesNo + vbQuestion) = MsgBoxResult.Yes Then
|
|
' If mymsg.Show_MessageYesNo(41) = MsgBoxResult.No Then Exit Sub
|
|
Me.Cursor = Cursors.WaitCursor
|
|
Delete_Entries()
|
|
Me.Cursor = Cursors.Default
|
|
|
|
End If
|
|
evh.Fire_Update_Treesearch(Me.ParentForm)
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
Sub Delete_Entries()
|
|
Dim Allnodes As List(Of String) = New List(Of String)
|
|
Dim subnodes As List(Of String) = New List(Of String)
|
|
Dim dn As DevComponents.AdvTree.Node
|
|
For Each n As DevComponents.AdvTree.Node In Me.TreeStruktur.SelectedNodes
|
|
subnodes = GetChildren(n)
|
|
For i = 0 To subnodes.Count - 1
|
|
Allnodes.Add(subnodes(i))
|
|
Next
|
|
Allnodes.Add(n.Tag)
|
|
Next
|
|
|
|
For i = Allnodes.Count - 1 To 0 Step -1
|
|
AllgMainObjekte1.Delete_Entry(Allnodes(i), Allnodes(i), Me.ParentForm, False)
|
|
Next
|
|
|
|
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub ExportExcelToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ExportExcelToolStripMenuItem.Click
|
|
Dim f As New frmFortschritt
|
|
f.Show()
|
|
Dim ds As New DataSet
|
|
ds.Tables.Clear()
|
|
|
|
Dim Allnodes As List(Of String) = New List(Of String)
|
|
Dim subnodes As List(Of String) = New List(Of String)
|
|
Dim dn As DevComponents.AdvTree.Node
|
|
For Each n As DevComponents.AdvTree.Node In Me.TreeStruktur.SelectedNodes
|
|
subnodes = GetChildren(n)
|
|
For i = 0 To subnodes.Count - 1
|
|
Allnodes.Add(subnodes(i))
|
|
Next
|
|
Allnodes.Add(n.Tag)
|
|
Next
|
|
f.ProgressBar1.Value = 0
|
|
f.ProgressBar1.Maximum = Allnodes.Count
|
|
Cursor = Cursors.WaitCursor
|
|
For i = 0 To Allnodes.Count - 1
|
|
Dim dt As New DataTable
|
|
f.ProgressBar1.Value = f.ProgressBar1.Value + 1
|
|
Application.DoEvents()
|
|
dt = Datenklasse.Get_Data_for_ExcelExport(Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode)), Allnodes(i))
|
|
If i = 0 Then
|
|
ds.Tables.Add(dt.Copy)
|
|
Else
|
|
For Each r As DataRow In dt.Rows
|
|
ds.Tables(0).ImportRow(r)
|
|
Next
|
|
End If
|
|
Next
|
|
Cursor = Cursors.Default
|
|
|
|
f.Close()
|
|
f.Dispose()
|
|
|
|
Dim rpt As New _FRReporting.frmAuswertung("ExcelExport", ds, Globals.clsapplication.sTmp_filepath.Value)
|
|
rpt.MdiParent = Me.MdiParent
|
|
|
|
rpt.Show()
|
|
End Sub
|
|
|
|
Private Sub ExportVorbereitenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ExportVorbereitenToolStripMenuItem.Click
|
|
If Globals.ExcelExport_Form_exists = False Then
|
|
Dim f As New frmExportContainer
|
|
f.MdiParent = Me.MdiParent
|
|
f.Show()
|
|
Globals.ExcelExport_Form_exists = True
|
|
End If
|
|
Dim f1 As New frmFortschritt
|
|
f1.Show()
|
|
|
|
Dim Allnodes As List(Of String) = New List(Of String)
|
|
Dim subnodes As List(Of String) = New List(Of String)
|
|
Dim dn As DevComponents.AdvTree.Node
|
|
For Each n As DevComponents.AdvTree.Node In Me.TreeStruktur.SelectedNodes
|
|
subnodes = GetChildren(n)
|
|
For i = 0 To subnodes.Count - 1
|
|
Allnodes.Add(subnodes(i))
|
|
Next
|
|
Allnodes.Add(n.Tag)
|
|
Next
|
|
f1.ProgressBar1.Value = 0
|
|
f1.ProgressBar1.Maximum = Allnodes.Count
|
|
Cursor = Cursors.WaitCursor
|
|
For i = 0 To Allnodes.Count - 1
|
|
Dim arr(3) As String
|
|
Dim tn As New DevComponents.AdvTree.Node
|
|
f1.ProgressBar1.Value = f1.ProgressBar1.Value + 1
|
|
Application.DoEvents()
|
|
|
|
tn = Uebersicht.FindNode(Me.TreeStruktur.Nodes, Allnodes(i), Allnodes(i))
|
|
evh.Fire_Export_Vorbereiten_Clicked(Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode)), tn.Text, tn.Tag)
|
|
Next
|
|
Cursor = Cursors.Default
|
|
f1.Close()
|
|
f1.Dispose()
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub Sync_Click(sender As Object, e As EventArgs) Handles Sync.Click
|
|
If MsgBox("Wollen Sie die Beziehungen 'Verwaltung durch', 'Verwaltung mit','Dateneigentümer' in alle untergeordneten Elemente synchronisieren?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.AllgMainObjekte1.Sync_Beziehungen(Me.TreeStruktur.SelectedNode.Tag, Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode)), Me.TreeStruktur)
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub NeueBeziehungErstellenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NeueBeziehungErstellenToolStripMenuItem.Click
|
|
Dim s As String
|
|
s = Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode))
|
|
Select Case s
|
|
Case "Personal"
|
|
fneuebeziehung = New _AllgMainObjekte.frmSetNeueBeziehung
|
|
fneuebeziehung.SourceBezeichnung = Me.TreeStruktur.SelectedNode.Text
|
|
fneuebeziehung.Sourceid = Me.TreeStruktur.SelectedNode.Tag
|
|
fneuebeziehung.Type = 0
|
|
fneuebeziehung.MdiParent = Me.MdiParent
|
|
fneuebeziehung.Mitarbeiternr = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
fneuebeziehung.Show()
|
|
Case "Funktionstelle"
|
|
fneuebeziehung = New _AllgMainObjekte.frmSetNeueBeziehung
|
|
fneuebeziehung.SourceBezeichnung = Me.TreeStruktur.SelectedNode.Text
|
|
fneuebeziehung.Sourceid = Me.TreeStruktur.SelectedNode.Tag
|
|
fneuebeziehung.Type = 1
|
|
fneuebeziehung.MdiParent = Me.MdiParent
|
|
fneuebeziehung.Mitarbeiternr = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
fneuebeziehung.Show()
|
|
End Select
|
|
|
|
End Sub
|
|
|
|
|
|
#End Region
|
|
|
|
#Region "EVH-Ereignisse"
|
|
|
|
|
|
Private Sub evh_Icon_Changed(keyvalue As Integer, Iconid As Integer) Handles evh.Icon_Changed
|
|
Try
|
|
Dim foundnode As DevComponents.AdvTree.Node
|
|
foundnode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, keyvalue, keyvalue)
|
|
foundnode.ImageIndex = Iconid
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
Private Sub evh_Node_Moved(onode As Object, dnode As Object, treehandle As Object) Handles evh.Node_Moved
|
|
Try
|
|
Dim SourcenodeParent As DevComponents.AdvTree.Node
|
|
Dim sourcenode As DevComponents.AdvTree.Node
|
|
Dim destnode As DevComponents.AdvTree.Node
|
|
sourcenode = onode
|
|
SourcenodeParent = sourcenode.Parent
|
|
destnode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, dnode.tag, dnode.tag)
|
|
Dim foundnode As DevComponents.AdvTree.Node
|
|
foundnode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, sourcenode.Tag, sourcenode.Tag)
|
|
Try
|
|
|
|
foundnode.Remove()
|
|
destnode.Nodes.Add(foundnode)
|
|
destnode.ImageIndex = get_Icon(destnode)
|
|
destnode.Nodes.Sort()
|
|
evh.Fire_Update_Treesearch(Me)
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub evh_MainObject_Created(Keyvalue As Integer, Parentid As Integer, ByVal parentform As Object) Handles evh.MainObject_Created
|
|
Try
|
|
If parentform.handle = Me.Handle Then
|
|
Dim parentnode As DevComponents.AdvTree.Node
|
|
Dim NewNode As New DevComponents.AdvTree.Node
|
|
parentnode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, Parentid, Parentid)
|
|
Dim DBOBjektname = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, parentnode))
|
|
Dim DBObjekt As New Object
|
|
Datenklasse.CreateNew(DBOBjektname, DBObjekt)
|
|
DBObjekt.get_data(Keyvalue)
|
|
NewNode.Text = DBObjekt.sbezeichnung.ToString
|
|
NewNode.Tag = Keyvalue
|
|
parentnode.Nodes.Add(NewNode)
|
|
NewNode.ImageIndex = get_Icon(NewNode)
|
|
parentnode.ImageIndex = get_Icon(parentnode)
|
|
parentnode.Nodes.Sort()
|
|
NewNode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, Keyvalue, Keyvalue)
|
|
NewNode.EnsureVisible()
|
|
Me.TreeStruktur.SelectedNode = NewNode
|
|
Else
|
|
Dim parentnode As DevComponents.AdvTree.Node
|
|
Dim NewNode As New DevComponents.AdvTree.Node
|
|
parentnode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, Parentid, Parentid)
|
|
Dim DBOBjektname = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, parentnode))
|
|
Dim DBObjekt As New Object
|
|
Datenklasse.CreateNew(DBOBjektname, DBObjekt)
|
|
DBObjekt.get_data(Keyvalue)
|
|
NewNode.Text = DBObjekt.sbezeichnung.ToString
|
|
NewNode.Tag = Keyvalue
|
|
parentnode.Nodes.Add(NewNode)
|
|
NewNode.ImageIndex = get_Icon(NewNode)
|
|
parentnode.ImageIndex = get_Icon(parentnode)
|
|
parentnode.Nodes.Sort()
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
Private Sub evh_Object_Saved(Keyvalue As Integer, Parentid As Integer, parentform As Object) Handles evh.Object_Saved
|
|
Try
|
|
Dim node As New DevComponents.AdvTree.Node
|
|
node = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, Keyvalue, Keyvalue)
|
|
Dim DBOBjektname = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, node))
|
|
Dim DBObjekt As New Object
|
|
Datenklasse.CreateNew(DBOBjektname, DBObjekt)
|
|
DBObjekt.get_data(Keyvalue)
|
|
node.Text = DBObjekt.sbezeichnung.ToString
|
|
node.Tag = Keyvalue
|
|
node.Parent.Nodes.Sort()
|
|
Me.AllgMainObjekte1.Refresh_Beziehungen()
|
|
Catch ex As Exception
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub evh_Object_Deleted(keyvalue As Integer, keyvalueparent As Integer, ByVal parentform As Object) Handles evh.Object_Deleted
|
|
Try
|
|
Dim IsSelected As Boolean = False
|
|
Dim parentnode As DevComponents.AdvTree.Node
|
|
parentnode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, keyvalueparent, keyvalueparent)
|
|
Dim node As New DevComponents.AdvTree.Node
|
|
node = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, keyvalue, keyvalue)
|
|
If node.IsSelected Then IsSelected = True Else IsSelected = False
|
|
parentnode.Nodes.Remove(node)
|
|
parentnode.ImageIndex = get_Icon(parentnode)
|
|
If IsSelected Then TreeStruktur.SelectedNode = parentnode
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub evh_Object_Delete(Keyvalue As Integer, Parentid As Integer, parentform As Object) Handles evh.Object_Delete
|
|
If Me.Handle = parentform.handle Then
|
|
delete_entries()
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Public Sub Fireed_node_droped() Handles evh.Node_Droppend
|
|
If Globals.TempTreeControl.Handle = Globals.TempTreeControl1.Handle Then Exit Sub
|
|
Dim tn As DevComponents.AdvTree.Node
|
|
Try
|
|
tn = Uebersicht.FindNode(TempTreeControl.Nodes, TempTreeCurrentNode.Tag, TempTreeCurrentNode.Tag)
|
|
tn.Remove()
|
|
Catch ex As Exception
|
|
End Try
|
|
Try
|
|
tn = Uebersicht.FindNode(TempTreeControl.Nodes, TempTreeNewParentNode.Tag, TempTreeNewParentNode.Tag)
|
|
tn.Nodes.Add(TempTreeCurrentNode)
|
|
tn.Nodes.Sort()
|
|
evh.Fire_Update_Treesearch(Me)
|
|
Catch ex As Exception
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub evh_Select_to_MoveCopy(move As Boolean, grid As Object, sourcekey As Integer) Handles evh.Select_to_MoveCopy
|
|
If move Then Globals.MoveCopy = 1 Else Globals.MoveCopy = 2
|
|
movecopy_sourcekey = sourcekey
|
|
movecopy_grid = grid
|
|
Globals.MoveCopy_Grid = grid
|
|
End Sub
|
|
|
|
Private Sub evh_Refresh_Selectednodes() Handles evh.Refresh_Selectednodes
|
|
Try
|
|
AllgMainObjekte1.Refresh_Beziehungen()
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "Utils"
|
|
|
|
Function GetChildren(parentNode As DevComponents.AdvTree.Node) As List(Of String)
|
|
Dim nodes As List(Of String) = New List(Of String)
|
|
GetAllChildren(parentNode, nodes)
|
|
Return nodes
|
|
End Function
|
|
|
|
Sub GetAllChildren(parentNode As DevComponents.AdvTree.Node, nodes As List(Of String))
|
|
For Each childNode As DevComponents.AdvTree.Node In parentNode.Nodes
|
|
nodes.Add(childNode.Tag)
|
|
GetAllChildren(childNode, nodes)
|
|
Next
|
|
End Sub
|
|
|
|
Private Function get_Icon(ByVal node As DevComponents.AdvTree.Node, Optional newNode As Boolean = False) As Integer
|
|
Dim oldimage As Integer
|
|
Dim NewImage As Integer
|
|
Dim Type As String
|
|
Type = Datenklasse.Get_SelectionTypeText(Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, node))
|
|
Select Case Type
|
|
Case "Berechtigung"
|
|
NewImage = 4
|
|
Case "Plattform"
|
|
NewImage = 6
|
|
Case "Organisation"
|
|
NewImage = 0
|
|
Case "Funktionstelle"
|
|
NewImage = 0
|
|
Case "Personal"
|
|
NewImage = 2
|
|
Case "Server"
|
|
NewImage = 8
|
|
Case "Verwaltung durch", "VerwaltungDurch"
|
|
NewImage = 10
|
|
Case "Verwaltung mit", "VerwaltungMit"
|
|
NewImage = 12
|
|
End Select
|
|
If node.Nodes.Count > 0 Then NewImage = NewImage + 1
|
|
Return NewImage
|
|
End Function
|
|
|
|
#End Region
|
|
|
|
|
|
#Region "AllgMainObjekte"
|
|
|
|
|
|
Private Sub BeA_FunktionDetail1_C1Bezeihungen_DoubleClicked(keyvalue As Integer, Typ As String, NewWindow As Boolean) Handles AllgMainObjekte1.Beziehungen_DoubleClicked
|
|
If NewWindow = False Then
|
|
Me.TreeStruktur.SelectedNode = Me.Uebersicht.FindNode(Me.TreeStruktur.Nodes, keyvalue, keyvalue)
|
|
Else
|
|
Dim f As New frmUebersicht(keyvalue)
|
|
f.MdiParent = Me.MdiParent
|
|
f.Show()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub AllgMainObjekte1_DragDrop(sender As Object, e As DragEventArgs) Handles AllgMainObjekte1.DragDrop
|
|
'20130402_Sequenznr des Root-Nodes auslesen und als SequenzNr übergeben
|
|
Dim DBOBjektname = Uebersicht.Get_DBObjektname(Me.Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, Me.TreeStruktur.SelectedNode))
|
|
Dim DBObjekt As New Object
|
|
Datenklasse.CreateNew(DBOBjektname, DBObjekt)
|
|
DBObjekt.get_data(Me.AllgMainObjekte1.KeyValue)
|
|
Dim sequenznr As Integer = DBObjekt.isequenz.value
|
|
DBObjekt.dispose()
|
|
Me.AllgMainObjekte1.Add_New_Beziehung(newnode.Tag, Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, newnode), newnode.Text, TargetDBObject, Change_Keys, sequenznr)
|
|
End Sub
|
|
|
|
Private Sub AllgMainObjekte1_DragEnter(sender As Object, e As DragEventArgs) Handles AllgMainObjekte1.DragEnter
|
|
'See if there is a TreeNode being dragged
|
|
If e.Data.GetDataPresent("DevComponents.AdvTree.Node", True) Then
|
|
|
|
'TreeNode found allow move effect
|
|
e.Effect = DragDropEffects.Move
|
|
Else
|
|
'No TreeNode found, prevent move
|
|
e.Effect = DragDropEffects.None
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Dim newnode As New DevComponents.AdvTree.Node
|
|
Private Sub AllgMainObjekte1_DragOver(sender As Object, e As DragEventArgs) Handles AllgMainObjekte1.DragOver
|
|
If e.Data.GetDataPresent("DevComponents.AdvTree.Node", True) = False Then Exit Sub
|
|
|
|
Dim DestinationNode As DevComponents.AdvTree.Node
|
|
Dim pt As Point
|
|
pt = Me.TreeStruktur.PointToClient(New Point(e.X, e.Y))
|
|
|
|
DestinationNode = TreeStruktur.GetNodeAt(pt)
|
|
|
|
newnode = CType(e.Data.GetData("DevComponents.AdvTree.Node"), DevComponents.AdvTree.Node)
|
|
Dim type1 As Integer
|
|
Dim type2 As Integer
|
|
type1 = Uebersicht.TreeView_GetRootNode(Me.TreeStruktur, newnode)
|
|
type2 = Datenklasse.Get_Selectiontype(Me.AllgMainObjekte1.Type)
|
|
For Each dr As DataRow In Globals.Objekt_Beziehung.Rows
|
|
If dr.Item("Objekt1") = type1 And dr.Item("Objekt2") = type2 And dr.Item("Aktiv") = True Then
|
|
Me.TargetDBObject = dr.Item("Objektname")
|
|
Me.Change_Keys = dr.Item("Key_Umdrehen")
|
|
e.Effect = DragDropEffects.Move
|
|
Exit Sub
|
|
End If
|
|
Next
|
|
e.Effect = DragDropEffects.None
|
|
|
|
Exit Sub
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
|
|
|
|
Private Sub evh_Update_TreeSearch(parentform As Object) Handles evh.Update_TreeSearch
|
|
Try
|
|
If Me.Handle = parentform.handle Then
|
|
Uebersicht.Update_TreeSearch(0, 0, Me.TreeStruktur)
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
|
|
If AllgMainObjekte1.isDirty Then
|
|
If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
|
|
Me.OnTreeRefresh = True
|
|
AllgMainObjekte1.Save_Data(False)
|
|
Me.OnTreeRefresh = False
|
|
Else
|
|
Me.AllgMainObjekte1.isDirty = False
|
|
End If
|
|
End If
|
|
Dim f As New frmSuche
|
|
f.SuchData = Globals.treedata_for_search
|
|
f.SuchTree = Me.TreeStruktur
|
|
f.MdiParent = Me.MdiParent
|
|
f.txtSuchbegriff.Text = Trim(ToolStriptxtSuche.Text)
|
|
f.Show()
|
|
End Sub
|
|
|
|
Private Sub FensterGrösseSpeichernToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles FensterGrösseSpeichernToolStripMenuItem.Click
|
|
WHandler.set_Windowsize(1, Me.Width, Me.Height)
|
|
WHandler.set_Windowsize(11, Me.SplitContainer1.SplitterDistance, 0)
|
|
End Sub
|
|
|
|
|
|
Private Sub TreeStruktur_MouseDown(sender As Object, e As MouseEventArgs) Handles TreeStruktur.MouseDown
|
|
If e.Button = Windows.Forms.MouseButtons.Right Then
|
|
xpoint = e.X
|
|
ypoint = e.Y
|
|
End If
|
|
End Sub
|
|
End Class |