Imports C1.Win.C1TrueDBGrid Imports System.IO.File Imports System.IO Imports System.Data.SqlClient Imports System.Data.SqlTypes Public Class frmApplikation #Region "Deklarationen" Dim Applikation As New TKB.VV.Applikation.clsApplikation Dim Treeviewdata As New TKB.VV.Applikation.clsApplikationTree Dim TreeParent As New TKB.VV.Applikation.clsApplikationTree 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 Private Anzeige As Boolean = False Dim Aktuelle_Applikation As Integer = 0 ''' ''' Generic Event-Handler ''' ''' Dim WithEvents evh As MyGenericEventHandler = Globals.MyEventHanlder #End Region #Region "Closing / Check_Changes" ''' ''' Schliessen des Formulars ''' ''' ''' ''' Private Sub FormularClosing(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 Applikation.dispose() Me.Dispose() End If End Sub ''' ''' Prüfung, ob Datenänderungen vorgenommen wurden. ''' ''' Private Function Check_Changes() As Boolean If Me.FormReadonly Then Return True Exit Function End If Me.DiagramControl1.Check_Changes() 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 Me.FormDataChanged = False Return True End Select Else Return True End If End Function #End Region #Region "Formular" Sub New() InitializeComponent() End Sub Sub New(ByVal Applikationsnr As Integer, Optional ByVal Anzeige As Boolean = False) InitializeComponent() Me.Aktuelle_Applikation = Applikationsnr Me.FormReadonly = Anzeige If Me.Aktuelle_Applikation <> 0 Then Dim app As New TKB.VV.DB.clsApplikation app.cpMainConnectionProvider = Globals.conn app.iApplikationNr = New SqlInt32(CType(Me.Aktuelle_Applikation, Int32)) app.SelectOne() If app.bAktiv.Value = False Then Me.cboxNurAktive.Checked = False End If app.Dispose() End If End Sub Sub New(ByVal CreateNew As Boolean) InitializeComponent() If CreateNew Then Me.Aktuelle_Applikation = Me.Applikation.Add_New End If End Sub Private Sub frmApplikation_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Treeviewdata.Load_Tree(Me.TreeApplikationen, False, "", Me.cboxNurAktive.Checked) If Anzeige = True Then Me.FormReadonly = True 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 Load_Securitylevel() Me.cboxRFCBoard.DataSource = Applikation.RFCBoards Me.cboxRFCBoard.DisplayMember = "Bezeichnung" Me.cboxRFCBoard.ValueMember = "Keyvalue" Me.cbboxVerantwortung.DataSource = Applikation.Verantwortungen Me.cbboxVerantwortung.DisplayMember = "Bezeichnung" Me.cbboxVerantwortung.ValueMember = "Keyvalue" Me.cbboxKategorie.DataSource = Applikation.kategorien Me.cbboxKategorie.DisplayMember = "Bezeichnung" Me.cbboxKategorie.ValueMember = "ApplikationKategorieNr" Me.cbboxMarktbereich.DataSource = Applikation.Marktbereiche Me.cbboxMarktbereich.DisplayMember = "Bezeichnung" Me.cbboxMarktbereich.ValueMember = "Keyvalue" Me.cbboxKritikalität.DataSource = Applikation.Kritikalitaeten Me.cbboxKritikalität.DisplayMember = "Bezeichnung" Me.cbboxKritikalität.ValueMember = "ApplikationKritikalitaetTypNr" Me.cbboxSLM.DataSource = Applikation.SLMs Me.cbboxSLM.DisplayMember = "Bezeichnung" Me.cbboxSLM.ValueMember = "ApplikationSLMTypNr" Me.lboxInstalliertals.DataSource = Applikation.Installiertals Me.lboxInstalliertals.DisplayMember = "Bezeichnung" Me.lboxInstalliertals.ValueMember = "InstallationAlsTypNr" Me.lboxInstalliertauf.DataSource = Applikation.Installiertauf Me.lboxInstalliertauf.DisplayMember = "Bezeichnung" Me.lboxInstalliertauf.ValueMember = "InstallationTypNr" Me.lboxStandardFuer.DataSource = Applikation.InstallationStandard Me.lboxStandardFuer.DisplayMember = "Bezeichnung" Me.lboxStandardFuer.ValueMember = "ApplikationStandardTypNr" Me.cbboxTestaufwand.DataSource = Applikation.TestAufwendungen Me.cbboxTestaufwand.DisplayMember = "Bezeichnung" Me.cbboxTestaufwand.ValueMember = "ApplikationTestAZNr" Me.cbboxPeriodizitaet.DataSource = Me.Applikation.Periodizitäten Me.cbboxPeriodizitaet.DisplayMember = "Bezeichnung" Me.cbboxPeriodizitaet.ValueMember = "Periodizitaetnr" Me.cbboxAdministriertdurch.DataSource = Me.Applikation.SDAdministratoren Me.cbboxAdministriertdurch.DisplayMember = "Bezeichnung" Me.cbboxAdministriertdurch.ValueMember = "SDAdministratorNr" cbboxVerantwortung_SelectedIndexChanged(sender, e) TreeParent.Load_Tree(Me.cbboxParentTree.TreeView, True) AddChanges(Me) If Me.Aktuelle_Applikation <> 0 Then Me.TreeApplikationen.SelectedNode = Me.Treeviewdata.FindNode(Me.TreeApplikationen.Nodes, Me.Aktuelle_Applikation, "") End If ' Get_Data(Me.Aktuelle_Applikation) If Me.FormReadonly Then sec.Set_Form_Readonly(Me) If Me.Aktuelle_Applikation <> 0 Then Me.TreeApplikationen.SelectedNode = Me.Treeviewdata.FindNode(Me.TreeApplikationen.Nodes, Me.Aktuelle_Applikation, Me.Aktuelle_Applikation) Else Me.TreeApplikationen.SelectedNode = Me.TreeApplikationen.Nodes(0) End If Me.DiagramControl1.FormReadOnly = Me.FormReadonly 'Me.DiagramControl1.FormReadOnly = True End Sub Private Sub TreeApplikationen_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeApplikationen.AfterSelect If Me.Check_Changes = False Then Exit Sub If Me.TreeApplikationen.SelectedNode.Tag < 1 Then Me.TabControlApplikation.Enabled = False Exit Sub End If Me.TabControlApplikation.Enabled = True Me.Aktuelle_Applikation = Me.TreeApplikationen.SelectedNode.Tag Me.Get_Data(Me.Aktuelle_Applikation) Me.Refresh_Registerlasche() 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.txtmutiert_am.Text = Me.Applikation.daMutiert_am.ToString Me.FormDataChanged = False If Me.tstxtSuche.Text <> "" Then Treeviewdata.Load_Tree(Me.TreeApplikationen, False, Me.tstxtSuche.Text, Me.cboxNurAktive.Checked) Else Treeviewdata.Load_Tree(Me.TreeApplikationen, False, "", Me.cboxNurAktive.Checked) End If Me.TreeApplikationen.SelectedNode = Treeviewdata.FindNode(Me.TreeApplikationen.Nodes, Me.Applikation.iApplikationNr.Value, "") 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(Applikation.Create_Copy(Me.Applikation.iApplikationNr.Value)) 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 Me.Get_Data(Me.Applikation.Add_New) 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(295) = MsgBoxResult.Yes Then Me.Applikation.Delete_Applikation(Me.Applikation.iApplikationNr.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 Treeviewdata.Load_Tree(Me.TreeApplikationen, False, Me.tstxtSuche.Text, Me.cboxNurAktive.Checked) Try Me.TreeApplikationen.SelectedNode = Me.TreeApplikationen.Nodes(0) Catch ex As Exception End Try End Sub #End Region #Region "Daten" ''' ''' Daten ab DB laden uns ins Form befüllen ''' ''' ''' Private Sub Get_Data(ByVal Applikationnr As Integer) Try Applikation.Get_Applikation(Applikationnr) Me.txtBezeichnung.Text = Applikation.sBezeichnung.Value Dim i As Integer = Me.cbboxParentTree.TreeView.Height Me.cbboxParentTree.TreeView.Height = 0 Me.cbboxParentTree.TreeView.Visible = True Me.cbboxParentTree.SelectedNode = Me.TreeParent.FindNode(Me.cbboxParentTree.TreeView.Nodes, Applikation.iParentID.Value, "") Application.DoEvents() Me.cbboxParentTree.TreeView.Visible = False Me.cbboxParentTree.TreeView.Height = i Me.cbboxVerantwortung.SelectedValue = Applikation.iApplikationVerantwortungNr.Value Me.cbboxTeam.SelectedValue = Applikation.iApplikationTeamnr.Value Me.cbboxKategorie.SelectedValue = Applikation.iApplikationKategorieNr.Value Me.cbboxMarktbereich.SelectedValue = Applikation.iMarktbereichnr.Value Me.txtInaktivseit.Text = Applikation.daInaktivseit.ToString Me.txtVersion.Text = Applikation.sVersion.Value Me.cbalsProdukt.Checked = Applikation.bAlsProdukt.Value = True Me.cbLizenzerfassung.Checked = Applikation.bNurLizenz.Value = True Me.txtPrioWiederanlauf.Text = Applikation.sPrioWiederanlauf.Value Me.cboxSecurityLevel.SelectedValue = Applikation.iSecurityLevelNr.Value Me.cboxRFCBoard.SelectedValue = Applikation.iRfcBoardNr.Value Me.txterstellt_am.Text = Applikation.daErstellt_am.ToString Me.txtmutiert_am.Text = Applikation.daMutiert_am.ToString Me.txtmutierer.Text = Applikation.iMutierer.ToString Me.cbAktiv.Checked = Applikation.bAktiv.Value = True Me.cbRAS.Checked = Applikation.bRAS.Value = True Me.txtDBName.Text = Applikation.sDatenbankname.Value Me.txtAnzInstallationen.Text = Applikation.sAnzahl_Installationen.Value Me.txtKurzbeschreibung.Text = Applikation.sKurzbeschreibung.Value If Microsoft.VisualBasic.Left(Me.txtKurzbeschreibung.Text, 7) = "- Modul" Then Dim fnt As New Font("Courier New", 8.25) Me.txtKurzbeschreibung.Font = fnt End If Me.cbTicketXPertVerwendung.Checked = Applikation.bTicketXPertVerwendung.Value = True If Me.cbTicketXPertVerwendung.Checked = False Then Me.grpTicketXpert.Enabled = False Else Me.grpTicketXpert.Enabled = True End If Try Me.cbboxTestaufwand.SelectedValue = Applikation.sTest_Aufwand.Value.ToString Catch ex As Exception Me.cbboxTestaufwand.SelectedValue = 1 End Try Me.txtTestArbeitsplaetze.Text = Applikation.sTest_Arbeitsplaetze.Value Me.txtAbhaengigkeiten.Text = Applikation.sTest_Abhaengigkeiten.Value Me.txtBemerkung.Text = Applikation.sTest_Bemerkung.Value Me.cbWPIAnzeigen.Checked = Applikation.bTicketXPert_WPIAnzeigen.Value = True Me.txtWPIPreis.Text = Applikation.sTicketXPert_Preis.Value Me.txtPreisEinmalig.Text = Applikation.sTicketXPert_Preis_Einmalig.Value Me.cbAMAnzeigen.Checked = Applikation.bTicketXPert_AMAnzeigen.Value = True Me.cbboxKritikalität.SelectedValue = Applikation.iTicketXPert_ApplikationKritikalitaetTypNr.Value Me.cbboxSLM.SelectedValue = Applikation.iTicketXPert_ApplikationSMLTypNr.Value Set_Checkedlistbox(Me.lboxInstalliertauf, Me.Applikation.ApplikationInstallationTyp) Set_Checkedlistbox(Me.lboxInstalliertals, Me.Applikation.ApplikationInstallationals) Set_Checkedlistbox(Me.lboxStandardFuer, Me.Applikation.ApplikationInstallationFuer) Me.cbSensitiveDaten.Checked = Me.Applikation.bSensitiveDaten.Value = True Me.txtSensitiveDaten.Text = Me.Applikation.sSensitiveDatenBemerkung.Value Me.cbboxAdministriertdurch.SelectedValue = Me.Applikation.iSensitiveDatenAdministriertdurch.Value Me.TxtUeberwachung.Text = Me.Applikation.sSensitiveDatenUeberwachungBemerkung.Value Me.cbboxPeriodizitaet.SelectedValue = Me.Applikation.iSensitiveDatenUeberwachungPeriodizitaet.Value Me.TxtUser.Text = Me.Applikation.sSensitiveDatenUserBemerkung.Value Me.TxtAnzComit.Text = Me.Applikation.iSensitiveDatenAnzahlComit.Value Me.txtAnzExterne.Text = Me.Applikation.iSensitiveDatenAnzahlExterne.Value Try Me.cbAktiv.Checked = Applikation.bAktiv.Value = True Catch ex As Exception Me.cbAktiv.Checked = True End Try If Not Anzeige And Not Me.FormReadonly Then For Each o As Object In Me.ToolStrip1.Items If o.GetType.Name = "ToolStripButton" Then o.Enabled = True End If Next 'For Each ctl As ToolStripButton In Me.ToolStrip1.Items ' Try ' ctl.Enabled = True ' Catch ' End Try 'Next End If sec.Set_Form_Security(Me) Me.FormDataChanged = False Catch ex As Exception Try For Each ctl As ToolStripButton In Me.ToolStrip1.Items ctl.Enabled = False Next Catch End Try Me.TSBtnQuit.Enabled = True Me.TSBtnSuche.Enabled = True End Try Me.FormDataChanged = False End Sub Private Sub Set_Checkedlistbox(ByRef clb As CheckedListBox, ByRef data As DataTable) Dim i As Integer For i = 0 To clb.Items.Count - 1 clb.SetItemCheckState(i, CheckState.Unchecked) Next Dim chk As Integer = 0 Dim ii As Integer Dim oc As CheckedListBox.ObjectCollection = clb.Items For i = 0 To data.Rows.Count - 1 For ii = 0 To oc.Count - 1 If oc.Item(ii).item(0) = data.Rows(i).Item(2) Then clb.SetItemCheckState(ii, CheckState.Checked) End If Next Next End Sub ''' ''' Daten ab Form speichern ''' ''' Private Sub Save_data() Applikation.sBezeichnung = New SqlString(CType(Me.txtBezeichnung.Text, String)) Applikation.iParentID = New SqlInt32(CType(Me.cbboxParentTree.SelectedNode.Tag, Int32)) Applikation.iApplikationVerantwortungNr = New SqlInt32(CType(Me.cbboxVerantwortung.SelectedValue, Int32)) Applikation.iApplikationTeamnr = New SqlInt32(CType(Me.cbboxTeam.SelectedValue, Int32)) Applikation.iApplikationKategorieNr = New SqlInt32(CType(Me.cbboxKategorie.SelectedValue, Int32)) Applikation.iMarktbereichnr = New SqlInt32(CType(Me.cbboxMarktbereich.SelectedValue, Int32)) If IsDate(Me.txtInaktivseit.Text) Then Applikation.daInaktivseit = New SqlDateTime(CType(Me.txtInaktivseit.Text, DateTime)) Else Applikation.daInaktivseit = New SqlDateTime(CType(SqlDateTime.Null, DateTime)) End If Applikation.sVersion = New SqlString(CType(Me.txtVersion.Text, String)) Applikation.bAlsProdukt = New SqlBoolean(CType(Me.cbalsProdukt.Checked = True, Boolean)) Applikation.bNurLizenz = New SqlBoolean(CType(Me.cbLizenzerfassung.Checked = True, Boolean)) Applikation.sPrioWiederanlauf = New SqlString(CType(Me.txtPrioWiederanlauf.Text, String)) Applikation.iSecurityLevelNr = New SqlInt32(CType(Me.cboxSecurityLevel.SelectedValue, Int32)) Applikation.iRfcBoardNr = New SqlInt32(CType(Me.cboxRFCBoard.SelectedValue, Int32)) Applikation.bAktiv = New SqlBoolean(CType(Me.cbAktiv.Checked = True, Boolean)) Applikation.bRAS = New SqlBoolean(CType(Me.cbRAS.Checked = True, Boolean)) Applikation.sDatenbankname = New SqlString(CType(Me.txtDBName.Text, String)) Applikation.sAnzahl_Installationen = New SqlString(CType(Me.txtAnzInstallationen.Text, String)) Applikation.sKurzbeschreibung = New SqlString(CType(Me.txtKurzbeschreibung.Text, String)) If Me.cbboxTestaufwand.SelectedText = "" Then Me.cbboxTestaufwand.SelectedValue = 1 Applikation.sTest_Aufwand = New SqlString(CType(Me.cbboxTestaufwand.SelectedValue, String)) Applikation.sTest_Arbeitsplaetze = New SqlString(CType(Me.txtTestArbeitsplaetze.Text, String)) Applikation.sTest_Abhaengigkeiten = New SqlString(CType(Me.txtAbhaengigkeiten.Text, String)) Applikation.sTest_Bemerkung = New SqlString(CType(Me.txtBemerkung.Text, String)) Applikation.bTicketXPertVerwendung = New SqlBoolean(CType(Me.cbTicketXPertVerwendung.Checked = True, Boolean)) Applikation.bTicketXPert_WPIAnzeigen = New SqlBoolean(CType(Me.cbWPIAnzeigen.Checked = True, Boolean)) Applikation.sTicketXPert_Preis = New SqlString(CType(Me.txtWPIPreis.Text, String)) Applikation.sTicketXPert_Preis_Einmalig = New SqlString(CType(Me.txtPreisEinmalig.Text, String)) Applikation.bTicketXPert_AMAnzeigen = New SqlBoolean(CType(Me.cbAMAnzeigen.Checked = True, Boolean)) Applikation.iTicketXPert_ApplikationKritikalitaetTypNr = New SqlInt32(CType(Me.cbboxKritikalität.SelectedValue, Int32)) Applikation.iTicketXPert_ApplikationSMLTypNr = New SqlInt32(CType(Me.cbboxSLM.SelectedValue, Int32)) Me.Applikation.bSensitiveDaten = New SqlBoolean(CType(Me.cbSensitiveDaten.Checked, Boolean)) Me.Applikation.sSensitiveDatenBemerkung = New SqlString(CType(Me.txtSensitiveDaten.Text, String)) Me.Applikation.iSensitiveDatenAdministriertdurch = New SqlInt32(CType(Me.cbboxAdministriertdurch.SelectedValue, Int32)) Me.Applikation.sSensitiveDatenUeberwachungBemerkung = New SqlString(CType(Me.TxtUeberwachung.Text, String)) Me.Applikation.iSensitiveDatenUeberwachungPeriodizitaet = New SqlInt32(CType(Me.cbboxPeriodizitaet.SelectedValue, Int32)) Me.Applikation.sSensitiveDatenUserBemerkung = New SqlString(CType(Me.TxtUser.Text, String)) Me.Applikation.iSensitiveDatenAnzahlComit = New SqlInt32(CType(Me.TxtAnzComit.Text, Int32)) Me.Applikation.iSensitiveDatenAnzahlExterne = New SqlInt32(CType(Me.txtAnzExterne.Text, Int32)) Applikation.Save_CheckedData(Me.lboxInstalliertauf, 1) Applikation.Save_CheckedData(Me.lboxInstalliertals, 2) Applikation.Save_CheckedData(Me.lboxStandardFuer, 3) Applikation.Save_Data() Me.FormDataChanged = False End Sub Private Function Get_CheckedItems(ByRef clb As CheckedListBox) As String Dim i As Integer = 0 Dim s As String = "" For i = 1 To clb.CheckedItems.Count s = s + clb.CheckedItems(i).ToString Next Return s End Function #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 "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 If c.Name <> "cboxNurAktive" Then Dim ctl As CheckBox = c AddHandler ctl.CheckedChanged, evh End If End If Next 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 #End Region Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) ' Display in a message box all the items that are checked. Dim indexChecked As Integer Dim itemChecked As Object Const quote As String = """" ' First show the index and check state of all selected items. For Each indexChecked In lboxInstalliertals.CheckedIndices ' The indexChecked variable contains the index of the item. MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" + _ lboxInstalliertals.GetItemCheckState(indexChecked).ToString() + ".") Next ' Next show the object title and check state for each item selected. For Each itemChecked In lboxInstalliertals.CheckedItems ' Use the IndexOf method to get the index of an item. MessageBox.Show("Item with title: " + quote + itemChecked.ToString() + quote + _ ", is checked. Checked state is: " + _ lboxInstalliertals.GetItemCheckState(lboxInstalliertals.Items.IndexOf(itemChecked)).ToString() + ".") Next For Each GG As System.Data.DataRowView In Me.lboxInstalliertals.CheckedItems MsgBox("hALLO") Next End Sub Private Sub cbTicketXPertVerwendung_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbTicketXPertVerwendung.CheckedChanged If Me.cbTicketXPertVerwendung.Checked = False Then Me.grpTicketXpert.Enabled = False Else Me.grpTicketXpert.Enabled = True End If End Sub ''' ''' Index-Wechsel auf TabControlApplikation ''' ''' ''' ''' Private Sub TabControlApplikation_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControlApplikation.SelectedIndexChanged Refresh_Registerlasche() End Sub ''' ''' Aktuelle Registerlasche aktualisieren ''' ''' Private Sub Refresh_Registerlasche() Select Case Me.TabControlApplikation.SelectedTab.Text Case "Vertragsinhalt", "Suchbegriffe" Case "Lizenzen" Refresh_Lizenzen() Case "Dokumente" Refresh_Dokumente() Case "Kontakte" Refresh_Kontakte() Case "Ereignisse" 'Refresh_Ereignisse() Case "Vertragsbeziehungen" Refresh_Vertragsbeziehungen() Case "Testing" Refresh_Drehbuecher() Refresh_Abhaengigkeiten() Case "Architektur" Me.Check_Changes() Me.DiagramControl1.Init_Diagram() Me.DiagramControl1.Refresh() Me.DiagramControl1.TempFilePath = Globals.clsapplication.sTmp_filepath Me.DiagramControl1.ConnectionString = Globals.sConnectionString Me.DiagramControl1.ApplikationNr = Me.Applikation.iApplikationNr.Value Me.DiagramControl1.Mitarbeiternr = Globals.clsmitarbeiter.iMitarbeiternr.Value Me.FormDataChanged = False End Select End Sub #Region "Lizenzen" Private Function Refresh_Lizenzen() Try Me.C1Lizenzkäufe.DataSource = Nothing Me.C1Lizenzschluessel.DataSource = Nothing Catch ex As Exception End Try Me.Applikation.Get_Vertragslizenzen(Me.C1Lizenzvertraege) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Lizenzvertraege, "ApplikationLizenzvertragselement", Me.Applikation.Lizenzen) Me.Lizenzkauf_Aktualisieren() End Function ''' ''' Rowstyle von inaktiven Kündigungsfristen ''' ''' ''' ''' Private Sub C1Kuendigungsfristen_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Lizenzvertraege.FetchRowStyle Try If Me.C1Lizenzvertraege.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 #Region "Lizenzkauf" ''' ''' Aktualiserung der Grids Lizenzkauf und Lizenzschluessel ''' ''' Private Sub Lizenzkauf_Aktualisieren() Try 'Me.Applikation.Vertragselement.Lizenzinformationen.Get_Lizenzkauf(Me.C1Lizenzvertraege.Columns("Vertragselementnr").Value, Me.C1Lizenzkäufe) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Lizenzkäufe, "Lizenzkauf", Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzkauf.Tabledata) Set_Lizenzkauf_Filter() Me.Lizenzschluessel_Aktualisieren() Catch ex As Exception Exit Sub End Try End Sub ''' ''' Aktualisierung der Spalten mutiert_am und mutierern. Sofern noch kein Schlüsselwert gesetzt ist (bei neuem Datensatz) ''' wird dieser aus der Keytabelle ausgelesen und zugewiesen. ''' ''' ''' ''' Je Domaintable ist ein Eintrag in der Key-Tabelle notwendig Private Sub C1Lizenzkäufe_AfterColUpdate(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.ColEventArgs) Handles C1Lizenzkäufe.AfterColUpdate 'Aktualisieren von Mutierer und Mutiert_am Dim i As Integer Try For i = 0 To Me.C1Lizenzkäufe.Columns.Count - 1 If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mutiert_am" Then Me.C1Lizenzkäufe.Columns(i).Value = Now If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mutierer" Then Me.C1Lizenzkäufe.Columns(i).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value Next 'neuer DB-Key auslösen, sofern kein Key vorhanden ist If Me.C1Lizenzkäufe.Columns(0).Value Is DBNull.Value Then Dim dbkey As New TKB.VV.DB.clsMyKey_Tabelle() Dim key As Long dbkey.cpMainConnectionProvider = conn key = dbkey.get_dbkey("Lizenzkauf") Me.C1Lizenzkäufe.Columns(0).Value = key For i = 0 To Me.C1Lizenzkäufe.Columns.Count - 1 If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mandantnr" Then Me.C1Lizenzkäufe.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "erstellt_am" Then Me.C1Lizenzkäufe.Columns(i).Value = Now End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "securitylevel" Then Me.C1Lizenzkäufe.Columns(i).Value = 0 End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "aktiv" Then Me.C1Lizenzkäufe.Columns(i).Value = 1 End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "extern" Then Me.C1Lizenzkäufe.Columns(i).Value = 0 End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "vertragselementnr" Then Me.C1Lizenzkäufe.Columns(i).Value = Me.Applikation.Vertragselement.iVertragselementnr.Value End If Next dbkey.Dispose() End If Me.Lizenzschluessel_Aktualisieren() Catch End Try End Sub ''' ''' Aktualisierung der Default-Werte ''' ''' ''' ''' Private Sub C1Lizenzkäufe_AfterInsert(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Lizenzkäufe.AfterInsert Dim i As Integer 'Defaulwerte erstellt_am, mutiert_am, mutierer und aktiv setzen Try For i = 0 To C1Lizenzkäufe.Columns.Count - 1 If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "aktiv" Then Me.C1Lizenzkäufe.Columns(i).Value = 1 End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "vertragselementnr" Then Me.C1Lizenzkäufe.Columns(i).Value = Me.Applikation.Vertragselement.iVertragselementnr.Value End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mutiert_am" Then Me.C1Lizenzkäufe.Columns(i).Value = Now End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mutierer" Then Me.C1Lizenzkäufe.Columns(i).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mandantnr" Then Me.C1Lizenzkäufe.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value End If If LCase(Me.C1Lizenzkäufe.Columns(i).DataField) = "mandnat" Then Me.C1Lizenzkäufe.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value End If Next Me.Lizenzschluessel_Aktualisieren() Catch End Try End Sub ''' ''' Rowstyle von inaktiven Kündigungsfristen ''' ''' ''' ''' Private Sub C1Lizenzkäufe_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Lizenzkäufe.FetchRowStyle Try If Me.C1Lizenzkäufe.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 ''' ''' Prüfung auf Änderungen, sofern das Grid "C1Lizenzkäufe" verlassen wird ''' ''' ''' ''' Private Sub C1Lizenzkäufe_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Lizenzkäufe.Leave Try If Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzkauf.Tabledata.HasChanges Then If msg.Show_MessageYesNoCancel(800) = MsgBoxResult.Yes Then Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzkauf.Save_Data() End If End If Catch ex As Exception End Try End Sub ''' ''' Mousedown-Ereignis auf Lizenzkauf ''' ''' ''' ''' Private Sub C1Lizenzkäufe_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Lizenzkäufe.MouseDown, C1Lizenzkäufe.MouseUp Me.Lizenzschluessel_Aktualisieren() End Sub ''' ''' Lizenzkauf speichern ''' ''' ''' ''' Private Sub btnSaveLizenzkauf_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSaveLizenzkauf.Click Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzkauf.Save_Data() End Sub ''' ''' Anzeige gem. Aktivstatus ändern ''' ''' ''' ''' Private Sub cbLizenzkaufAktiv_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbLizenzkaufAktiv.CheckStateChanged Set_Lizenzkauf_Filter() End Sub ''' ''' Filter in der Spalte Aktiv des Grids C1Lizenzkauf ändern ''' ''' Private Sub Set_Lizenzkauf_Filter() Try Select Case Me.cbLizenzkaufAktiv.CheckState Case CheckState.Checked Me.C1Lizenzkäufe.Columns("Aktiv").FilterText = True Case CheckState.Indeterminate Me.C1Lizenzkäufe.Columns("Aktiv").FilterText = "" Case CheckState.Unchecked Me.C1Lizenzkäufe.Columns("Aktiv").FilterText = False End Select Catch ex As Exception End Try End Sub #End Region #Region "Lizenzschluessel" ''' ''' Aktualiserung der Grids Lizenzkauf und Lizenzschluessel ''' ''' Private Sub Lizenzschluessel_Aktualisieren() Try Me.Applikation.Vertragselement.Lizenzinformationen.Get_Lizenzschluessel(Me.C1Lizenzkäufe.Columns(0).Value, Me.C1Lizenzschluessel) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Lizenzschluessel, "Lizenzschluessel", Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzschluessel.Tabledata) Set_Lizenzschluessel_Filter() Catch ex As Exception Exit Sub End Try End Sub ''' ''' Aktualisierung der Spalten mutiert_am und mutierern. Sofern noch kein Schlüsselwert gesetzt ist (bei neuem Datensatz) ''' wird dieser aus der Keytabelle ausgelesen und zugewiesen. ''' ''' ''' ''' Je Domaintable ist ein Eintrag in der Key-Tabelle notwendig Private Sub C1Lizenzschluessel_AfterColUpdate(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.ColEventArgs) Handles C1Lizenzschluessel.AfterColUpdate 'Aktualisieren von Mutierer und Mutiert_am Dim i As Integer Try For i = 0 To Me.C1Lizenzschluessel.Columns.Count - 1 If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mutiert_am" Then Me.C1Lizenzschluessel.Columns(i).Value = Now If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mutierer" Then Me.C1Lizenzschluessel.Columns(i).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value Next 'neuer DB-Key auslösen, sofern kein Key vorhanden ist If Me.C1Lizenzschluessel.Columns(0).Value Is DBNull.Value Then Dim dbkey As New TKB.VV.DB.clsMyKey_Tabelle() Dim key As Long dbkey.cpMainConnectionProvider = conn key = dbkey.get_dbkey("Lizenzschluessel") Me.C1Lizenzschluessel.Columns(0).Value = key For i = 0 To Me.C1Lizenzschluessel.Columns.Count - 1 If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mandantnr" Then Me.C1Lizenzschluessel.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "erstellt_am" Then Me.C1Lizenzschluessel.Columns(i).Value = Now End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "securitylevel" Then Me.C1Lizenzschluessel.Columns(i).Value = 0 End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "aktiv" Then Me.C1Lizenzschluessel.Columns(i).Value = 1 End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "extern" Then Me.C1Lizenzschluessel.Columns(i).Value = 0 End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "lizenzkaufnr" Then Me.C1Lizenzschluessel.Columns(i).Value = Me.C1Lizenzkäufe.Columns(0).Value End If Next dbkey.Dispose() End If Catch End Try End Sub ''' ''' Aktualisierung der Default-Werte ''' ''' ''' ''' Private Sub C1Lizenzschluessel_AfterInsert(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Lizenzschluessel.AfterInsert Dim i As Integer 'Defaulwerte erstellt_am, mutiert_am, mutierer und aktiv setzen Try For i = 0 To C1Lizenzschluessel.Columns.Count - 1 If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "aktiv" Then Me.C1Lizenzschluessel.Columns(i).Value = 1 End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "lizenzkaufnr" Then Me.C1Lizenzschluessel.Columns(i).Value = Me.C1Lizenzkäufe.Columns(0).Value End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mutiert_am" Then Me.C1Lizenzschluessel.Columns(i).Value = Now End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mutierer" Then Me.C1Lizenzschluessel.Columns(i).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mandantnr" Then Me.C1Lizenzschluessel.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value End If If LCase(Me.C1Lizenzschluessel.Columns(i).DataField) = "mandnat" Then Me.C1Lizenzschluessel.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value End If Next Catch End Try End Sub ''' ''' Anzeige allfälliger Cellen-Tips ''' ''' ''' ''' Private Sub C1Lizenzschluessel_FetchCellTips(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchCellTipsEventArgs) Handles C1Lizenzschluessel.FetchCellTips Dim ts As New TKB.VV.Utils.Tabellenspalte ts.Tabelle = "DokumentAblageOrt" Try ts.Feld = Me.C1Lizenzschluessel.Columns(e.ColIndex).DataField ts.getspalte() e.CellTip = ts.TipText Catch End Try ts = Nothing End Sub ''' ''' Rowstyle von inaktiven Kündigungsfristen ''' ''' ''' ''' Private Sub C1Lizenzschluessel_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Lizenzschluessel.FetchRowStyle Try If Me.C1Lizenzschluessel.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 ''' ''' Prüfung auf Änderungen, sofern das Grid "C1Lizenzschlüssel" verlassen wird ''' ''' ''' ''' Private Sub C1Lizenzschluessel_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Lizenzschluessel.Leave Try If Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzschluessel.Tabledata.HasChanges Then If msg.Show_MessageYesNoCancel(801) = MsgBoxResult.Yes Then Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzschluessel.Save_Data() End If End If Catch End Try End Sub ''' ''' Sichern der Lizenzschlüssel-Informationen ''' ''' ''' ''' Private Sub btnSaveLizenzschluessel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSaveLizenzschluessel.Click Me.Applikation.Vertragselement.Lizenzinformationen.Lizenzschluessel.Save_Data() End Sub ''' ''' Anzeige gem. Aktivstatus ändern ''' ''' ''' ''' Private Sub cbLizenzschluesselAktiv_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbLizenzschluesselAktiv.CheckStateChanged Set_Lizenzschluessel_Filter() End Sub ''' ''' Filter in der Spalte Aktiv des Grids C1Lizenzschluessel ändern ''' ''' Private Sub Set_Lizenzschluessel_Filter() Try Select Case Me.cbLizenzschluesselAktiv.CheckState Case CheckState.Checked Me.C1Lizenzschluessel.Columns("Aktiv").FilterText = True Case CheckState.Indeterminate Me.C1Lizenzschluessel.Columns("Aktiv").FilterText = "" Case CheckState.Unchecked Me.C1Lizenzschluessel.Columns("Aktiv").FilterText = False End Select Catch ex As Exception End Try End Sub #End Region #End Region Private Sub C1Lizenzvertraege_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Lizenzvertraege.MouseDown Me.Lizenzkauf_Aktualisieren() End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDrehbuchspeichern.Click Dim f As frmDokument Dim i As Integer = 0 i = Me.Applikation.Dokument.Exists_Testdrehbuch(Me.Applikation.iApplikationNr.Value) If i < 1 Then f = New frmDokument(0, 2, Me.Applikation.iApplikationNr.Value, Me.FormReadonly, True) Else f = New frmDokument(i, 2, Me.Applikation.iApplikationNr.Value, Me.FormReadonly, False) End If f.Show() End Sub Private Sub btnDrehbuchanzeigen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDrehbuchanzeigen.Click Dim i As Integer = 0 i = Me.Applikation.Dokument.Exists_Testdrehbuch(Me.Applikation.iApplikationNr.Value) If i > 0 Then Me.Applikation.Dokument.Show_Doc(i) End If End Sub #Region "Dokumente" ''' ''' Dokumetne_Aktualisieren ''' ''' Private Sub Refresh_Dokumente() Try If Check_Changes() = 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.Applikation.Get_Dokumente(Me.C1Dokumente, Me.ImageListeDocIcon) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Dokumente, "Dokument", Me.Applikation.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.Applikation.iApplikationNr.Value, 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, 3, Me.Applikation.iApplikationNr.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.Applikation.Dokument.Delete_Dokument(Me.C1Dokumente.Columns("Dokumentnr").Value) evh.Dokumente_Geloscht() End If Catch End Try End Sub ''' ''' Doppelklick eines Eintrages - Dokument-Anzeige (Dialog) ''' ''' ''' ''' Ist der Button DokumentAnzeigenToolStripMenuItem disabled, Doppelklick ignorieren Private Sub DokumentAnzeigen_Dokument_ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DokumentAnzeigen_Dokument_ToolStripMenuItem.Click Try Me.Applikation.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 "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 DokumenteMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles DokumenteMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Dokumente) End Sub #End Region #Region "Kontakte" ''' ''' Kontakte aktualisieren ''' ''' ''' Private Sub Refresh_Kontakte() Try If Check_Changes() = 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.Applikation.Get_Applikationskontakte(Me.C1Kontakte) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Kontakte, "Vertragskontakt", Me.Applikation.Applikationskontakte.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 frmApplikationskontakt(Me.C1Kontakte.Columns("Applikationkontaktnr").Value, 1, Me.Aktuelle_Applikation, False, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub ''' ''' Disable bzw. Enable der Menueinträge ''' ''' ''' ''' 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 ''' ''' 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 frmApplikationskontakt(0, 1, Me.Aktuelle_Applikation, 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.Applikation.Applikationskontakt.Delete_Applikationskontakt(Me.C1Kontakte.Columns("Applikationkontaktnr").Value) evh.Kontakte_Geloescht() End If Catch End Try End Sub #End Region #Region "Vertragselemente" ''' ''' Applikationen aktualiseren ''' ''' Private Sub Refresh_Vertragsbeziehungen() Try If Check_Changes() = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Vertragselemente.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Vertragselemente.Bookmark Me.C1Vertragselemente.Enabled = False Dim datac1vertragselemente As New DataTable datac1vertragselemente = Me.Applikation.Get_Vertragselemente(Me.Applikation.iApplikationNr.Value) Me.C1Vertragselemente.DataSource = datac1vertragselemente Me.C1Vertragselemente.DataMember = datac1vertragselemente.TableName Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Vertragselemente, "VertragselementApplikation", datac1vertragselemente) sec.Set_Form_Security(Me) If filtertext <> "none" Then Me.C1Vertragselemente.Columns("Aktiv").FilterText = filtertext Try Me.C1Vertragselemente.Bookmark = bm Catch ex As Exception End Try Me.C1Vertragselemente.Enabled = True End Sub ''' ''' Rowstyle von inaktiven Pendenzen ''' ''' ''' ''' 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 ''' ''' Positionierung im Grid ''' ''' ''' ''' Private Sub C1Applikationen_Mousedown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Vertragselemente.MouseDown Me.C1Vertragselemente.Bookmark = Me.C1Vertragselemente.RowContaining(e.Y) End Sub Private Sub evh_FormularVertragselementApplikation_Closed() Handles evh.Update_Uebersicht Try Me.Refresh_Registerlasche() Catch ex As Exception End Try End Sub ''' ''' VertragsbeziehungMenuStrip Opening ''' ''' ''' ''' Private Sub VertragsbeziehungMenuStrip_Opening(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles VertragsbeziehungMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Vertragselemente) End Sub ''' ''' Anzeige Vertragselement ''' ''' ''' ''' Private Sub VertragselementAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VertragselementAnzeigenToolStripMenuItem.Click Dim f As New frmVertragselement(Me.C1Vertragselemente.Columns(1).Value, Me.FormReadonly, False) f.MdiParent = Me.MdiParent f.Show() End Sub #End Region Private Sub dtPickerInaktivSeit_ValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles dtPickerInaktivSeit.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 Me.txtInaktivseit_Leave(sender, e) End Sub Private Sub txtInaktivseit_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtInaktivseit.Leave If Trim(Me.txtInaktivseit.Text) <> ". ." Then Me.cbAktiv.Checked = False Else Me.cbAktiv.Checked = True End If End Sub Private Sub btnSearchAppl_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearchAppl.Click Try Dim f As New frmVertragselementApplikation(0, False) f.ShowDialog() If f.SelectedApplication <> 0 Then Me.cbboxParentTree.SelectedNode = Me.TreeParent.FindNode(Me.cbboxParentTree.TreeView.Nodes, f.SelectedApplication, "") End If Catch ex As Exception End Try End Sub Private Sub TSBtnFilterAufheben_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnFilterAufheben.Click Me.tstxtSuche.Text = "" Treeviewdata.Load_Tree(Me.TreeApplikationen, False, Me.tstxtSuche.Text, Me.cboxNurAktive.Checked) Try Me.TreeApplikationen.SelectedNode = Me.TreeApplikationen.Nodes(0) Catch ex As Exception End Try 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) End If End Sub Private Sub cbboxVerantwortung_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbboxVerantwortung.SelectedIndexChanged Try Me.Applikation.Refresh_Teams(Me.cbboxVerantwortung.SelectedValue) If Me.Applikation.Teams.Rows.Count = 0 Then Me.cbboxTeam.Enabled = False Else Me.cbboxTeam.Enabled = True Me.cbboxTeam.DataSource = Me.Applikation.Teams Me.cbboxTeam.DisplayMember = "Bezeichnung" Me.cbboxTeam.ValueMember = "Keyvalue" End If Catch End Try End Sub #Region "Testing" ''' ''' Dokumetne_Aktualisieren ''' ''' Private Sub Refresh_Drehbuecher() Try If Check_Changes() = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Drehbuch.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Drehbuch.Bookmark Me.C1Drehbuch.Enabled = False Me.Applikation.Get_Drehbuecker(Me.C1Drehbuch, Me.ImageListeDocIcon) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Drehbuch, "Dokument", Me.Applikation.dokumente) If filtertext <> "none" Then Me.C1Drehbuch.Columns("Aktiv").FilterText = filtertext sec.Set_Form_Security(Me) Try Me.C1Drehbuch.Bookmark = bm Catch ex As Exception End Try Me.C1Drehbuch.Enabled = True End Sub Private Sub DrehbuchAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DrehbuchAnzeigenToolStripMenuItem.Click Try Dim f As New frmDokument(Me.C1Drehbuch.Columns("Dokumentnr").Value, 2, Me.Applikation.iApplikationNr.Value, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub Private Sub DrehbuchNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DrehbuchNeuToolStripMenuItem.Click Try Dim f As New frmDokument(0, 2, Me.Applikation.iApplikationNr.Value, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub Private Sub DrehbuchLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DrehbuchLöschenToolStripMenuItem.Click Try If msg.Show_MessageYesNo(275) = MsgBoxResult.Yes Then Me.Applikation.Dokument.Delete_Dokument(Me.C1Drehbuch.Columns("Dokumentnr").Value) evh.Dokumente_Geloscht() End If Catch End Try End Sub Private Sub Drehbuch_Anzeigen_Dokument_ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Drehbuch_Anzeigen_Dokument_ToolStripMenuItem.Click Try Me.Applikation.Dokument.Show_Doc(Me.C1Drehbuch.Columns("Dokumentnr").Value) Catch End Try End Sub Private Sub C1Drehbuch_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Try Drehbuch_Anzeigen_Dokument_ToolStripMenuItem_Click(sender, e) Catch ex As Exception End Try End Sub ''' ''' Dokumetne_Aktualisieren ''' ''' Private Sub Refresh_Abhaengigkeiten() Try If Check_Changes() = False Then Exit Sub Catch ex As Exception End Try Dim filtertext As String = "none" Try filtertext = Me.C1Abhaengigkeiten.Columns("Aktiv").FilterText Catch ex As Exception End Try Dim bm As Integer = 0 bm = Me.C1Abhaengigkeiten.Bookmark Me.C1Abhaengigkeiten.Enabled = False Me.Applikation.Get_Applikationsabhaengigkeiten(Me.C1Abhaengigkeiten, Me.Applikation.iApplikationNr.Value) Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Abhaengigkeiten, "ApplikationAbhaengigkeit", Me.Applikation.Applikationabhaengigkeiten.Tabledata) If filtertext <> "none" Then Me.C1Abhaengigkeiten.Columns("Aktiv").FilterText = filtertext sec.Set_Form_Security(Me) Try Me.C1Abhaengigkeiten.Bookmark = bm Catch ex As Exception End Try Me.C1Abhaengigkeiten.Enabled = True End Sub ''' ''' Neue Applikationsabhaengigkeit ''' ''' ''' ''' Private Sub AbhaengigkeitNeuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AbhaengigkeitNeuToolStripMenuItem.Click Try Dim f As New frmApplikationAbhaengigkeit(0, Me.Applikation.iApplikationNr.Value, Me.FormReadonly, True) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub Private Sub AbhaengigkeitAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AbhaengigkeitAnzeigenToolStripMenuItem.Click Try Dim f As New frmApplikationAbhaengigkeit(Me.C1Abhaengigkeiten.Columns("Applikationabhaengigkeitnr").Value, 0, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub Private Sub AbhaengigkeitLoeschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AbhaengigkeitLoeschenToolStripMenuItem.Click Try If msg.Show_MessageYesNo(852) = MsgBoxResult.Yes Then Me.Applikation.Applikationabhaengigkeit.Delete_Referenz(Me.C1Abhaengigkeiten.Columns("ApplikationAbhaengigkeitnr").Value) Me.Refresh_Abhaengigkeiten() End If Catch End Try End Sub #End Region Private Sub DrehbuchMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles DrehbuchMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Drehbuch) End Sub Private Sub C1Drehbuch_DoubleClick1(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Drehbuch.DoubleClick Try Me.Applikation.Dokument.Show_Doc(Me.C1Drehbuch.Columns("Dokumentnr").Value) Catch End Try End Sub Private Sub C1Drehbuch_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Drehbuch.FetchRowStyle Try If Me.C1Drehbuch.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 Private Sub AbhaengigkeitMenuStrip_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles AbhaengigkeitMenuStrip.Opening Me.Disable_Enable_Menu(sender, Me.C1Abhaengigkeiten) End Sub Private Sub C1Abhaengigkeiten_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Abhaengigkeiten.DoubleClick Try Dim f As New frmApplikationAbhaengigkeit(Me.C1Abhaengigkeiten.Columns("Applikationabhaengigkeitnr").Value, 0, Me.FormReadonly) f.MdiParent = Me.MdiParent f.Show() Catch ex As Exception End Try End Sub Private Sub C1Abhaengigkeiten_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1Abhaengigkeiten.FetchRowStyle Try If Me.C1Abhaengigkeiten.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 Private Sub cboxNurAktive_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboxNurAktive.CheckedChanged If Me.Check_Changes Then If Me.tstxtSuche.Text <> "" Then Treeviewdata.Load_Tree(Me.TreeApplikationen, False, Me.tstxtSuche.Text, Me.cboxNurAktive.Checked) Me.TreeApplikationen.SelectedNode = Me.TreeApplikationen.Nodes(0) Me.FormDataChanged = False Else Treeviewdata.Load_Tree(Me.TreeApplikationen, False, "", Me.cboxNurAktive.Checked) Me.TreeApplikationen.SelectedNode = Me.TreeApplikationen.Nodes(0) Me.FormDataChanged = False End If End If End Sub Private Sub MassenUpdatesToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MassenUpdatesToolStripMenuItem.Click Dim f As New frmKontaktMassenupdate f.ShowDialog() End Sub Private Sub TreeApplikationenAlleKnotenSchliessenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TreeApplikationenAlleKnotenSchliessenToolStripMenuItem.Click Me.TreeApplikationen.CollapseAll() End Sub ''' ''' Alle Knoten öffnen ''' ''' ''' ''' Private Sub TreeApplikationenAlleKnotenÖffnenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TreeApplikationenAlleKnotenÖffnenToolStripMenuItem.Click Me.TreeApplikationen.ExpandAll() End Sub Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnApplReport.Click Dim auswertungen As New TKB.Auswertung.clsAuswertung Dim SQLWhere As String = "" Dim Auswertungsdaten As New DataTable auswertungen.Get_Auswertung(999) Auswertungsdaten = auswertungen.Get_Auswertungsdaten(auswertungen.Auswertung.sSQL.Value, Me.Applikation.iApplikationNr.Value) Dim f As New frmcrreporting(Auswertungsdaten, auswertungen.Auswertung.iAuswertungNr.Value, auswertungen, False) f.MdiParent = Me.MdiParent Me.Cursor = Cursors.Default f.Show() End Sub Private Sub ToolStripButton1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click If Not Me.FormReadonly Then Check_Changes() Dim i As Integer Treeviewdata.Load_Tree(Me.TreeApplikationen, False, Me.tstxtArchitektur.Text, Me.cboxNurAktive.Checked, True) Try Me.TreeApplikationen.SelectedNode = Me.TreeApplikationen.Nodes(0) Me.tstxtArchitektur.Text = "" Catch ex As Exception End Try End Sub Private Sub tstxtArchitektur_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tstxtArchitektur.Click End Sub Private Sub tstxtArchitektur_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tstxtArchitektur.KeyDown If e.KeyCode = Keys.Enter Then ToolStripButton1_Click_1(sender, e) End If End Sub End Class