Imports C1.Win.C1TrueDBGrid Imports System Imports System.Data Imports System.Data.SqlTypes Imports System.Data.SqlClient Public Class frmVertragselement #Region "Deklarationen" Dim Vertragselement As New TKB.VV.Vertrag.clsVertragselement Dim sec As New TKB.VV.Utils.MySecurity Dim msg As New TKB.VV.Utils.MyMessage Dim FormReadonly As Boolean = False Dim FormDataChanged As Boolean = False Dim SpaltenTitel As New TKB.VV.Utils.Tabellenspalte Dim ApplTree As New TKB.VV.Applikation.clsApplikationTree Dim Save_Vertragstyp As Integer Private Aktueller_Vertragspartner As Integer = 0 Private Aktuelles_Vertragselement As Integer = 0 Private Anzeige As Boolean = False Dim Neuer_Datensatz As Boolean = False ''' ''' Generic Event-Handler ''' ''' Dim WithEvents evh As MyGenericEventHandler = Globals.MyEventHanlder Dim Save_LizenzTabPage As TabPage Dim Save_ApplicationTabPage As TabPage Dim WithEvents xxx As New ComboIcon Dim On_Load As Boolean = False Dim Multiline As New TabControlMultiLine #End Region #Region "Closing / Check_Changes" ''' ''' Schliessen des Formulars ''' ''' ''' ''' Private Sub ClosingForm(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing If Me.FormReadonly = True Then Exit Sub If check_changes() = False Then e.Cancel = True Else If Me.Vertragselement.Neuer_Datensatz = True Then Me.Vertragselement.Delete(Me.Vertragselement.iVertragselementnr.Value) Globals.MyEventHanlder.Vertragselement_Closed(Me.Aktueller_Vertragspartner, Me.Aktuelles_Vertragselement) Me.Vertragselement.dispose() Me.msg.dispose() Me.SpaltenTitel = Nothing Me.sec = Nothing Me.dispose() End If End Sub ''' ''' Prüfung, ob Datenänderungen vorgenommen wurden. ''' ''' Private Function Check_Changes(Optional ByVal reload As Boolean = False) As Boolean If Me.FormReadonly Then Return True Dim msgres As MsgBoxResult If Me.FormDataChanged Then msgres = msg.Show_MessageYesNoCancel(3) Select Case msgres Case MsgBoxResult.Yes Save_data() Return True Case MsgBoxResult.Cancel Return False Case MsgBoxResult.No If reload = True Then Me.Get_Data(Me.Aktuelles_Vertragselement) End If Me.FormDataChanged = False Return True End Select Else Return True End If End Function #End Region #Region "Formular" ''' ''' Standard Constructore New ''' ''' Sub New() InitializeComponent() Me.Aktuelles_Vertragselement = -1 End Sub ''' ''' Formualr mit Vertragselementnr und Anzeigestatus öffnen ''' ''' Nr des Vertragspartners ''' True=Readonly, False=normal ''' Sub New(ByVal Vertragselementnr As Integer, ByVal Anzeige As Boolean, Optional ByVal CreateNew As Boolean = False, Optional ByVal Vertragspartnernr As Integer = 0) MyBase.New() InitializeComponent() Me.Aktuelles_Vertragselement = Vertragselementnr Me.Anzeige = Anzeige If CreateNew Then If Vertragspartnernr = 0 Then While Vertragselement.Vertragspartner_suchen(Me.Aktueller_Vertragspartner, Me.txtVertragspartner) = False msg.show_standardmessage(900, MsgBoxStyle.Critical) End While Me.Aktuelles_Vertragselement = Me.Vertragselement.Add_New(Me.Aktueller_Vertragspartner) Else Me.Aktueller_Vertragspartner = Vertragspartnernr Me.Aktuelles_Vertragselement = Me.Vertragselement.Add_New(Me.Aktueller_Vertragspartner) End If Me.Neuer_Datensatz = True End If End Sub ''' ''' Dispose ''' ''' Public Overloads Sub dispose() Me.Vertragselement.dispose() sec = Nothing msg = Nothing MyBase.Dispose() End Sub ''' ''' Load-Methode ''' ''' ''' ''' Private Sub frmVertragselement_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try Multiline.Set_Multiline(Me.TabControlDiverse) Catch End Try Me.On_Load = True If Anzeige = True Then Me.TSBtnSuche.Enabled = False Me.TSBtnSave.Enabled = False Else Me.TSBtnSuche.Enabled = True End If sec.Set_Form_Security(Me) If Me.TSBtnSave.Enabled = False Or Me.TSBtnSave.Visible = False Then Me.FormReadonly = True Me.TSBtnCopy.Enabled = False Me.TSBtnNew.Enabled = False Me.TSBtnDelete.Enabled = False Else Me.FormReadonly = False End If Me.Save_LizenzTabPage = Me.TabControlDiverse.TabPages("TabLizenz") Me.Save_ApplicationTabPage = Me.TabControlDiverse.TabPages("TabApplikation") Load_Securitylevel() 'Vertragstypen laden Me.cboxVertragstyp.DataSource = Me.Vertragselement.Vertragstypen Me.cboxVertragstyp.DisplayMember = "Vertragstyp" Me.cboxVertragstyp.ValueMember = "VertragstypNr" AddChanges(Me) Get_Data(Me.Aktuelles_Vertragselement) If Me.cboxVertragstyp.SelectedValue = 4 Then Dim fnt As New Font("Courier New", 8.25) Me.txtBeschreibung.Font = fnt End If If Me.FormReadonly Then sec.Set_Form_Readonly(Me) End If Me.FormDataChanged = False Me.cboxVertragstyp.Focus() Me.On_Load = False End Sub ''' ''' Shown-Ereigns ''' ''' ''' ''' Private Sub frmVertragselement_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown 'If Me.Aktuelles_Vertragselement = -1 Then ' TSBtnSuche_Click(sender, e) ' End If End Sub ''' ''' Index-Wechsel auf TabControlDiverse ''' ''' ''' ''' Private Sub TabControlDiverse_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControlDiverse.SelectedIndexChanged Refresh_Registerlasche() End Sub ''' ''' Änderung des Parent-Auswahl. Prüfung, ob das Element ausgewählt werden kann ''' ''' ''' Private Sub cbboxParentTree_AfterSelect(ByVal sender As System.Object) Handles cbboxParentTree.AfterSelect Try If cbboxParentTree.SelectedNode.Tag = Me.Vertragselement.iVertragselementnr.Value Then msg.show_standardmessage(306, MsgBoxStyle.Critical) Me.cbboxParentTree.SelectedNode = Me.Vertragselement.Parentelemente.FindNode(Me.cbboxParentTree.TreeView.Nodes, 0, "") End If Catch ex As Exception End Try End Sub ''' ''' Aktuelle Registerlasche aktualisieren ''' ''' Private Sub Refresh_Registerlasche() Select Case Me.TabControlDiverse.SelectedTab.Text Case "Vertragsinhalt", "Suchbegriffe" Case "Applikationen" Refresh_Applikationen() Case "Kündigungsfristen" Refresh_Kuendigungsfrist() Case "Kontakte" Refresh_Kontakte() Case "Dokumente" Refresh_Dokumente() Case "Services" Refresh_Services() Case "Ereignisse" Refresh_Vertragsereignisse() Case "Aktivitäten" Refresh_Aktivitaeten() Case "Pendenzen" Refresh_Pendenzen() Case "Referenzverträge" Refresh_Vertragselement_Referenzen() Case "History" Refresh_History() End Select End Sub #End Region #Region "Buttons/Menu" ''' ''' Formular schliessen ''' ''' ''' ''' Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click Me.Close() End Sub ''' ''' Sicherungs-Button betätigt ''' ''' ''' ''' Private Sub TSBtnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnSave.Click Me.Save_data() Me.txtMutiertam.Text = Me.Vertragselement.daMutiert_am.ToString Me.Save_Vertragstyp = Me.cboxVertragstyp.SelectedValue Me.FormDataChanged = False End Sub ''' ''' Datensatz kopieren ''' ''' ''' ''' Private Sub TSBtnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnCopy.Click If Me.Check_Changes = False Then Exit Sub Me.Get_Data(Vertragselement.Create_Copy(Me.Vertragselement.iVertragselementnr.Value)) Me.Vertragselement.Neuer_Datensatz = True End Sub ''' ''' Neuer Datensatz erstellen ''' ''' ''' ''' Private Sub TSBtnNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnNew.Click If Me.Check_Changes = False Then Exit Sub If Me.txtVertragspartner.Enabled = False Then While Vertragselement.Vertragspartner_suchen(Me.Aktueller_Vertragspartner, Me.txtVertragspartner) = False msg.show_standardmessage(900, MsgBoxStyle.Critical) End While Me.Aktuelles_Vertragselement = Me.Vertragselement.Add_New(Me.Aktueller_Vertragspartner) Me.Get_Data(Me.Vertragselement.Add_New(Me.Aktueller_Vertragspartner)) Else Me.Aktuelles_Vertragselement = Me.Vertragselement.Add_New(Me.Aktueller_Vertragspartner) End If Me.Get_Data(Me.Aktuelles_Vertragselement) Me.Vertragselement.Neuer_Datensatz = True End Sub ''' ''' Aktueller Datensatz inaktivieren ''' ''' ''' ''' Private Sub TSBtnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnDelete.Click If msg.Show_MessageYesNo(251) = MsgBoxResult.Yes Then If Me.Vertragselement.Generate_Pendenz(Me.Vertragselement.iVertragselementnr.Value, Me.txtVertragspartner.Text.ToString, True, 0) = MsgBoxResult.Cancel Then Exit Sub End If Me.Vertragselement.Delete_Vertragselement(Me.Vertragselement.iVertragselementnr.Value) Me.Close() End If End Sub ''' ''' Menu Beenden ''' ''' ''' ''' Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click Me.TSBtnQuit_Click(sender, e) End Sub ''' ''' Vertragspartner suchen ''' ''' ''' ''' Private Sub TSBtnSuche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnSuche.Click If Not Me.FormReadonly Then Check_Changes() Dim i As Integer If Me.Vertragselement.Suchen(i) = True Then Me.Get_Data(i) End If End Sub ''' ''' Vertragspartner suchen. Sofern dieser gewechselt wird, die Parentid des Vertragselementes auf 0 setzen und cbboxParentTree neu aufbauen ''' ''' ''' ''' Private Sub btnVertragspartnersuche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVertragspartnersuche.Click If Not Me.FormReadonly Then If Me.Vertragselement.Check_Is_Parent_Has_Childs(Me.Aktuelles_Vertragselement) = True Then msg.show_standardmessage(856, MsgBoxStyle.Critical) Exit Sub End If If Vertragselement.Vertragspartner_suchen(Me.Aktueller_Vertragspartner, Me.txtVertragspartner) = True Then Me.Vertragselement.iParentID = New SqlInt32(CType(0, Int32)) Me.cbboxParentTree.TreeView.Nodes.Clear() Me.Vertragselement.Parentelemente.Load_ParentElemente(Me.Vertragselement.iVertragspartnerNr.Value, Me.Vertragselement.iParentID.Value, Me.cbboxParentTree.TreeView) Application.DoEvents() Me.cbboxParentTree.TreeView.Visible = False End If End If End Sub #End Region #Region "Eventhandler ChangeEreignisse" ''' ''' Allg Eventhandler für Chanage-Ereignise festlegen ''' ''' ''' Private Sub AddChanges(ByVal Container As Control) Dim l As New List(Of Control) Me.GetControl(Me, "*", l) Dim evh As EventHandler = AddressOf ChangesMade For Each c As Control In l If TypeOf c Is TextBox Then Dim ctl As TextBox = c AddHandler ctl.TextChanged, evh End If If TypeOf c Is MaskedTextBox Then Dim ctl As MaskedTextBox = c AddHandler ctl.TextChanged, evh End If If TypeOf c Is ComboBox Then Dim ctl As ComboBox = c AddHandler ctl.SelectedValueChanged, evh End If If TypeOf c Is CheckBox Then Dim ctl As CheckBox = c AddHandler ctl.CheckedChanged, evh End If Next AddHandler txtBeschreibung.TextChanged, evh AddHandler txtSuchbegriffe.TextChanged, evh End Sub ''' ''' Envent-Handler für Change-Ereignisse ''' ''' ''' ''' Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) Me.FormDataChanged = True 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 ''' ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung ''' ''' Base-Contrlo (z.B. aktuelles Formular ''' Schlüssel welcher gesucht werden soll ''' Liste der gefundenen Objekte ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. ''' ''' Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean If L Is Nothing Then L = New List(Of Control) Dim Gut As Boolean Dim ReturnFlag As Boolean = False If Key IsNot Nothing Then Key = Key.ToLower If BaseControl.HasChildren = True Then For Each ctl As Control In BaseControl.Controls Gut = False If Key Is Nothing Then Gut = True Else If ctl.Name.Length >= Key.Length Then Key = Key.ToLower If Key.StartsWith("*") Then If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True ElseIf Key.EndsWith("*") Then If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True Else If Key = ctl.Name.ToLower Then Gut = True End If End If End If If Gut = True Then L.Add(ctl) If ReturnAtFirstElement = True Then ReturnFlag = True End If If ReturnFlag = False Then Call GetControl(ctl, Key, L) End If Next End If If L.Count - 1 > -1 Then Return True Else Return False End If End Function Private Sub dtPicker_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles _ dtPickerVertragsbegin.Leave, dtPickerVertragsende.Leave, dtPickerMindestvertragsdauerbis.Leave, _ dtPickerUnterzeichnetam.Leave, dtPickerVersionsdatum.Leave, dtPickerGekuendigtam.Leave, dtPickerGekuendigtper.Leave Dim s As String Dim obj As DateTimePicker = sender s = obj.Name Check_Datum(Me.Vertragselement.iVertragselementnr.Value, obj.Value, obj.Name) End Sub ''' ''' Handelt das Change-Ereignis eines Datetimepckers und stellt das ausgewählte Datum in das entsprechende Textfeld ''' ''' ''' ''' Private Sub DateTimePicker_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _ dtPickerVertragsbegin.ValueChanged, dtPickerVertragsende.ValueChanged, dtPickerMindestvertragsdauerbis.ValueChanged, _ dtPickerUnterzeichnetam.ValueChanged, dtPickerVersionsdatum.ValueChanged, dtPickerGekuendigtam.ValueChanged, dtPickerGekuendigtper.ValueChanged Dim s As String Dim obj As DateTimePicker = sender s = obj.Name s = "txt" + s.Substring(8, s.Length - 8) Dim l As New List(Of Control) Dim txtb As MaskedTextBox GetControl(Me, s, l) For Each ctl As Control In l txtb = CType(ctl, MaskedTextBox) txtb.Text = obj.Value Next If obj.Name = "dtPickerVertragsende" Then txtVertragsende_Leave(sender, e) End If End Sub #End Region #Region "Daten" ''' ''' Daten ab DB laden uns ins Form befüllen ''' ''' ''' Private Sub Get_Data(ByVal Vertragselementnr As Integer) If Vertragselementnr < 1 Then Me.pnlStammdaten.Enabled = False Me.TabControlDiverse.Enabled = False For Each ctl As ToolStripButton In Me.ToolStrip1.Items ctl.Enabled = False Next Me.TSBtnQuit.Enabled = True Me.TSBtnSuche.Enabled = True Me.TSBtnNew.Enabled = True sec.Set_Form_Security(Me) Me.FormDataChanged = False Exit Sub End If Try Vertragselement.Get_Vertragselement(Vertragselementnr) Me.cbboxParentTree.TreeView.Nodes.Clear() Me.Vertragselement.Parentelemente.Load_ParentElemente(Me.Vertragselement.iVertragspartnerNr.Value, Me.Vertragselement.iParentID.Value, Me.cbboxParentTree.TreeView) Application.DoEvents() Me.cbboxParentTree.TreeView.Visible = False Me.txtVertragspartner.Text = Vertragselement.Vertragspartnername Me.Aktueller_Vertragspartner = Vertragselement.iVertragspartnerNr.Value Me.Aktuelles_Vertragselement = Vertragselement.iVertragselementnr.Value Me.cboxVertragstyp.SelectedValue = Vertragselement.iVertragstypNr.Value Me.Save_Vertragstyp = Me.cboxVertragstyp.SelectedValue Me.txtBezeichnung.Text = Vertragselement.sBezeichnung.ToString Me.txtVersion.Text = Vertragselement.sVersion.ToString Me.txtVertragsnummer.Text = Vertragselement.sNummer.ToString Me.txtVersion.Text = Vertragselement.sVersion.ToString Me.txtVersionsdatum.Text = Vertragselement.daVersionsdatum.ToString Me.txtVertragsbegin.Text = Vertragselement.daVertragsbeginn.ToString Me.txtVertragsende.Text = Vertragselement.daVertragsablauf.ToString Me.txtMindestvertragsdauerbis.Text = Vertragselement.daMindestvertragsdauer_bis.ToString Me.txtUnterzeichnetam.Text = Vertragselement.daUnterzeichnet_am.ToString Me.txtGekuendigtam.Text = Vertragselement.daGekuendigt_am.ToString Me.txtGekuendigtper.Text = Vertragselement.daGekuendigt_per.ToString Try Me.rbbefristet.Checked = Vertragselement.bBefristet_Unbefristet.Value = True If Me.rbbefristet.Checked = False Then Me.rbUnbefristet.Checked = True Catch Me.rbbefristet.Checked = False Me.rbUnbefristet.Checked = True End Try Me.txtErstelltam.Text = Vertragselement.daErstellt_am.ToString Me.txtMutiertam.Text = Vertragselement.daMutiert_am.ToString Me.txtMutierer.Text = Vertragselement.iMutierer.ToString Try Me.cbaktiv.Checked = Vertragselement.bAktiv.Value = True Catch ex As Exception Me.cbaktiv.Checked = True End Try Me.txtBeschreibung.Text = Vertragselement.sBeschreibung.ToString Me.txtSuchbegriffe.Text = Vertragselement.sSuchbegriffe.ToString Me.cboxSecurityLevel.SelectedValue = Vertragselement.iSecurityLevelNr.Value If Me.Vertragselement.IsLizenzElement Then End If Me.pnlStammdaten.Enabled = True Me.TabControlDiverse.Enabled = True If Not Anzeige And Not Me.FormReadonly Then For Each ctl As ToolStripButton In Me.ToolStrip1.Items ctl.Enabled = True Next End If sec.Set_Form_Security(Me) Me.FormDataChanged = False Me.TabControlDiverse_SelectedIndexChanged(Nothing, Nothing) Set_Titel() Me.txtMutierer.Text = Me.Vertragselement.MutiererText Catch ex As Exception Me.pnlStammdaten.Enabled = False Me.TabControlDiverse.Enabled = False For Each ctl As ToolStripButton In Me.ToolStrip1.Items ctl.Enabled = False Next Me.TSBtnQuit.Enabled = True Me.TSBtnSuche.Enabled = True Me.TSBtnNew.Enabled = True sec.Set_Form_Security(Me) End Try Me.FormDataChanged = False End Sub ''' ''' Daten ab Form speichern ''' ''' Private Sub Save_data() Vertragselement.iVertragspartnerNr = New SqlInt32(CType(Me.Aktueller_Vertragspartner, Int32)) Vertragselement.iVertragstypNr = New SqlInt32(CType(Me.cboxVertragstyp.SelectedValue, Int32)) Vertragselement.iParentID = New SqlInt32(CType(Me.cbboxParentTree.SelectedNode.Tag, Int32)) Vertragselement.sBezeichnung = New SqlString(CType(Me.txtBezeichnung.Text, String)) Vertragselement.sVersion = New SqlString(CType(Me.txtVersion.Text, String)) Vertragselement.sNummer = New SqlString(CType(Me.txtVertragsnummer.Text, String)) If IsDate(Me.txtVersionsdatum.Text) Then Vertragselement.daVersionsdatum = New SqlDateTime(CType(Me.txtVersionsdatum.Text, DateTime)) Else Vertragselement.daVersionsdatum = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If If IsDate(Me.txtVertragsbegin.Text) Then Vertragselement.daVertragsbeginn = New SqlDateTime(CType(Me.txtVertragsbegin.Text, DateTime)) Else Vertragselement.daVertragsbeginn = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If If IsDate(Me.txtVertragsende.Text) Then Vertragselement.daVertragsablauf = New SqlDateTime(CType(Me.txtVertragsende.Text, DateTime)) Else Vertragselement.daVertragsablauf = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If If IsDate(Me.txtMindestvertragsdauerbis.Text) Then Vertragselement.daMindestvertragsdauer_bis = New SqlDateTime(CType(Me.txtMindestvertragsdauerbis.Text, DateTime)) Else Vertragselement.daMindestvertragsdauer_bis = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If If IsDate(Me.txtUnterzeichnetam.Text) Then Vertragselement.daUnterzeichnet_am = New SqlDateTime(CType(Me.txtUnterzeichnetam.Text, DateTime)) Else Vertragselement.daUnterzeichnet_am = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If If IsDate(Me.txtGekuendigtam.Text) Then Vertragselement.daGekuendigt_am = New SqlDateTime(CType(Me.txtGekuendigtam.Text, DateTime)) Else Vertragselement.daGekuendigt_am = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If If IsDate(Me.txtGekuendigtper.Text) Then Vertragselement.daGekuendigt_per = New SqlDateTime(CType(Me.txtGekuendigtper.Text, DateTime)) Else Vertragselement.daGekuendigt_per = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If Vertragselement.bBefristet_Unbefristet = New SqlBoolean(CType(Me.rbbefristet.Checked = True, Boolean)) Dim save_aktiv As Boolean = Vertragselement.bAktiv.Value Vertragselement.bAktiv = New SqlBoolean(CType(Me.cbaktiv.Checked = True, Boolean)) Vertragselement.sBeschreibung = New SqlString(CType(Me.txtBeschreibung.Text, String)) Vertragselement.sSuchbegriffe = New SqlString(CType(Me.txtSuchbegriffe.Text, String)) Vertragselement.iSecurityLevelNr = New SqlInt32(CType(Me.cboxSecurityLevel.SelectedValue, Int32)) Vertragselement.iApplikationNr = New SqlInt32(CType(0, Int32)) Vertragselement.iLizenztypnr = New SqlInt32(CType(0, Int32)) Vertragselement.sLizenzdetails = New SqlString(CType("", String)) If save_aktiv <> Vertragselement.bAktiv.Value And Vertragselement.bAktiv.Value = False Then If msg.Show_MessageYesNo(251) = MsgBoxResult.Yes Then If Me.Vertragselement.Generate_Pendenz(Me.Vertragselement.iVertragselementnr.Value, Me.txtVertragspartner.Text.ToString, True, 0) = MsgBoxResult.Cancel Then Me.cbaktiv.Checked = save_aktiv Exit Sub End If Else Me.cbaktiv.Checked = save_aktiv Exit Sub End If End If Vertragselement.Save_Data() If save_aktiv <> Vertragselement.bAktiv.Value And Vertragselement.bAktiv.Value = False Then Me.Vertragselement.Delete_Vertragselement(Me.Vertragselement.iVertragselementnr.Value) End If Me.FormDataChanged = False End Sub #End Region #Region "Security" ''' ''' Laden der Securitylevel-Daten in die Combobox ''' ''' 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 #End Region #Region "Kündigungsfristen" ''' ''' Kündigungsfristen aktualisieren ''' ''' Private Sub Refresh_Kuendigungsfrist() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Kuendigungsfristen.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Kuendigungsfristen.Bookmark Me.C1Kuendigungsfristen.Enabled = False Me.Vertragselement.Get_Kuendigungsfristen(Me.C1Kuendigungsfristen) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Kuendigungsfristen, "Kuendigungsfrist", Me.Vertragselement.Kuendigungsfristen.Tabledata) If filtertext <> "none" Then Me.C1Kuendigungsfristen.Columns("Aktiv").FilterText = filtertext Disable_Enable_Menu(Me.KuendigungsfristMenuStrip, Me.C1Kuendigungsfristen) Try Me.C1Kuendigungsfristen.Bookmark = bm Catch ex As Exception End Try Me.C1Kuendigungsfristen.Enabled = True End Sub ''' ''' Rowstyle von inaktiven Kündigungsfristen ''' ''' ''' ''' 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 ''' ''' Mousedown Kündigungsfristen ''' ''' ''' ''' Private Sub C1Kuendigungsfristen_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Kuendigungsfristen.MouseDown Me.C1Kuendigungsfristen.Bookmark = Me.C1Kuendigungsfristen.RowContaining(e.Y) End Sub ''' ''' Kuendigungsfrist bearbeiten / anzeigen ''' ''' ''' ''' Ist der MenuEintrag KuendigungsfristBearbeitenToolStripMenuItem disabled, ''' wird der Doppelklick ignoriert Private Sub C1Kuendigungsfristen_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C1Kuendigungsfristen.DoubleClick If Me.KuendigungsfristBearbeitenToolStripMenuItem.Enabled = False Then Exit Sub End If Try KuendigungsfristBearbeitenToolStripMenuItem_Click(sender, e) Catch End Try End Sub ''' ''' Neue Kuendigungsfrist erstellen ''' ''' ''' ''' Private Sub KuendigungsfristNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Try ' Dim i As Integer = Me.Vertragselement.Kuendigungsfrist.Add_New(Me.Vertragselement.iVertragselementnr.Value) Dim f As New frmKuendigungsfrist(0, Me.Vertragselement.iVertragselementnr.Value, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch End Try End Sub ''' ''' Kuendigungsfrist inaktivieren ''' ''' ''' ''' Private Sub KuendigungsfristLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Try If msg.Show_MessageYesNo(260) = MsgBoxResult.Yes Then Me.Vertragselement.Kuendigungsfrist.Delete_Kuendigungsfrist(Me.C1Kuendigungsfristen.Columns("Kuendigungsfristnr").Value) evh.Kuendigungsfrist_Geloescht() End If Catch End Try End Sub ''' ''' Kuendigungsfrist bearbeiten / anzeigen ''' ''' ''' ''' 'Private Sub KuendigungsfristBearbeitenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) ' C1Kuendigungsfristen_DoubleClick(sender, e) 'End Sub #End Region #Region "Kontakte" ''' ''' Kontakte aktualisieren ''' ''' ''' Private Sub Refresh_Kontakte() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Kontakte.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Kontakte.Bookmark Me.C1Kontakte.Enabled = False Me.Vertragselement.Get_Vertragskontakte(Me.C1Kontakte) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Kontakte, "Vertragskontakt", Me.Vertragselement.Vertragskontakte.Tabledata) If filtertext <> "none" Then Me.C1Kontakte.Columns("Aktiv").FilterText = filtertext sec.Set_Form_Security(Me) Try Me.C1Kontakte.Bookmark = bm Catch ex As Exception End Try Me.C1Kontakte.Enabled = True End Sub ''' ''' Anzeigen bzw. bearbeitnen eines Kontaktes ''' ''' ''' ''' Private Sub KontaktAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KontaktAnzeigenToolStripMenuItem.Click Try Dim f As New frmVertragskontakt(Me.C1Kontakte.Columns("Vertragskontaktnr").Value, Me.Aktueller_Vertragspartner, Me.Aktuelles_Vertragselement, , Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Rowstyle von inaktiven Kontakten ''' ''' ''' ''' 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 ''' ''' Mousedown Kontakte ''' ''' ''' ''' Private Sub C1Kontakte_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Kontakte.MouseDown Me.C1Kontakte.Bookmark = Me.C1Kontakte.RowContaining(e.Y) End Sub ''' ''' Doppelklick auf einem Kontakt ''' ''' ''' ''' Ist der MenuEintrag KontaktAnzeigenToolStripMenuItem disabled, ''' wird der Doppelklick ignoriert Private Sub C1Kontakte_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Kontakte.DoubleClick If Me.KontaktAnzeigenToolStripMenuItem.Enabled = False Then Exit Sub End If Try Me.KontaktAnzeigenToolStripMenuItem_Click(sender, e) Catch ex As Exception End Try End Sub ''' ''' Neuer Vertragskontakt erstellen ''' ''' ''' ''' Private Sub KontaktNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KontaktNeuToolStripMenuItem.Click Try 'Dim i As Integer = Me.Vertragselement.Vertragskontakt.Add_New(Me.Vertragselement.iVertragselementnr.Value) Dim f As New frmVertragskontakt(0, Me.Aktueller_Vertragspartner, Me.Aktuelles_Vertragselement, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Vertragskontakt inaktivieren ''' ''' ''' ''' Private Sub KontaktLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KontaktLöschenToolStripMenuItem.Click Try If msg.Show_MessageYesNo(265) = MsgBoxResult.Yes Then Me.Vertragselement.Vertragskontakt.Delete_Vertragskontakt(Me.C1Kontakte.Columns("Vertragskontaktnr").Value) evh.Kontakte_Geloescht() End If Catch End Try End Sub #End Region #Region "Dokumente" ''' ''' Dokumetne_Aktualisieren ''' ''' Private Sub Refresh_Dokumente() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Dokumente.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Dokumente.Bookmark Me.C1Dokumente.Enabled = False Me.Vertragselement.Get_Dokumente(Me.C1Dokumente, Me.ImageListeDocIcon) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Dokumente, "Dokument", Me.Vertragselement.dokumente) If filtertext <> "none" Then Me.C1Dokumente.Columns("Aktiv").FilterText = filtertext sec.Set_Form_Security(Me) Try Me.C1Dokumente.Bookmark = bm Catch ex As Exception End Try Me.C1Dokumente.Enabled = True End Sub ''' ''' Dokument anzeigen (Dialog) ''' ''' ''' ''' Private Sub DokumentAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DokumentAnzeigenToolStripMenuItem.Click Try Dim f As New frmDokument(Me.C1Dokumente.Columns("Dokumentnr").Value, 1, Me.Aktuelles_Vertragselement, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Neues Dokument generieren und anzeigen ''' ''' ''' ''' Private Sub DokumentNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DokumentNeuToolStripMenuItem.Click Try Dim f As New frmDokument(0, 1, Me.Vertragselement.iVertragselementnr.Value, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Dokument inaktivieren ''' ''' ''' ''' Private Sub DokumentLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DokumentLöschenToolStripMenuItem.Click Try If msg.Show_MessageYesNo(275) = MsgBoxResult.Yes Then Me.Vertragselement.Dokument.Delete_Dokument(Me.C1Dokumente.Columns("Dokumentnr").Value) evh.Dokumente_Geloscht() End If Catch End Try End Sub ''' ''' Dokument anzeigen - effektives Dokument ''' ''' ''' ''' Private Sub DokumentAnzeigen_Dokument_ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DokumentAnzeigen_Dokument_ToolStripMenuItem.Click Try Me.Vertragselement.Dokument.Show_Doc(Me.C1Dokumente.Columns("Dokumentnr").Value) Catch End Try End Sub ''' ''' Doppelklick eines Eintrages - Dokument-Anzeige (Dialog) ''' ''' ''' ''' Ist der Button DokumentAnzeigenToolStripMenuItem disabled, Doppelklick ignorieren 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 Me.DokumentAnzeigenToolStripMenuItem_Click(sender, e) End Sub ''' ''' Rowstyle von inaktiven Dokumenten ''' ''' ''' ''' 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 ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub C1Dokumente_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Dokumente.MouseDown Me.C1Dokumente.Bookmark = Me.C1Dokumente.RowContaining(e.Y) End Sub #End Region #Region "Vertragsereignisse" ''' ''' Vertragsereignisse aktualiseren ''' ''' Private Sub Refresh_Vertragsereignisse() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Ereignisse.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Ereignisse.Bookmark Me.C1Ereignisse.Enabled = False Me.Vertragselement.Get_Vertragsereignisse(Me.C1Ereignisse) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Ereignisse, "Vertragsereignis", Me.Vertragselement.Vertragsereignisse.Tabledata) sec.Set_Form_Security(Me) If filtertext <> "none" Then Me.C1Ereignisse.Columns("Aktiv").FilterText = filtertext Try Me.C1Ereignisse.Bookmark = bm Catch ex As Exception End Try Me.C1Ereignisse.Enabled = True End Sub ''' ''' Vertragsereignis anzeigen (Dialog) ''' ''' ''' ''' Private Sub EreignisAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EreignisAnzeigenToolStripMenuItem.Click Try Dim f As New frmVertragsereignis(Me.C1Ereignisse.Columns("Ereignisnr").Value, Me.Aktuelles_Vertragselement, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Neues Vertragsereignis erstellen ''' ''' ''' ''' Private Sub EreignisNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EreignisNeuToolStripMenuItem.Click Try Dim f As New frmVertragsereignis(0, Aktuelles_Vertragselement, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Dokument inaktivieren ''' ''' ''' ''' Private Sub EreignisLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EreignisLöschenToolStipMenuItem.Click Try If msg.Show_MessageYesNo(280) = MsgBoxResult.Yes Then Me.Vertragselement.Vertragsereignis.Delete_Ereignis(Me.C1Ereignisse.Columns("Ereignisnr").Value) evh.Ereignis_Geloescht() ' Me.Refresh_Registerlasche() End If Catch End Try End Sub ''' ''' Doppelklick auf einem Vertragsereignis ''' ''' ''' ''' Ist der Button EreignisAnzeigenToolStripMenuItem disabled, Doppelklick ignorieren Private Sub C1Ereignisse_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Ereignisse.DoubleClick If Me.EreignisAnzeigenToolStripMenuItem.Enabled = False Then Exit Sub End If Me.EreignisAnzeigenToolStripMenuItem_Click(sender, e) End Sub ''' ''' Rowstyle von inaktiven Ereignissen ''' ''' ''' ''' 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 ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub C1Vertragsereignis_Mousedown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Ereignisse.MouseDown Me.C1Ereignisse.Bookmark = Me.C1Ereignisse.RowContaining(e.Y) End Sub #End Region #Region "Pendenzen" ''' ''' Vertragsereignisse aktualiseren ''' ''' Private Sub Refresh_Pendenzen() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Pendenzen.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Pendenzen.Bookmark Me.C1Pendenzen.Enabled = False Me.Vertragselement.Get_Pendenzen(Me.C1Pendenzen, Me.Vertragselement.iVertragselementnr.Value) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Pendenzen, "Pendenz", Me.Vertragselement.Pendenzen.Tabledata) sec.Set_Form_Security(Me) If filtertext <> "none" Then Me.C1Pendenzen.Columns("Aktiv").FilterText = filtertext Try Me.C1Pendenzen.Bookmark = bm Catch ex As Exception End Try Me.C1Pendenzen.Enabled = True End Sub ''' ''' Pendenz anzeigen ''' ''' ''' ''' Private Sub PendenzAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PendenzAnzeigenToolStripMenuItem.Click Try Dim f As New frmPendenz(Me.C1Pendenzen.Columns("PendenzNr").Value, Me.Aktuelles_Vertragselement, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Exit Sub Catch End Try End Sub ''' ''' Neue Pendenz erstellen ''' ''' ''' ''' Private Sub PendenzNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PendenzNeuToolStripMenuItem.Click Try Dim f As New frmPendenz(0, Me.Aktuelles_Vertragselement, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Dokument inaktivieren ''' ''' ''' ''' Private Sub PendenzLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PendenzLöschenToolStipMenuItem.Click Try If msg.Show_MessageYesNo(290) = MsgBoxResult.Yes Then Me.Vertragselement.Pendenz.Delete_Pendenz(Me.C1Pendenzen.Columns("Pendenznr").Value) evh.Pendenz_Geloescht() End If Catch End Try End Sub ''' ''' Rowstyle von inaktiven Pendenzen ''' ''' ''' ''' 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").CellValue(e.Row) < Now Then Dim fnt As Font = e.CellStyle.Font e.CellStyle.ForeColor = Color.Red End If End If Catch End Try End Sub ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub CPendenzen_Mousedown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Pendenzen.MouseDown Me.C1Pendenzen.Bookmark = Me.C1Pendenzen.RowContaining(e.Y) End Sub ''' ''' Doppelklick auf eine Pendenz ''' ''' ''' ''' Ist der Button PendenzAnzeigenToolStripMenuItem disabled, Doppelklick ignorieren Private Sub C1Pendenzen_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Pendenzen.DoubleClick If Me.PendenzAnzeigenToolStripMenuItem.Enabled = False Then Exit Sub End If Me.PendenzAnzeigenToolStripMenuItem_Click(sender, e) End Sub Private Sub evh_FormularPendenz_Closed() Handles evh.Update_Uebersicht Try Me.Refresh_Registerlasche() Catch ex As Exception End Try End Sub #End Region #Region "Vertragselement_Referenz" ''' ''' Vertragsereignisse aktualiseren ''' ''' Private Sub Refresh_Vertragselement_Referenzen() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Referenzvertraege.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Referenzvertraege.Bookmark Me.C1Referenzvertraege.Enabled = False Me.Vertragselement.Get_Vertragselement_Referenzen(Me.C1Referenzvertraege, Me.Vertragselement.iVertragselementnr.Value) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Referenzvertraege, "Vertragselement_Referenz", Me.Vertragselement.Vertragselement_Referenzen.Tabledata) sec.Set_Form_Security(Me) If filtertext <> "none" Then Me.C1Referenzvertraege.Columns("Aktiv").FilterText = filtertext 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 Me.C1Referenzvertraege.Splits(0).DisplayColumns("Owner").Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.Center Try Me.C1Referenzvertraege.Bookmark = bm Catch ex As Exception End Try Me.C1Referenzvertraege.Enabled = True End Sub ''' ''' Vertragsrefernz anzeigen ''' ''' ''' ''' Private Sub ReferenzAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReferenzAnzeigenToolStripMenuItem.Click Try Dim f As New frmReferenzvertraege(Me.C1Referenzvertraege.Columns("Referenzvertragsnr").Value, 0, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Neue Vertragsreferenz ''' ''' ''' ''' Private Sub ReferenzNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReferenzNeuToolStripMenuItem.Click Try Dim f As New frmReferenzvertraege(0, Me.Vertragselement.iVertragselementnr.Value, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Inaktivieren eines Eintrages ''' ''' ''' ''' Private Sub ReferenzLoeschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReferenzLoeschenToolStripMenuItem.Click Try If msg.Show_MessageYesNo(290) = MsgBoxResult.Yes Then Me.Vertragselement.Vertragselement_Referenz.Delete_Referenz(Me.C1Referenzvertraege.Columns("Referenzvertragsnr").Value) evh.Refernzvertrag_Geloescht() End If Catch End Try End Sub ''' ''' Doppelklick auf einem Referenz-Eintrag ''' ''' ''' ''' Ist der Button ReferenzAnzeigenToolStripMenuItem disabled, Doppelklick ignorieren Private Sub C1Referenzvertraege_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Referenzvertraege.DoubleClick If Me.ReferenzAnzeigenToolStripMenuItem.Enabled = False Then Exit Sub End If Me.ReferenzAnzeigenToolStripMenuItem_Click(sender, e) End Sub ''' ''' Rowstyle von inaktiven Vertragsreferenzen ''' ''' ''' ''' Private Sub C1Referenzvertraege_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Referenzvertraege.FetchRowStyle 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 End Sub ''' ''' Mousedown ''' ''' ''' ''' Private Sub C1Referenzvertraege_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Referenzvertraege.MouseDown Me.C1Referenzvertraege.Bookmark = Me.C1Referenzvertraege.RowContaining(e.Y) End Sub #End Region #Region "History" ''' ''' History Aktualisieren ''' ''' Private Sub Refresh_History() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1History.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1History.Bookmark Me.C1History.Enabled = False Me.Vertragselement.Get_History(Me.C1History) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1History, "History", Me.Vertragselement.History.Tabledata) If filtertext <> "none" Then Me.C1History.Columns("Aktiv").FilterText = filtertext sec.Set_Form_Security(Me) Try Me.C1History.Bookmark = bm Catch ex As Exception End Try Me.C1History.Enabled = True End Sub #End Region #Region "Context-Menu-Handling" ''' ''' Enabling bzw. Disabling der Menu-Einträge aufgrund der angezeigten Rows im Truedbgrind ''' ''' Zu bearbeitendes Menu ''' Betroffenes Grid ''' ''' Nach dem Setzen der Submenus wird sec.form_Security durchlaufen, damit allfällig standardmössig aktivierte Menueinträge ''' aufgrund der Security-Einstellung wieder deaktiviert werden Private Function Disable_Enable_Menu(ByRef menu As ContextMenuStrip, ByRef c1data As C1TrueDBGrid) If Me.FormReadonly Then For Each obj As Object In menu.Items Dim objtype As System.Type = obj.GetType If LCase(objtype.Name) = "toolstripmenuitem" Then Dim mnu As ToolStripMenuItem = obj If (mnu.Text.IndexOf("Anzeigen") > 0 Or mnu.Text.IndexOf("anzeigen") > 0) And c1data.Splits(0).Rows.Count > 0 Then mnu.Enabled = True Else mnu.Enabled = False End If End If Next sec.Set_Form_Security(Me) Exit Function End If If c1data.Splits(0).Rows.Count = 0 Then For Each obj As Object In menu.Items Dim objtype As System.Type = obj.GetType If LCase(objtype.Name) = "toolstripmenuitem" Then Dim mnu As ToolStripMenuItem = obj If mnu.Text.IndexOf("Neu") > 0 Then mnu.Enabled = True Else mnu.Enabled = False End If End If Next Else For Each obj As Object In menu.Items Dim objtype As System.Type = obj.GetType If LCase(objtype.Name) = "toolstripmenuitem" Then Dim mnu As ToolStripMenuItem = obj mnu.Enabled = True End If Next End If sec.Set_Form_Security(Me) End Function ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' Private Sub KontakteMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles KontakteMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Kontakte) End Sub ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' Private Sub KuendigungsfristMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Me.Disable_Enable_Menu(sender, Me.C1Kuendigungsfristen) End Sub ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' Private Sub DokumenteMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles DokumenteMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Dokumente) End Sub ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' Private Sub EreignisMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles EreignisMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Ereignisse) End Sub ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' Private Sub PendenzenMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles PendenzenMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Pendenzen) End Sub ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' Private Sub ReferenzenMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles ReferenzenMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Referenzvertraege) End Sub Private Sub ServiceMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles ServiceMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Services) End Sub #End Region #Region "Services" ''' ''' Services aktualiseren ''' ''' Private Sub Refresh_Services() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Services.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Services.Bookmark Me.C1Services.Enabled = False Me.Vertragselement.Get_Services(Me.C1Services, Me.Vertragselement.iVertragselementnr.Value) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Services, "Vertragsleistung", Vertragselement.Services.Tabledata) sec.Set_Form_Security(Me) If filtertext <> "none" Then Me.C1Services.Columns("Aktiv").FilterText = filtertext Try Me.C1Services.Bookmark = bm Catch ex As Exception End Try 'Me.C1Services.GroupedColumns.Add(Me.C1Services.Columns("Entrykey")) Me.C1Services.Enabled = True End Sub ''' ''' Vertragsleistung anzeigen ''' ''' ''' ''' Private Sub ServiceAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ServiceAnzeigenToolStripMenuItem.Click Dim f As New frmServicekatalog(Me.C1Services.Columns("Servicekatalognr").Value, True) f.MdiParent = Me.MdiParent f.Show() Exit Sub End Sub ''' ''' Neue Vertragsleistung erstellen ''' ''' ''' ''' Private Sub ServiceNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ServiceNeuToolStripMenuItem.Click Try Me.Vertragselement.Add_Service(Me.Vertragselement.iVertragselementnr.Value, Me) Catch ex As Exception End Try End Sub ''' ''' Vertragsleistung inaktivieren ''' ''' ''' ''' Private Sub ServiceLoeschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ServiceLoeschenToolStripMenuItem.Click Try If msg.Show_MessageYesNo(305) = MsgBoxResult.Yes Then Me.Vertragselement.Service.Delete_Vertragsleistung(Me.C1Services.Columns("vertragsleistungnr").Value) evh.Service_Geloescht() End If Catch ex As Exception End Try End Sub ''' ''' Rowstyle von inaktiven Vertragsleistungen ''' ''' ''' ''' 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 If Me.C1Services.Columns("PendenzStatusNr").CellValue(e.Row) < 3 Then If Me.C1Services.Columns("Termin").CellValue(e.Row) < Now Then Dim fnt As Font = e.CellStyle.Font e.CellStyle.ForeColor = Color.Red End If End If Catch End Try End Sub ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub C1Services_Mousedown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Services.MouseDown Me.C1Services.Bookmark = Me.C1Services.RowContaining(e.Y) Refresh_SLATable() End Sub ''' ''' Doppelklick auf eine Pendenz ''' ''' ''' ''' Ist der Button PendenzAnzeigenToolStripMenuItem disabled, Doppelklick ignorieren Private Sub C1Services_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Services.DoubleClick If Me.ServiceAnzeigenToolStripMenuItem.Enabled = False Then Exit Sub End If Me.ServiceAnzeigenToolStripMenuItem_Click(sender, e) End Sub #Region "SLA" Dim ServiceKatalogSLAKatalog As TKB.VV.Sysadmin.DomainTable Private Sub Refresh_SLATable() Try Check_Changes() Me.ServiceKatalogSLAKatalog.dispose() Catch End Try Dim keyvalue As String = "" keyvalue = Me.C1Services.Columns("ServiceKatalogNr").Value Me.C1SLA.Enabled = False Me.ServiceKatalogSLAKatalog = New TKB.VV.Sysadmin.DomainTable("servicekatalog_slakatalog", keyvalue, Globals.clsmitarbeiter.iMitarbeiternr.Value) Me.C1SLA.DataSource = ServiceKatalogSLAKatalog.Tabledata Me.C1SLA.DataMember = ServiceKatalogSLAKatalog.Tabledata.Tables(0).TableName Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1SLA, "servicekatalog_slakatalog", Me.ServiceKatalogSLAKatalog.Tabledata) Me.C1SLA.Enabled = True End Sub #End Region #End Region #Region "Applikationen" ''' ''' Applikationen aktualiseren ''' ''' Private Sub Refresh_Applikationen() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Applikationen.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Applikationen.Bookmark Me.C1Applikationen.Enabled = False Me.Vertragselement.Get_Applikationen(Me.C1Applikationen, Me.Vertragselement.iVertragselementnr.Value) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Applikationen, "VertragselementApplikation", Me.Vertragselement.VertragselementApplikationen.Tabledata) sec.Set_Form_Security(Me) Try If filtertext <> "none" Then Me.C1Applikationen.Columns("Aktiv").FilterText = filtertext Catch ex As Exception End Try Try Me.C1Applikationen.Bookmark = bm Catch ex As Exception End Try Me.C1Applikationen.Enabled = True End Sub ''' ''' Handelt das Opending-Ereignis des Context-Menus ''' ''' ''' Überi Disable_Enable_Menu werden die Menueinträge aktiviert bzw. deaktiviert ''' ''' ''' ''' ''' 20120919 - Lizenzmenustrip nicht anzeigen Private Sub ApplikationenMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles ApplikationenMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Applikationen) If Me.Vertragselement.Lizenzinformationen.Check_Vertragstyp_Fuer_Lizenz(Me.Save_Vertragstyp) Then Me.ApplikationLizenzenVerwaltenToolStripMenuItem.Visible = False Else Me.ApplikationLizenzenVerwaltenToolStripMenuItem.Visible = False End If Try If Me.Vertragselement.Lizenzinformationen.Check_Lizenzen(Me.C1Applikationen.Columns("Vertragselementapplikationnr").Value) > 0 Then ApplikationInaktivierenToolStripMenuItem.Enabled = False End If Catch ex As Exception End Try Try Dim xx As New TKB.VV.Vertrag.clsVertragselementApplikation Dim dt As New DataTable dt = xx.Get_Lizenzverbindungen(Me.C1Applikationen.Columns("Vertragselementapplikationnr").Value) If dt.Rows.Count > 0 Then ApplikationLizenzenVerwaltenToolStripMenuItem.Visible = True xx.dispose() dt.Dispose() Catch End Try 'xxx - wenn in einer Lizenz vorhanden End Sub ''' ''' Neue Applikation hinzufügen ''' ''' ''' ''' Private Sub ApplikationNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ApplikationNeuToolStripMenuItem.Click Try Dim f As New frmVertragselementApplikationZuweisen(-1, "", Me.Aktuelles_Vertragselement, -1, -1, Me.FormReadonly, False) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try 'Try ' Dim f As New frmVertragselementApplikation(Me.Aktuelles_Vertragselement) ' f.MdiParent = Me.MdiParent ' f.Show() 'Catch ex As Exception 'End Try End Sub ''' ''' Applikation inaktivieren ''' ''' ''' ''' Private Sub ApplikationInaktivierenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ApplikationInaktivierenToolStripMenuItem.Click If msg.Show_MessageYesNo(295) = MsgBoxResult.Yes Then Me.Vertragselement.VertragselementApplikation.Delete_VertragselementApplikation(Me.C1Applikationen.Columns("VertragselementApplikationNr").Value) evh.Vertragsapplikation_Geloescht() End If End Sub ''' ''' Doppelklick auf einen Applikationseintrag ''' ''' ''' ''' Private Sub C1Applikationen_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Applikationen.DoubleClick If Me.AnzeigenToolStripMenuItem.Enabled = False Then Exit Sub End If Me.AnzeigenToolStripMenuItem_Click(sender, e) ' If Me.ApplikationAnzeigenToolStripMenuItem.Enabled = False Then 'Exit Sub 'End If 'Me.ApplikationAnzeigenToolStripMenuItem_Click(sender, e) End Sub ''' ''' Rowstyle von inaktiven Applikationen ''' ''' ''' ''' 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 ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub C1Applikationen_Mousedown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Applikationen.MouseDown Me.C1Applikationen.Bookmark = Me.C1Applikationen.RowContaining(e.Y) End Sub ''' ''' Ereignis bei geschlossenem Applikationsfesnter ''' ''' Private Sub evh_FormularVertragselementApplikation_Closed() Handles evh.Update_Uebersicht Try Me.Refresh_Registerlasche() Catch ex As Exception End Try End Sub ''' ''' Applikation anzeigen ''' ''' ''' ''' Private Sub ApplikationAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ApplikationAnzeigenToolStripMenuItem.Click Dim f As New frmApplikation(Me.C1Applikationen.Columns(2).Value, False) f.MdiParent = Me.MdiParent f.Show() End Sub #End Region #Region "Vertragsereignisse" ''' ''' Vertragsereignisse aktualiseren ''' ''' Private Sub Refresh_Aktivitaeten() Try If Check_Changes(True) = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Aktivitaeten.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Aktivitaeten.Bookmark Me.C1Aktivitaeten.Enabled = False Me.Vertragselement.Get_Aktivitaeten(Me.C1Aktivitaeten) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Aktivitaeten, "Aktivitaet", Me.Vertragselement.Aktivitaeten.Tabledata) sec.Set_Form_Security(Me) If filtertext <> "none" Then Me.C1Aktivitaeten.Columns("Aktiv").FilterText = filtertext Try Me.C1Aktivitaeten.Bookmark = bm Catch ex As Exception End Try Me.C1Aktivitaeten.Enabled = True End Sub ''' ''' Rowstyle von inaktiven Ereignissen ''' ''' ''' ''' 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 ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub C1Aktivitaeten_Mousedown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles c1Aktivitaeten.MouseDown Me.c1Aktivitaeten.Bookmark = Me.c1Aktivitaeten.RowContaining(e.Y) End Sub #End Region Private Sub ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click Me.TSBtnQuit_Click(sender, e) End Sub Private Sub txtBezeichnung_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtBezeichnung.TextChanged Me.set_titel() End Sub Private Sub Set_Titel() Me.Text = "Vertragselement - " + Me.txtBezeichnung.Text End Sub Private Sub txtVertragsende_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtVertragsende.Leave If Trim(Me.txtVertragsende.Text) <> ". ." Then Me.rbbefristet.Checked = True Me.rbUnbefristet.Checked = False Else Me.rbbefristet.Checked = False Me.rbUnbefristet.Checked = True End If End Sub Private Sub btnSearchAppl_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Try Dim f As New frmVertragselementApplikation(Me.Aktuelles_Vertragselement, True) f.ShowDialog() If f.SelectedApplication <> 0 Then ' Me.cbboxApplikationTree.SelectedNode = Me.ApplTree.FindNode(Me.cbboxApplikationTree.TreeView.Nodes, f.SelectedApplication, "") End If Catch ex As Exception End Try End Sub Private Sub KuendigungsfristBearbeitenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KuendigungsfristBearbeitenToolStripMenuItem.Click Dim f As New frmVertragsereignis(Me.C1Kuendigungsfristen.Columns("Ereignisnr").Value, Me.Aktuelles_Vertragselement, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() End Sub 'Private Sub cboxVertragstyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboxVertragstyp.SelectedIndexChanged ' If Me.On_Load = True Then Exit Sub ' Try ' Dim ds As New DataSet ' Me.Vertragselement.Get_Applikationen(Me.C1Applikationen, Me.Vertragselement.iVertragselementnr.Value) ' ds = Me.C1Applikationen.DataSource ' Dim ac As Integer = 0 ' For Each dr As DataRow In ds.Tables(0).Rows ' If dr.Item("Lizenzen") = 1 And dr.Item("aktiv") = True Then ac = ac + 1 ' Next ' ds.Dispose() ' If ac <> 0 Then ' msg.show_standardmessage(802, MsgBoxStyle.Critical) ' Me.cboxVertragstyp.SelectedValue = Me.Save_Vertragstyp ' Me.FormDataChanged = False ' End If ' Catch ' End Try 'End Sub Private Sub cboxVertragstyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboxVertragstyp.SelectedIndexChanged Dim TypUrsprung_Lizenzelement As Boolean = False Dim TypNeu_Lizenzelement As Boolean = False Try TypUrsprung_Lizenzelement = Me.Vertragselement.Lizenzinformationen.Check_Vertragstyp_Fuer_Lizenz(Me.Save_Vertragstyp) TypNeu_Lizenzelement = Me.Vertragselement.Lizenzinformationen.Check_Vertragstyp_Fuer_Lizenz(Me.cboxVertragstyp.SelectedValue) If TypUrsprung_Lizenzelement = True And TypNeu_Lizenzelement = False Then If Me.Vertragselement.Lizenzinformationen.aktive_lizenzinformationen_vorhanden(Me.Aktuelles_Vertragselement) Then If Me.Vertragselement.Lizenzinformationen.aktive_lizenzinformationen_vorhanden(Me.Aktuelles_Vertragselement) Then msg.show_standardmessage(803, MsgBoxStyle.Critical) Me.cboxVertragstyp.SelectedValue = Me.Save_Vertragstyp Me.FormDataChanged = True Exit Sub End If End If End If Me.Save_Vertragstyp = Me.cboxVertragstyp.SelectedValue Catch ex As Exception End Try Try Me.Vertragselement.IsLizenzElement = Me.Vertragselement.Lizenzinformationen.Check_Vertragstyp_Fuer_Lizenz(Me.cboxVertragstyp.SelectedValue) Catch End Try End Sub Private Sub ApplikationLizenzenVerwaltenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ApplikationLizenzenVerwaltenToolStripMenuItem.Click 'Dim f As New FrmLizenz(Me.Vertragselement.iVertragselementnr.Value, Me.C1Applikationen.Columns("Applikationnr").Value, Me.FormReadonly, Me.C1Applikationen.Columns("ApplikationVersionNr").Value) 'Dim f As New FrmLizenz(Me.C1Applikationen.Columns("Vertragselementapplikationnr").Value, Me.FormReadonly, Me.C1Applikationen.Columns("Applikationnr").Value) 'f.ShowDialog() 'Me.Refresh_Applikationen() Dim liznr As Integer = 0 Try Dim xx As New TKB.VV.Vertrag.clsVertragselementApplikation Dim dt As New DataTable dt = xx.Get_Lizenzverbindungen(Me.C1Applikationen.Columns("Vertragselementapplikationnr").Value) liznr = dt.Rows(0).Item("Lizenznr") If dt.Rows.Count > 0 Then ApplikationLizenzenVerwaltenToolStripMenuItem.Visible = True xx.dispose() dt.Dispose() Catch End Try Dim F As New frmLizenzverwaltung(liznr, Me.FormReadonly, Me.C1Applikationen.Columns("Applikationnr").Value) 'Dim f As New frmLizenzverwaltung(liznr) f.MdiParent = Me.MdiParent f.Show() End Sub Private Sub AnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AnzeigenToolStripMenuItem.Click Try Dim f As New frmVertragselementApplikationZuweisen(Me.C1Applikationen.Columns("Applikationnr").Value, Me.C1Applikationen.Columns("Applikation").Value, Me.Aktuelles_Vertragselement, Me.C1Applikationen.Columns("VertragselementApplikationNr").Value, Me.C1Applikationen.Columns("Version").Value.ToString, Me.FormReadonly, Me.C1Applikationen.Columns("Lizenzen").Value) f.ShowDialog() Catch End Try End Sub Private Sub C1Applikationen_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles C1Applikationen.KeyUp If Globals.clsmitarbeiter.iMitarbeiternr.Value = 1 And e.KeyCode = Keys.A Then Try Dim f As New frmVertragselementApplikationZuweisen(Me.C1Applikationen.Columns("Applikationnr").Value, Me.C1Applikationen.Columns("Applikation").Value, Me.Aktuelles_Vertragselement, Me.C1Applikationen.Columns("VertragselementApplikationNr").Value, Me.C1Applikationen.Columns("Version").Value.ToString, Me.FormReadonly, Me.C1Applikationen.Columns("Lizenzen").Value) f.MdiParent = Me.MdiParent f.Show() Catch End Try End If If Globals.clsmitarbeiter.iMitarbeiternr.Value = 1 And e.KeyCode = Keys.B Then Try Dim f As New FrmLizenz(Me.C1Applikationen.Columns("Vertragselementapplikationnr").Value, Me.FormReadonly, Me.C1Applikationen.Columns("Applikationnr").Value) f.MdiParent = Me.MdiParent f.Show() Catch End Try End If End Sub Private Sub txtVertragsbegin_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles _ txtVertragsbegin.Leave, txtVertragsende.Leave, txtGekuendigtam.Leave, txtGekuendigtper.Leave, _ txtMindestvertragsdauerbis.Leave, txtUnterzeichnetam.Leave Dim obj As MaskedTextBox = sender Check_Datum(Me.Vertragselement.iVertragselementnr.Value, obj.Text, obj.Name) End Sub Private Sub Check_Datum(ByVal Vertragselementnr As Integer, ByVal Datum As String, ByVal element As String) Dim dt As New DataTable If Not IsDate(Datum) Then Datum = "01.01.1900" dt = Me.Vertragselement.Datumscheck(Me.Vertragselement.iVertragselementnr.Value, Datum, element, Me.cbboxParentTree.SelectedNode.Tag) Dim titel As String = "Datumsprüfung Vertragselement: " + Me.Vertragselement.sBezeichnung.ToString Try Dim formopen As Boolean = False Dim dtpform As frmDatumspruefung Dim p As Form = Me.ParentForm For Each windows As Form In p.MdiChildren If windows.Name = "frmDatumspruefung" Then formopen = True dtpform = windows End If Next If formopen = True And dt.Rows.Count > 0 Then dtpform.C1Pruefresultate.DataSource = dt dtpform.Text = titel dtpform.C1Pruefresultate.DataMember = dt.TableName dtpform.Spalten_Aktualisieren() dtpform.TopMost = True dtpform.BringToFront() dtpform.Show() Exit Sub End If If dt.Rows.Count > 0 Then Dim f As New frmDatumspruefung f.C1Pruefresultate.DataSource = dt f.C1Pruefresultate.DataMember = dt.TableName f.MdiParent = Me.MdiParent f.Text = titel f.Spalten_Aktualisieren() 'Me.SpaltenTitel.Spaltentitel_aktualisieren(f.C1Pruefresultate, "Datumspruefung", dt) f.Show() End If 'dt.Dispose() Catch ex As Exception End Try End Sub Private Sub AktualisierenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AktualisierenToolStripMenuItem.Click Me.cbboxParentTree.TreeView.Nodes.Clear() Me.Vertragselement.Parentelemente.Load_ParentElemente(Me.Vertragselement.iVertragspartnerNr.Value, Me.Vertragselement.iParentID.Value, Me.cbboxParentTree.TreeView) Application.DoEvents() Me.cbboxParentTree.TreeView.Visible = False End Sub End Class