You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ITSM/.svn/pristine/49/495ae14e14c32b779e803e50a7c...

1484 lines
60 KiB

Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
''' <summary>
''' Vertragsübersicht: Beachten: TabControl wird von TKB.VV.Utils.clsMyTabControl
''' überschrieben
''' </summary>
''' <includesource>yes</includesource>
''' <seealso
''' cref="T:Vertragsverwaltung.TKB.VV.Vertrag.clsVertragsuebersicht_Strukturen"></seealso>
''' <seealso
''' cref="T:Vertragsverwaltung.TKB.VV.Vertrag.Treenode_Descriptor"></seealso>
''' <seealso
''' cref="T:Vertragsverwaltung.TKB.VV.Vertrag.clsVertragselement"></seealso>
''' <seealso cref="T:Vertragsverwaltung.TKB.VV.Utils.MyDocMgmt"></seealso>
''' <seealso cref="T:Vertragsverwaltung.TKB.VV.Utils.MySecurity"></seealso>
''' <seealso cref="T:Vertragsverwaltung.TKB.VV.Utils.MyMessage"></seealso>
''' <seealso cref="T:Vertragsverwaltung.TKB.VV.Utils.clsProfile"></seealso>
''' <seealso cref="T:Vertragsverwaltung.TKB.VV.Utils.Tabellenspalte"></seealso>
''' <seealso cref="T:Vertragsverwaltung.MyGenericEventHandler"></seealso>
Public Class frmVertragsuebersicht
#Region "Deklarationen"
''' <summary>
''' Klasse für die Bewirtschaftung der Tree-Strukturen
''' </summary>
''' <remarks></remarks>
Dim Strukturen As New TKB.VV.Vertrag.clsVertragsuebersicht_Strukturen
''' <summary>
''' Klasse für die Beschreibung der Tree-Tags
''' </summary>
''' <remarks></remarks>
Dim Tag_Descriptor As TKB.VV.Vertrag.Treenode_Descriptor
''' <summary>
''' Vertragselement
''' </summary>
''' <remarks></remarks>
Dim Vertragselement As TKB.VV.Vertrag.clsVertragselement
''' <summary>
''' Dokument-Management-Klasse
''' </summary>
''' <remarks></remarks>
Dim Docs As New TKB.VV.Utils.MyDocMgmt
Dim Services As New TKB.VV.Vertrag.clsVertragsleistung
''' <summary>
''' Security-Klasse
''' </summary>
''' <remarks></remarks>
Dim sec As New TKB.VV.Utils.MySecurity
''' <summary>
''' Message-Klasse
''' </summary>
''' <remarks></remarks>
Dim msg As New TKB.VV.Utils.MyMessage
Dim Profil As New TKB.VV.Utils.clsProfile
Dim FormReadonly As Boolean = False
Dim FormDataChanged As Boolean = False
Dim SpaltenTitel As New TKB.VV.Utils.Tabellenspalte
Friend selectPoint As New System.Drawing.Point()
Dim c1data As New DataTable
Dim Save_LizenzTabPage As TabPage
Dim PartnerToSelect As Integer = 0
Dim IsOnLoad As Boolean = False
''' <summary>
''' Generic Event-Handler
''' </summary>
''' <remarks></remarks>
Dim WithEvents evh As MyGenericEventHandler = Globals.MyEventHanlder
#End Region
#Region "Buttons/Menu"
''' <summary>
''' Formular schliessen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click
Me.Close()
End Sub
''' <summary>
''' Datensatz kopieren
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSBtnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnCopy.Click
End Sub
''' <summary>
''' Neuer Datensatz erstellen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSBtnNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnNew.Click
End Sub
''' <summary>
''' Aktueller Datensatz inaktivieren
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSBtnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnDelete.Click
End Sub
''' <summary>
''' Menu Beenden
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub BeendenToolStipMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStipMenuItem.Click
Me.TSBtnQuit_Click(sender, e)
End Sub
''' <summary>
''' Vertragspartner suchen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSBtnSuche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnSuche.Click
Me.C1Dokumente.DataSource = Nothing
If Me.rbSortVertragspartner.Checked = True Then
Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 1, Me.TStxtSuche.Text)
Else
Strukturen.Get_Struktur(Me.TreeStruktur, 1, Me.cbInaktiv.Checked, 1, Me.TStxtSuche.Text)
End If
Try
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
Me.TreeStruktur_Click(sender, e)
If Me.TreeStruktur.GetNodeCount(False) = 1 Then
Try
Update_Node(Me.TreeStruktur.SelectedNode, Me.Profil.bV_Struktur_Details.Value)
Catch ex As Exception
End Try
End If
Catch ex As Exception
End Try
End Sub
Private Sub TSBtnSucheInhalt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnSucheInhalt.Click
Me.C1Dokumente.DataSource = Nothing
If Me.rbSortVertragspartner.Checked = True Then
Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 2, Me.TStxtSucheInhalt.Text)
Else
Strukturen.Get_Struktur(Me.TreeStruktur, 1, Me.cbInaktiv.Checked, 2, Me.TStxtSucheInhalt.Text)
End If
Try
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
Me.TreeStruktur_Click(sender, e)
If Me.TreeStruktur.GetNodeCount(False) = 1 Then
Try
Update_Node(Me.TreeStruktur.SelectedNode, Me.Profil.bV_Struktur_Details.Value)
Catch ex As Exception
End Try
End If
Catch ex As Exception
End Try
End Sub
'Try
' Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
' Me.TreeStruktur_Click(sender, e)
'Catch ex As Exception
' If F.DialogResult = Windows.Forms.DialogResult.OK Then
' Me.C1Vertragselemente.DataSource = Nothing
' If Me.rbSortVertragspartner.Checked = True Then
' If F.txtVertragspartner.Text <> "" Then
' Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 1, F.txtVertragspartner.Text)
' Else
' Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 2, F.txtVertragselement.Text)
' End If
' End If
' If Me.rbSortVertragstyp.Checked = True Then
' If F.txtVertragspartner.Text <> "" Then
' Strukturen.Get_Struktur(Me.TreeStruktur, 1, Me.cbInaktiv.Checked, 1, F.txtVertragspartner.Text)
' Else
' Strukturen.Get_Struktur(Me.TreeStruktur, 1, Me.cbInaktiv.Checked, 1, F.txtVertragselement.Text)
' End If
' End If
' Try
' Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
' Me.TreeStruktur_Click(sender, e)
' Catch ex As Exception
' End Try
' End If
#End Region
#Region "Formular"
Sub New()
Me.IsOnLoad = True
InitializeComponent()
End Sub
Sub New(ByVal Partnernr As Integer)
Me.IsOnLoad = True
InitializeComponent()
Me.PartnerToSelect = Partnernr
End Sub
''' <summary>
''' Formular-Load
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks>Wurde das Form mit einer Partnernr initialisiert, wird die Partnerstruktur geöffnet</remarks>
Private Sub frmVertragsuebersicht_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Cursor = Cursors.WaitCursor
Me.Save_LizenzTabPage = Me.TabControlDiverse.TabPages("TabLizenz")
If Me.TSBtnSave.Enabled = False Then
Me.FormReadonly = True
Me.TSBtnCopy.Enabled = False
Me.TSBtnNew.Enabled = False
Me.TSBtnDelete.Enabled = False
Else
Me.FormReadonly = False
End If
Profile_Aktualisieren()
Try
Me.TSComboboxProfil.SelectedIndex = 0
Catch
End Try
If PartnerToSelect <> 0 Then
Load_Struktur(PartnerToSelect)
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
Me.TreeStruktur_Click(sender, e)
If Me.TreeStruktur.GetNodeCount(False) = 1 Then
Me.TreeStruktur.ExpandAll()
Try
Update_Node(Me.TreeStruktur.SelectedNode, Me.Profil.bV_Struktur_Details.Value)
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
Catch ex As Exception
End Try
End If
Else
Load_Struktur()
End If
Me.Order_Tabcontrol()
PartnerToSelect = 0
Me.IsOnLoad = False
Load_Securitylevel()
sec.Set_Form_Security(Me)
Me.Cursor = Cursors.Default
End Sub
''' <summary>
''' Laden der Treestruktur
''' </summary>
''' <remarks></remarks>
Private Sub Load_Struktur(Optional ByVal Partnernr As Integer = 0)
Me.Cursor = Cursors.WaitCursor
If Me.rbSortVertragspartner.Checked = True Then
If Me.TStxtSuche.Text <> "" Then
Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 1, Me.TStxtSuche.Text, Partnernr)
Else
If Me.TStxtSucheInhalt.Text <> "" Then
Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 2, Me.TStxtSucheInhalt.Text, Partnernr)
Else
Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, , , Partnernr)
End If
End If
End If
If Me.rbSortVertragstyp.Checked = True Then
Strukturen.Get_Struktur(Me.TreeStruktur, 1, Me.cbInaktiv.Checked, , , Partnernr)
End If
Try
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
Catch
End Try
Me.Cursor = Cursors.Default
'Me.Refresh_Details()
End Sub
''' <summary>
''' Bei Änderung der Inaktiv-Checkbox werden die Hauptstrukturen neu geladen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub cbocInaktiv_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbInaktiv.CheckedChanged
Try
Me.Load_Struktur()
Catch ex As Exception
End Try
End Sub
#End Region
#Region "Tree"
''' <summary>
''' Aktueller Tag des gewählten Nodes auslesen und Aktualisierung aufrufen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>Me.Profil.bV_Struktur_Details.Value
Private Sub treeStruktur_BeforeExpand(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewCancelEventArgs) Handles TreeStruktur.BeforeExpand
If Me.TreeStruktur.SelectedNode.GetNodeCount(True) = 1 And Me.TreeStruktur.SelectedNode.Level = 0 Then
Dim xx As TKB.VV.Vertrag.Treenode_Descriptor = Me.TreeStruktur.SelectedNode.Nodes(0).Tag
If xx.Keyvalue = -99 Then
Try
Update_Node(Me.TreeStruktur.SelectedNode, Me.Profil.bV_Struktur_Details.Value)
Catch ex As Exception
End Try
End If
End If
End Sub
Private Sub Update_Node(ByRef tn As TreeNode, ByVal Details As Integer)
Dim x As TKB.VV.Vertrag.Treenode_Descriptor = tn.Tag
Select Case x.Type
Case "Vertragspartner"
tn.Nodes.Clear()
Me.Strukturen.Load_SubStruktur(tn, Details, Me.TStxtSucheInhalt.Text)
tn.ExpandAll()
Case "Vertragstyp"
tn.Nodes.Clear()
If Me.TStxtSuche.Text <> "" Then
Me.Strukturen.Load_SubStruktur(tn, Details, "V:" + Me.TStxtSuche.Text)
Else
If Me.TStxtSucheInhalt.Text <> "" Then
Me.Strukturen.Load_SubStruktur(tn, Details, "I:" + Me.TStxtSucheInhalt.Text)
Else
Me.Strukturen.Load_SubStruktur(tn, Details, "")
End If
End If
tn.ExpandAll()
End Select
End Sub
''' <summary>
''' Treeview-Click
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks>Ist die Sortierung nach Vertragstyp und der Click auf dem Root-Entry, wird das Datenauslesen speziell behandelt, sodass sämtliche Vertragspartner berücksichtigt werden</remarks>
Private Sub TreeStruktur_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeStruktur.Click
Refresh_Details()
End Sub
''' <summary>
''' Toplevel-Treenode suchen
''' </summary>
''' <param name="tn"></param>
''' <returns></returns>
''' <remarks></remarks>
Private Function RootTreeNode(ByVal tn As TreeNode) As TreeNode
While Not tn.Parent Is Nothing
tn = tn.Parent
RootTreeNode(tn)
End While
Return tn
End Function
''' <summary>
''' Mousedown-Ereignis auf dem Tree
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TreeStruktur_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeStruktur.MouseDown
Try
Dim mouseEvents As MouseEventArgs
mouseEvents = e
selectPoint.Y = mouseEvents.Y
selectPoint.X = mouseEvents.X
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.GetNodeAt(selectPoint)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
''' <summary>
''' Handling RB_Changed für den Aufbau der Struktur
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub RB_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles rbSortVertragspartner.CheckedChanged, rbSortVertragstyp.CheckedChanged
If Me.IsOnLoad Then Exit Sub
If Me.rbSortVertragspartner.Checked = False And Me.rbSortVertragstyp.Checked = False Then Exit Sub
Me.Load_Struktur()
End Sub
''' <summary>
''' Suchen eines Knoten Treeview
''' </summary>
''' <param name="_nodeCollection">Nodes des TreeView</param>
''' <param name="SearchVal">Tag.Keyvalue</param>
''' <param name="SearchString">Node.Text als Suchbegriff</param>
''' <returns></returns>
''' <remarks></remarks>
Public Function FindNode(ByVal _nodeCollection As TreeNodeCollection, ByVal SearchVal As Integer, ByVal SearchString As String) As TreeNode
Dim tmpNode As TreeNode
For Each _child As TreeNode In _nodeCollection
Dim xtag As TKB.VV.Vertrag.Treenode_Descriptor = _child.Tag
If xtag.Keyvalue = SearchVal And SearchString = _child.Text Then
Return _child
End If
tmpNode = FindNode(_child.Nodes, SearchVal, SearchString)
If Not tmpNode Is Nothing Then
Return tmpNode
End If
Next
Return Nothing
End Function
#End Region
#Region "TreeStruktur-Menu"
''' <summary>
''' Aktualisierung des aktuellen Knotens
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TreeStrukturAktualisierenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TreeStrukturAktualisierenToolStripMenuItem.Click
Cursor = Cursors.WaitCursor
Dim SaveTn As TreeNode = Me.TreeStruktur.SelectedNode
Me.TreeStruktur.Enabled = False
Me.TreeStruktur.BeginUpdate()
Dim tmptn As TreeNode = Me.RootTreeNode(Me.TreeStruktur.SelectedNode)
tmptn.Nodes.Clear()
tmptn.Nodes.Add("")
Me.Update_Node(tmptn, Me.Profil.bV_Struktur_Details.Value)
tmptn.ExpandAll()
Dim kvalue As TKB.VV.Vertrag.Treenode_Descriptor = SaveTn.Tag
Me.TreeStruktur.Enabled = True
Me.TreeStruktur.EndUpdate()
Me.TreeStruktur.SelectedNode = FindNode(Me.TreeStruktur.Nodes, kvalue.Keyvalue, SaveTn.Text)
TreeStruktur_Click(sender, e)
Cursor = Cursors.Default
End Sub
''' <summary>
''' Vollständiger Treeview aktualisieren
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TreeStrukturTreeAktualisierenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TreeStrukturTreeAktualisierenToolStripMenuItem.Click
Refresh_All()
End Sub
''' <summary>
''' Treeview Struktur aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_All()
Cursor = Cursors.WaitCursor
Me.TreeStruktur.Enabled = False
Me.TreeStruktur.BeginUpdate()
Dim SaveTn As TreeNode = Me.TreeStruktur.SelectedNode
Dim tmptn As TreeNode = Me.RootTreeNode(Me.TreeStruktur.SelectedNode)
Me.TreeStruktur.Nodes.Clear()
Me.Load_Struktur()
Dim keyvalue As TKB.VV.Vertrag.Treenode_Descriptor = tmptn.Tag
Me.TreeStruktur.Enabled = True
Me.TreeStruktur.EndUpdate()
Me.TreeStruktur.SelectedNode = FindNode(Me.TreeStruktur.Nodes, keyvalue.Keyvalue, tmptn.Text)
Me.TreeStruktur.Enabled = False
Me.TreeStruktur.BeginUpdate()
Me.Update_Node(tmptn, Me.Profil.bV_Struktur_Details.Value)
Me.TreeStruktur.SelectedNode.ExpandAll()
Me.TreeStruktur.Enabled = True
Me.TreeStruktur.EndUpdate()
keyvalue = SaveTn.Tag
Me.TreeStruktur.SelectedNode = FindNode(Me.TreeStruktur.Nodes, keyvalue.Keyvalue, SaveTn.Text)
Refresh_Details()
Cursor = Cursors.Default
End Sub
''' <summary>
'''Details aktualisieren
''' </summary>
''' <remarks></remarks>
Dim xxx() As String
Private Sub Refresh_Details()
Try
Dim bm As Integer = 0
bm = Me.C1Vertragselemente.Bookmark
If Me.rbSortVertragstyp.Checked And Me.TreeStruktur.SelectedNode.Level = 0 Then
c1data = Me.Strukturen.Update_Vertragsuebersicht(Me.TreeStruktur.SelectedNode.Tag, True, Me.TStxtSucheInhalt.Text)
Else
c1data = Me.Strukturen.Update_Vertragsuebersicht(Me.TreeStruktur.SelectedNode.Tag, , Me.TStxtSucheInhalt.Text)
End If
If Me.Profil.sV_Sort.ToString <> "" Then
c1data.DefaultView.Sort = Me.Profil.sV_Sort.ToString
End If
Dim gv As C1.Win.C1TrueDBGrid.DataViewEnum
Dim s As New Collection
Dim i As Integer = -1
For Each g As C1.Win.C1TrueDBGrid.C1DataColumn In Me.C1Vertragselemente.GroupedColumns
s.Add(g.Caption)
i = i + 1
' xxx(i) = g.Caption
Next
i = Me.C1Vertragselemente.DataView
Me.C1Vertragselemente.Enabled = False
Me.C1Vertragselemente.DataSource = c1data
Me.C1Vertragselemente.DataMember = c1data.TableName
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Vertragselemente, "Vertragsuebersicht", Me.c1data, Me.Profil.sV_Aktiv_Vertragselemente.Value)
Update_Details()
Docs.Get_Layout(Me.C1Vertragselemente, 1, Me.Profil.iProfilnr.Value)
Me.C1Vertragselemente.FetchRowStyles = True
If i <> 0 Then
Try
Me.C1Vertragselemente.DataView = C1.Win.C1TrueDBGrid.DataViewEnum.Normal
Me.C1Vertragselemente.DataView = i
For Each ss As String In s
Me.C1Vertragselemente.GroupedColumns.Add(Me.C1Vertragselemente.Columns(ss))
Next
Catch ex As Exception
End Try
End If
s = Nothing
Try
Me.C1Vertragselemente.Bookmark = bm
Catch ex As Exception
End Try
Me.C1Vertragselemente.Enabled = True
Catch ex As Exception
End Try
End Sub
''' <summary>
''' Vertragspartner anzeigen / bearbeiten
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TreeStrukturVertragspartnerAnzeigenToolStipMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TreeStrukturVertragspartnerAnzeigenToolStipMenuItem.Click
Dim tmptag As TKB.VV.Vertrag.Treenode_Descriptor = Me.TreeStruktur.SelectedNode.Tag
If tmptag.Type = "Vertragspartner" Then
Dim f As New frmVertragspartner(tmptag.Vertragspartnernr, Me.FormReadonly)
f.MdiParent = Me.MdiParent
f.Show()
End If
End Sub
''' <summary>
''' TreeStrukturContetmenu anzeigen und allfällige MenuItems disablen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TreeStrukturContextMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TreeStrukturContextMenuStrip.Opening
Try
Me.TreeStrukturVertragspartnerAnzeigenToolStipMenuItem.Enabled = False
Tag_Descriptor = Me.TreeStruktur.SelectedNode.Tag
Select Case Tag_Descriptor.Type
Case "Vertragspartner"
Me.TreeStrukturVertragspartnerAnzeigenToolStipMenuItem.Enabled = True
End Select
Catch ex As Exception
End Try
End Sub
#End Region
#Region "VertragselementMenu"
''' <summary>
''' Neuer Vertragspartner eröffnen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub NeuerVertragspartnerToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NeuerVertragspartnerToolStripMenuItem.Click
Dim f As New frmVertragspartner(0, Me.FormReadonly, True)
f.ShowDialog()
End Sub
''' <summary>
''' Spaltenlayout C1Vertragselemente speichern
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub SpaltendarstellungSichernToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TabellendarstellungSichernToolStripMenuItem.Click
Docs.Save_LayoutFile(Me.C1Vertragselemente, 1, Me.Profil.iProfilnr.Value)
End Sub
''' <summary>
''' Vertragselement anzeigen / bearbeiten
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub VertragselementAnzeigenBearbeitenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VertragselementAnzeigenBearbeitenToolStripMenuItem.Click
Me.C1Vertragselemente_DoubleClick(sender, e)
End Sub
''' <summary>
''' Neues Vertragselement laden
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks>Sind keine Elemente in der Vertragselement-Liste, Vertragspartner über Struktureintrag auslesen.
''' Geht dies aufgrund der Datenkonstellation nicht, Vertragspartner 0 übergaben, damit ein Partner ausgesucht werden muss</remarks>
Private Sub NeuesVertragselementErstellenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NeuesVertragselementErstellenToolStripMenuItem.Click
Try
If Me.C1Vertragselemente.Splits(0).Rows.Count = 0 Then
Dim x As TKB.VV.Vertrag.Treenode_Descriptor = Me.TreeStruktur.SelectedNode.Tag
Dim f As New frmVertragselement(-1, False, True, x.Vertragspartnernr)
f.MdiParent = Me.MdiParent
f.Show()
Else
Dim f As New frmVertragselement(-1, False, True, Me.C1Vertragselemente.Columns("Vertragspartnernr").Value)
f.MdiParent = Me.MdiParent
f.Show()
End If
Catch ex As Exception
Dim f As New frmVertragselement(-1, False, True, 0)
f.MdiParent = Me.MdiParent
f.Show()
End Try
End Sub
#End Region
#Region "C1Vertragselemente"
''' <summary>
''' Doubleklick auf C1Vertragselemente
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks>Steht der MenuEintrag VertragselementAnzeigenBearbeitenToolStripMenuItem nicht
''' zur Verfügung, muss der Doppelclick ignoriert werden</remarks>
Private Sub C1Vertragselemente_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Vertragselemente.DoubleClick
If VertragselementAnzeigenBearbeitenToolStripMenuItem.Enabled = False Then
Exit Sub
End If
Try
Dim f As New frmVertragselement(Me.C1Vertragselemente.Columns("Vertragselementnr").Value, Me.FormReadonly, False)
f.MdiParent = Me.MdiParent
f.Show()
Catch ex As Exception
End Try
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Vertragselemente_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Vertragselemente.FetchRowStyle
Try
If Me.C1Vertragselemente.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
'gaga
Private Sub C1Vertragselemente_FormatText(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FormatTextEventArgs) Handles C1Vertragselemente.FormatText
If e.Column.DataType.Name = "DateTime" And e.Value = "01.01.1900 00:00:00" Then e.Value = ""
End Sub
''' <summary>
''' Mousedown-Ereignis auf C1Certragselemente, damit die Details aktualisiert werden können
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Vertragselemente_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Vertragselemente.MouseDown
Me.C1Vertragselemente.Bookmark = Me.C1Vertragselemente.RowContaining(e.Y)
Me.C1Vertragselemente.Bookmark = Me.C1Vertragselemente.RowBookmark(Me.C1Vertragselemente.RowContaining(e.Y))
Update_Details()
End Sub
#End Region
#Region "Detailinformationen"
''' <summary>
''' Detailelemente und die allfällig ausgewählte TabPage aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Update_Details()
If Me.C1Vertragselemente.Splits(0).Rows.Count < 1 Then
Me.TabControlDiverse.Enabled = False
Exit Sub
End If
Me.TabControlDiverse.Enabled = True
Update_DetailInformationen()
Select Case Me.TabControlDiverse.SelectedTab.Text
Case "Vertragsinhalt", "Suchbegriffe"
Case "Kündigungsfristen"
Refresh_Kuendigungsfrist()
Case "Kontakte"
Refresh_Kontakte()
Case "Dokumente"
Refresh_Dokumente()
Case "Services"
Refresh_services()
Case "Ereignisse"
Refresh_Ereignisse()
Case "Aktivitäten"
Refresh_Aktivitaeten()
Case "Pendenzen"
Refresh_Pendenzen()
Case "Referenzverträge"
Refresh_Referenzvertraege()
Case "History"
Refresh_History()
Case "Applikationen"
Refresh_Applikationen()
End Select
End Sub
#End Region
#Region "TabControl"
''' <summary>
''' Index-Wechsel auf TabControlDiverse. Abhängig der gewählten Registerlasche, werden deren Daten aktualisiert.
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TabControlDiverse_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControlDiverse.SelectedIndexChanged
Update_Details()
End Sub
''' <summary>
''' Detail-Informationen der ersten 2 TabPages aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Update_DetailInformationen()
Try
Me.txtBeschreibung.Text = Me.C1Vertragselemente.Columns("Beschreibung").Value
Me.txtVertragstyp.Text = Me.C1Vertragselemente.Columns("Vertragstyp").Value
Me.txtBezeichnung.Text = Me.C1Vertragselemente.Columns("Bezeichnung").Value
Me.txtSuchbegriffe.Text = Me.C1Vertragselemente.Columns("Suchbegriffe").Value
Me.txtVersion.Text = Me.C1Vertragselemente.Columns("Version").Value
Me.txtVertragsnummer.Text = Me.C1Vertragselemente.Columns("Nummer").Value
If Not Me.C1Vertragselemente.Columns("Versionsdatum").Value Is System.DBNull.Value Then
Me.txtVersionsdatum.Text = Me.C1Vertragselemente.Columns("Versionsdatum").Value
Else
Me.txtVersionsdatum.Text = ""
End If
If Not Me.C1Vertragselemente.Columns("Vertragsbeginn").Value Is System.DBNull.Value Then
Me.txtVertragsbegin.Text = Me.C1Vertragselemente.Columns("Vertragsbeginn").Value
Else
Me.txtVertragsbegin.Text = ""
End If
If Not Me.C1Vertragselemente.Columns("Vertragsablauf").Value Is System.DBNull.Value Then
Me.txtVertragsende.Text = Me.C1Vertragselemente.Columns("Vertragsablauf").Value
Else
Me.txtVertragsende.Text = ""
End If
If Not Me.C1Vertragselemente.Columns("Mindestvertragsdauer_bis").Value Is System.DBNull.Value Then
Me.txtMindestvertragsdauerbis.Text = Me.C1Vertragselemente.Columns("Mindestvertragsdauer_bis").Value
Else
Me.txtMindestvertragsdauerbis.Text = ""
End If
If Not Me.C1Vertragselemente.Columns("Unterzeichnet_am").Value Is System.DBNull.Value Then
Me.txtUnterzeichnetam.Text = Me.C1Vertragselemente.Columns("Unterzeichnet_am").Value
Else
Me.txtUnterzeichnetam.Text = ""
End If
If Not Me.C1Vertragselemente.Columns("Gekuendigt_am").Value Is System.DBNull.Value Then
Me.txtGekuendigtam.Text = Me.C1Vertragselemente.Columns("Gekuendigt_am").Value
Else
Me.txtGekuendigtam.Text = ""
End If
If Not Me.C1Vertragselemente.Columns("Gekuendigt_per").Value Is System.DBNull.Value Then
Me.txtGekuendigtper.Text = Me.C1Vertragselemente.Columns("Gekuendigt_per").Value
Else
Me.txtGekuendigtper.Text = ""
End If
Me.cboxSecurityLevel.SelectedValue = Me.C1Vertragselemente.Columns("SecurityLevelNr").Value
Try
Me.rbbefristet.Checked = Me.C1Vertragselemente.Columns("befristet_unbefristet").Value
If Me.rbbefristet.Checked = False Then Me.rbUnbefristet.Checked = True
Catch
Me.rbbefristet.Checked = False
Me.rbUnbefristet.Checked = True
End Try
Me.txtErstelltam.Text = Me.C1Vertragselemente.Columns("Erstellt_am").Value
Me.txtMutiertam.Text = Me.C1Vertragselemente.Columns("Mutiert_am").Value
Me.txtMutierer.Text = Me.C1Vertragselemente.Columns("Mutierername").Value
Try
Me.cbaktiv.Checked = Me.C1Vertragselemente.Columns("aktiv").Value = True
Catch ex As Exception
Me.cbaktiv.Checked = True
End Try
Catch ex As Exception
End Try
End Sub
Private Function update_details(ByRef s As String, ByVal c1element As String)
Try
If Not Me.C1Vertragselemente.Columns(c1element).Value Is System.DBNull.Value Then
s = Me.C1Vertragselemente.Columns(c1element).Value
Else
s = ""
End If
Catch ex As Exception
s = ""
End Try
End Function
''' <summary>
''' Reihenfolge der Register im Tabcontrol anpassen
''' </summary>
''' <remarks></remarks>
Private Sub Order_Tabcontrol()
Try
If Me.Profil.sV_Register.Value = "" Then Exit Sub
Dim tabs() As String
Dim i As Integer = 0
tabs = Me.Profil.sV_Register.Value.Split(";")
For Each tb As String In tabs
If tb = "" Then Exit For
For Each tbp As TabPage In Me.TabControlDiverse.TabPages
If tbp.Text = tb Then
Try
Me.TabControlDiverse.TabPages.Remove(tbp)
Catch
End Try
Try
Me.TabControlDiverse.TabPages.Insert(i, tbp)
Catch
End Try
i = i + 1
End If
Next
Next
Catch
End Try
End Sub
''' <summary>
''' Kündigungsfristen aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Kuendigungsfrist()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Kuendigungsfristen.Enabled = False
Me.Vertragselement.Get_Kuendigungsfristen(Me.C1Kuendigungsfristen, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
' Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Kuendigungsfristen, "Kuendigungsfrist", Me.Vertragselement.Kuendigungsfristen.Tabledata)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Kuendigungsfristen, "Kuendigungsfrist", Me.Vertragselement.Kuendigungsfristen.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
Me.C1Kuendigungsfristen.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Kuendigungsfristen_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Kuendigungsfristen.FetchRowStyle
Try
If Me.C1Kuendigungsfristen.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
''' <summary>
''' Kontakte aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Kontakte()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Kontakte.Enabled = False
Me.Vertragselement.Get_Vertragskontakte(Me.C1Kontakte, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
' Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Kontakte, "Vertragskontakt", Me.Vertragselement.Vertragskontakte.Tabledata)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Kontakte, "Vertragskontakt", Me.Vertragselement.Vertragskontakte.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1Kontakte.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Kontakte_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Kontakte.FetchRowStyle
Try
If Me.C1Kontakte.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
''' <summary>
''' Dokumente aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Dokumente()
Try
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Dokumente.Enabled = False
Me.Vertragselement.Get_Dokumente(Me.C1Dokumente, Me.C1Vertragselemente.Columns("Vertragselementnr").Value, Me.ImageListeDocIcon)
' Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Dokumente, "Dokument", Me.Vertragselement.dokumente.Tabledata.Tables(0), False)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Dokumente, "dokument", Me.Vertragselement.dokumente, Me.Profil.sV_Aktiv_Vertragselemente.Value)
Me.C1Dokumente.Enabled = True
Me.Vertragselement.dispose()
Catch ex As Exception
End Try
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Dokumente_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Dokumente.FetchRowStyle
Try
If Me.C1Dokumente.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
''' <summary>
''' Ereignisse aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Ereignisse()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Ereignisse.Enabled = False
Me.Vertragselement.Get_Vertragsereignisse(Me.C1Ereignisse, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Ereignisse, "Vertragsereignis", Me.Vertragselement.Vertragsereignisse.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1Ereignisse.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Ereignisse_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Ereignisse.FetchRowStyle
Try
If Me.C1Ereignisse.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
''' <summary>
''' Pendenzen aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Pendenzen()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Ereignisse.Enabled = False
Me.Vertragselement.Get_Pendenzen(Me.C1Pendenzen, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Pendenzen, "Pendenz", Me.Vertragselement.Pendenzen.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1Pendenzen.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Pendenzen_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Pendenzen.FetchRowStyle
Try
If Me.C1Pendenzen.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
If Me.C1Pendenzen.Columns("PendenzStatusNr").CellValue(e.Row) < 3 Then
If Me.C1Pendenzen.Columns("Termin").Value < Now Then
Dim fnt As Font = e.CellStyle.Font
e.CellStyle.ForeColor = Color.Red
End If
End If
Catch
End Try
End Sub
''' <summary>
''' Referenzverträge aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Referenzvertraege()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1ReferenzVertraege.Enabled = False
Me.Vertragselement.Get_Vertragselement_Referenzen(Me.C1ReferenzVertraege, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1ReferenzVertraege, "Vertragselement_Referenz", Me.Vertragselement.Vertragselement_Referenzen.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Try
Dim bmp0 As New Bitmap(Me.ImageListeReferenzVertrasege.Images(1))
Dim bmp1 As New Bitmap(Me.ImageListeReferenzVertrasege.Images(0))
Dim v0 As New C1.Win.C1TrueDBGrid.ValueItem()
Dim v1 As New C1.Win.C1TrueDBGrid.ValueItem()
v0.DisplayValue = bmp0
v0.Value = 0
v1.DisplayValue = bmp1
v1.Value = 1
Me.C1ReferenzVertraege.Columns("Owner").ValueItems.Values.Add(v0)
Me.C1ReferenzVertraege.Columns("Owner").ValueItems.Values.Add(v1)
Me.C1ReferenzVertraege.Columns("Owner").ValueItems.Translate = True
Me.C1ReferenzVertraege.Enabled = True
Catch ex As Exception
End Try
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1ReferenzVertraege_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1ReferenzVertraege.FetchRowStyle
Try
If Me.C1ReferenzVertraege.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
'Try
' If Me.C1ReferenzVertraege.Columns("Owner").CellValue(e.Row) = 0 Then
' e.CellStyle.BackColor = Color.CadetBlue
' End If
'Catch ex As Exception
'End Try
End Sub
''' <summary>
''' Services aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_services()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Services.Enabled = False
Me.Vertragselement.Get_Services(Me.C1Services, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Services, "Vertragsleistung", Me.Vertragselement.Services.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1Services.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Services_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Services.FetchRowStyle
Try
If Me.C1Services.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
''' <summary>
''' History aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_History()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1History.Enabled = False
Me.Vertragselement.Get_History(Me.C1History, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1History, "History", Me.Vertragselement.History.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1History.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Applikationen aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Applikationen()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Applikationen.Enabled = False
Me.Vertragselement.Get_Applikationen(Me.C1Applikationen, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Applikationen, "Vertragselementapplikation", Me.Vertragselement.VertragselementApplikationen.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1Applikationen.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Applikationen_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Applikationen.FetchRowStyle
Try
If Me.C1Applikationen.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
''' <summary>
''' Aktivitäten aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Refresh_Aktivitaeten()
Me.Vertragselement = New TKB.VV.Vertrag.clsVertragselement
Me.C1Aktivitaeten.Enabled = False
Me.Vertragselement.Get_Aktivitaeten(Me.C1Aktivitaeten, Me.C1Vertragselemente.Columns("Vertragselementnr").Value)
Me.SpaltenTitel.Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(Me.C1Aktivitaeten, "Aktivitaet", Me.Vertragselement.Aktivitaeten.Tabledata.Tables(0), Me.Profil.sV_Aktiv_Vertragselemente.Value)
sec.Set_Form_Security(Me)
Me.C1Aktivitaeten.Enabled = True
Me.Vertragselement.dispose()
End Sub
''' <summary>
''' Bei inaktiven Einträgen Schrift "grau" setzen und durchstreichen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub C1Aktivitaeten_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Aktivitaeten.FetchRowStyle
Try
If Me.C1Aktivitaeten.Columns("aktiv").CellValue(e.Row) = False Then
Dim FNT As Font = e.CellStyle.Font
e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout)
e.CellStyle.ForeColor = Color.Gray
End If
Catch
End Try
End Sub
#End Region
#Region "Generic Event-Handler-Ereignisse"
Private Sub evh_FormularVertragelement_Closed(ByVal Vertragspartnernr As Integer, ByVal Vertragselementnr As Integer) Handles evh.FormularVertragelement_Closed
Try
Refresh_All()
Catch ex As Exception
End Try
End Sub
Private Sub evh_FormularVertragspartner_Closed(ByVal Vertragspartnernr As Integer) Handles evh.FormularVertragspartner_Closed
Try
Refresh_All()
Catch ex As Exception
End Try
End Sub
Private Sub Refresh_Register() Handles evh.Update_Uebersicht
Me.Update_Details()
End Sub
#End Region
#Region "Dokumente"
''' <summary>
''' Dokument ab Datenbank anzeigen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub DokumentAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DokumentAnzeigenToolStripMenuItem.Click
Try
Dim tmpdok As New TKB.VV.DMS.clsDok
tmpdok.Show_Doc(Me.C1Dokumente.Columns("Dokumentnr").Value)
tmpdok.Dispose()
Catch ex As Exception
End Try
End Sub
''' <summary>
''' Dokument ab Datenbank anzeigen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks>Steht der MenuEintrag DokumentAnzeigenToolStripMenuIte nicht
''' zur Verfügung, muss der Doppelclick ignoriert werden</remarks>
Private Sub C1Dokumente_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Dokumente.DoubleClick
If Me.DokumentAnzeigenToolStripMenuItem.Enabled = False Then
Exit Sub
End If
Try
Me.DokumentAnzeigenToolStripMenuItem_Click(sender, e)
Catch
End Try
End Sub
#End Region
#Region "Profile"
''' <summary>
''' Profilliste des Mitarbeiters aktualisieren
''' </summary>
''' <remarks></remarks>
Private Sub Profile_Aktualisieren(Optional ByVal Aktuelles_Profil As String = "")
Me.Profil.Get_Profil_By_Mitarbeiter()
Me.TSComboboxProfil.Items.Clear()
Dim i As Integer = 0
Dim SelIndex As Integer = -1
For Each dr As DataRow In Me.Profil.Profildata.Rows
Me.TSComboboxProfil.Items.Add(dr.Item("Bezeichnung"))
If Aktuelles_Profil = dr.Item("Bezeichnung") Then SelIndex = i
i = i + 1
Next
If SelIndex > -1 Then Me.TSComboboxProfil.SelectedIndex = SelIndex
End Sub
''' <summary>
''' Bestehendes Profl auswählen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSComboboxProfil_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TSComboboxProfil.SelectedIndexChanged
Me.C1Vertragselemente.DataSource = Nothing
Me.Profil.Set_Aktuelles_Profil(Me.TSComboboxProfil.Text)
Me.cbInaktiv.Checked = Me.Profil.bV_Aktiv_Vertragspartner = True
Me.rbSortVertragspartner.Checked = False
Me.rbSortVertragstyp.Checked = False
If Me.Profil.bSelektionsart.Value = True Then
Me.rbSortVertragspartner.Checked = True
Else
Me.rbSortVertragstyp.Checked = True
End If
Me.TreeStruktur_Click(sender, e)
Me.Order_Tabcontrol()
End Sub
''' <summary>
''' Neues Profil erstellen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub TSBrnNeuesProfil_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim a As String = InputBox(msg.Get_Meldungstext(503))
If a <> "" Then
If UCase(a) = "STANDARD" Then
msg.show_standardmessage(504, MsgBoxStyle.Information)
Exit Sub
End If
Me.Profil.Set_Aktuelles_Profil(Me.Profil.Add_New(a))
Me.ProfilspeichernToolStripMenuItem_Click(sender, e)
Me.Profile_Aktualisieren(a)
End If
End Sub
#End Region
Private Sub GruppieToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GruppieToolStripMenuItem.Click
If Me.C1Vertragselemente.DataView = C1.Win.C1TrueDBGrid.DataViewEnum.Normal Then
Me.C1Vertragselemente.DataView = C1.Win.C1TrueDBGrid.DataViewEnum.GroupBy
Else
Me.C1Vertragselemente.DataView = C1.Win.C1TrueDBGrid.DataViewEnum.Normal
End If
End Sub
Private Sub RegisterSpeichernToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RegisterSpeichernToolStripMenuItem.Click
Dim s As String = ""
For Each tbp As TabPage In Me.TabControlDiverse.TabPages
s = s + tbp.Text + ";"
Next
Me.Profil.sV_Register = New SqlString(CType(s, String))
Me.Profil.Save_Data()
Me.Docs.Save_LayoutFile(Me.C1Vertragselemente, 1, Me.Profil.iProfilnr.Value)
msg.show_standardmessage_ReplaceText(505, MsgBoxStyle.Information, Me.Profil.sBezeichnung.Value, "")
End Sub
''' <summary>
''' Neues Profil erstellen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub NeuesProfilToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NeuesProfilToolStripMenuItem.Click
Dim a As String = InputBox(msg.Get_Meldungstext(503))
If a <> "" Then
If UCase(a) = "STANDARD" Then
msg.show_standardmessage(504, MsgBoxStyle.Information)
Exit Sub
End If
Me.Profil.Set_Aktuelles_Profil(Me.Profil.Add_New(a))
Me.ProfilspeichernToolStripMenuItem_Click(sender, e)
Me.Profile_Aktualisieren(a)
End If
End Sub
''' <summary>
''' Profil löschen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub ProfilLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProfilLöschenToolStripMenuItem.Click
If msg.Show_MessageYesNo(500) = MsgBoxResult.Yes Then
Me.Profil.Delete_Profil(Me.Profil.iProfilnr.Value)
Profile_Aktualisieren()
End If
End Sub
''' <summary>
''' Profil speichern
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub ProfilspeichernToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProfilspeichernToolStripMenuItem.Click
Me.Profil.bSelektionsart = New SqlBoolean(CType(Me.rbSortVertragspartner.Checked, Boolean))
Me.Profil.bV_Aktiv_Vertragspartner = New SqlBoolean(CType(Me.cbInaktiv.Checked, Boolean))
Me.Profil.sV_Aktiv_Vertragselemente = New SqlString(CType(Me.C1Vertragselemente.Columns("aktiv").FilterText, String))
Me.Profil.Save_Data()
Me.Docs.Save_LayoutFile(Me.C1Vertragselemente, 1, Me.Profil.iProfilnr.Value)
msg.show_standardmessage(502, MsgBoxStyle.Information)
End Sub
''' <summary>
''' Profil Editieren
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub ProfilBearbeitenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProfilBearbeitenToolStripMenuItem.Click
Dim f As New frmProfilVerwaltung(Me.C1Vertragselemente, Me.Profil.iProfilnr.Value, Me.TabControlDiverse)
f.ShowDialog()
Me.Profile_Aktualisieren(f.txtBezeichnung.Text)
Me.Profil.Get_Profil(Me.Profil.iProfilnr.Value)
Me.Order_Tabcontrol()
End Sub
''' <summary>
''' Alle Knoten im Tree schliessen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub AlleKnotenSchliessenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AlleKnotenSchliessenToolStripMenuItem.Click
Me.TreeStruktur.CollapseAll()
End Sub
''' <summary>
''' Alle Knoten im Tree öffnen
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub AlleKnotenÖffnenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AlleKnotenÖffnenToolStripMenuItem.Click
Me.TreeStruktur.ExpandAll()
End Sub
Private Sub TStxtSuche_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TStxtSuche.KeyDown
If e.KeyCode = Keys.Enter Then
Me.TSBtnSuche_Click(sender, e)
Else
Me.TStxtSucheInhalt.Text = ""
End If
End Sub
Private Sub TStxtSucheInhalt_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TStxtSucheInhalt.KeyDown
If e.KeyCode = Keys.Enter Then
Me.TSBtnSucheInhalt_Click(sender, e)
Else
Me.TStxtSuche.Text = ""
End If
End Sub
Private Sub TSBtnFilterAufheben_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnFilterAufheben.Click
Me.TStxtSucheInhalt.Text = ""
Me.TStxtSuche.Text = ""
Strukturen.Get_Struktur(Me.TreeStruktur, 0, Me.cbInaktiv.Checked, 1, "")
Try
Me.TreeStruktur.SelectedNode = Me.TreeStruktur.Nodes(0)
Me.TreeStruktur_Click(sender, e)
Catch ex As Exception
End Try
End Sub
Private Sub EinzelnerVertragsparterToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EinzelnerVertragsparterToolStripMenuItem.Click
Dim t As TKB.VV.Vertrag.Treenode_Descriptor = Me.TreeStruktur.SelectedNode.Tag
Dim f As New frmVertragsuebersicht(t.Vertragspartnernr)
f.MdiParent = Me.MdiParent
f.Show()
End Sub
Private Sub txtVertragsende_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtVertragsende.TextChanged, txtVertragsbegin.TextChanged, _
txtVersionsdatum.TextChanged, txtGekuendigtam.TextChanged, txtGekuendigtper.TextChanged, txtMindestvertragsdauerbis.TextChanged, txtUnterzeichnetam.TextChanged
Dim objtype As System.Type = sender.GetType
If objtype.Name = "MaskedTextBox" Then
Dim o As MaskedTextBox = sender
If o.Text = "01.01.1900" Then o.Text = " . . "
End If
End Sub
''' <summary>
''' Laden der Securitylevel-Daten in die Combobox
''' </summary>
''' <remarks></remarks>
Private Sub Load_Securitylevel()
Dim seclevel As New TKB.VV.DB.clsSecurityLevel
Dim secleveldata As New DataTable
seclevel.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
secleveldata = seclevel.SelectAll
Globals.conn.CloseConnection(True)
Me.cboxSecurityLevel.DataSource = secleveldata
Me.cboxSecurityLevel.DisplayMember = "Bezeichnung"
Me.cboxSecurityLevel.ValueMember = "SecurityLevelNr"
seclevel.Dispose()
End Sub
Private Sub RegisterSpeichernDokumentToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RegisterSpeichernDokumentToolStripMenuItem.Click
RegisterSpeichernToolStripMenuItem_Click(sender, e)
End Sub
Private Sub TreeStruktur_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeStruktur.AfterSelect
Refresh_Details()
End Sub
End Class