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

1345 lines
55 KiB

Imports System.ComponentModel
Imports System.Data.SqlClient
Imports System.Data.SqlTypes
Imports System.Reflection
Imports _Generic_Event_Handler
Imports DevComponents
Public Class AllgMainObjekte
#Region "Properties"
Dim OnAddNew As Boolean = False
Property isDirty As Boolean
Get
If Me.OnAddNew = True Then Return False
Return Me.FormDataChanged
End Get
Set(value As Boolean)
Me.FormDataChanged = value
If Me.NewEntry = True And value = False Then
Me.Delete_Entry(Me.KeyValue, Me.KeyValue, Me.ParentForm, False)
End If
End Set
End Property
Dim m_ConnectionFilename As String
<DefaultValue(""), Description("ConnectionFileName"), Category("Options")> _
Public Property ConnectionFilename() As String
Get
ConnectionFilename = m_ConnectionFilename
End Get
Set(ByVal Value As String)
If m_ConnectionFilename <> Value Then
m_ConnectionFilename = Value
Globals.ConnectionFileName = Value
Init_Comp()
End If
End Set
End Property
Dim m_ConnectionString As String
<DefaultValue(""), Description("ConnectionString"), Category("Options")> _
Public Property ConnectionString() As String
Get
ConnectionString = m_ConnectionString
End Get
Set(ByVal Value As String)
If m_ConnectionString <> Value Then
m_ConnectionString = Value
Globals.conn.sConnectionString = m_ConnectionString
Datenklasse.ConnectionString = m_ConnectionString
End If
End Set
End Property
Dim m_Mitarbeiternr As Integer
<DefaultValue(1), Description("Mitarbeiternr"), Category("Options")> _
Public Property Mitarbeiternr As Integer
Get
Mitarbeiternr = m_Mitarbeiternr
End Get
Set(value As Integer)
If m_Mitarbeiternr <> value Then
m_Mitarbeiternr = value
Globals.Mitarbeiternr = m_Mitarbeiternr
Datenklasse.Mitarbeiternr = m_Mitarbeiternr
End If
End Set
End Property
Dim m_TempFilePath As String
<DefaultValue("h:\tssettings\themenmgmt"), Description("Temp Filepath"), Category("Options")> _
Public Property TempFilePath As String
Get
TempFilePath = m_TempFilePath
End Get
Set(value As String)
If m_TempFilePath <> value Then
m_TempFilePath = value
Globals.TmpFilepath = m_TempFilePath
End If
End Set
End Property
Dim m_keyvalue As Integer
<DefaultValue(1), Description("KeyValue"), Category("Options")> _
Public Property KeyValue As Integer
Get
KeyValue = m_keyvalue
End Get
Set(value As Integer)
If m_keyvalue <> value Then
m_keyvalue = value
Refresh_Details()
End If
End Set
End Property
Dim m_TargetObjekt As String
<DefaultValue("_AllgMainObjekte.db.Personal_Funktionstelle"), Description("TargetObject"), Category("Options")> _
Public Property TargetObjekt As Integer
Get
TargetObjekt = m_TargetObjekt
End Get
Set(value As Integer)
If m_TargetObjekt <> value Then
m_TargetObjekt = value
End If
End Set
End Property
Dim m_Type As String
<DefaultValue(""), Description("Type"), Category("Options")> _
Public Property Type As String
Get
Type = m_Type
End Get
Set(value As String)
If m_Type <> value Then
m_Type = value
'Refresh_Details()
End If
End Set
End Property
Dim m_treehandle As Integer
Property TreeHandle As Integer
Get
TreeHandle = m_treehandle
End Get
Set(value As Integer)
m_treehandle = value
End Set
End Property
Dim m_Generic_Event_Handler As _Generic_Event_Handler.Generic_Event_Handler
<DefaultValue(""), Description("Type"), Category("Options")> _
Public Property Generic_Event_Handler
Get
Generic_Event_Handler = m_Generic_Event_Handler
End Get
Set(value)
m_Generic_Event_Handler = value
Globals.Generic_Event_Handler = m_Generic_Event_Handler
evh = Globals.Generic_Event_Handler
End Set
End Property
Dim M_NewEntry As Boolean = False
Property NewEntry As Boolean
Get
Return M_NewEntry
End Get
Set(value As Boolean)
M_NewEntry = value
End Set
End Property
Dim m_tag_externe_ma As String
Property tag_externe_ma As String
Get
Return m_tag_externe_ma
End Get
Set(value As String)
m_tag_externe_ma = value
End Set
End Property
#End Region
#Region "Deklarationen"
Event Beziehungen_DoubleClicked(ByVal keyvalue As Integer, ByVal Typ As String, ByVal NewWindows As Boolean)
Event MainObject_Saved(ByVal KeyValue As Integer)
Dim DBObject As New Object
Dim Mymsg As New Utils.MyMessage
Dim TargetDBObject As String
Dim Change_Keys As Boolean
Dim WithEvents evh As Generic_Event_Handler = Globals.Generic_Event_Handler
Dim sec As New Utils.MySecurity
Dim Datenklasse As New _DataClass.DataClass
Dim Verwaltung_mit As New DataTable
Dim Verwaltung_durch As New DataTable
Dim Dateneigentuemer As New DataTable
Dim VerantwTKBMa As New DataTable
Dim Save_Verwaltung_Durch As Integer
Dim Save_Verwaltung_mit As Integer
Dim Save_Dateneigentuemer As Integer
#End Region
Dim FormReadonly As Boolean = False
Dim FormDataChanged As Boolean = False
#Region "Eventhandler ChangeEreignisse"
''' <summary>
''' Allg Eventhandler für Chanage-Ereignise festlegen
''' </summary>
''' <param name="Container"></param>
''' <remarks></remarks>
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 NumericUpDown Then
Dim ctl As NumericUpDown = c
AddHandler ctl.ValueChanged, evh
End If
If TypeOf c Is RichTextBox Then
Dim ctl As RichTextBox = c
AddHandler ctl.TextChanged, evh
End If
If TypeOf c Is CheckBox Then
If c.Name = "cbCID" And c.Enabled = False Then
Else
If c.Name <> "cboxNurAktive" Then
Dim ctl As CheckBox = c
AddHandler ctl.CheckedChanged, evh
End If
End If
End If
If TypeOf c Is CheckedListBox Then
Dim ctl As CheckedListBox = c
AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange
End If
Next
End Sub
''' <summary>
''' Envent-Handler für Change-Ereignisse
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs)
Dim objtype As System.Type = sender.GetType
If objtype.Name = "CheckBox" Then
Dim c As CheckBox = sender
If c.Name = "cbCID" And c.Enabled = False Then Exit Sub
End If
Me.FormDataChanged = True
If objtype.Name = "MaskedTextBox" Then
Dim o As MaskedTextBox = sender
If o.Text = "01.01.1900" Then o.Text = " . . "
End If
End Sub
Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs)
Me.FormDataChanged = True
End Sub
''' <summary>
''' 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
''' </summary>
''' <param name="BaseControl">Base-Contrlo (z.B. aktuelles Formular</param>
''' <param name="Key">Schlüssel welcher gesucht werden soll</param>
''' <param name="L">Liste der gefundenen Objekte</param>
''' <returns>True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde.
''' </returns>
''' <remarks></remarks>
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
Sub Refresh_Details()
Try
Me.lblBeschreibung.Text = "Beschreibung"
Me.lblBezeichnung.Text = "Bezeichnung"
Me.lblName.Visible = False
Me.txtName.Visible = False
Me.lblTGNummer.Visible = False
Me.txtTGNummer.Visible = False
Me.lblFunktionsnummer.Visible = False
Me.txtFunktionsnummer.Visible = False
Me.lblFunktionsstelle.Visible = False
Me.txtFunktionsstelle.Visible = False
Me.tsbtncopy1.Visible = False
Me.tsbtncopy1.Visible = False
Me.lblVerwaltungDurch.Visible = False
Me.lblVerwaltungMit.Visible = False
Me.lblDateneigentuemer.Visible = False
Me.cbboxVerwaltungDurch.Visible = False
Me.cbboxVerwaltungMit.Visible = False
Me.cbboxDateneigentuemer.Visible = False
Me.lblCID.Visible = False
Me.cbCID.Visible = False
Me.lblEmail.Visible = False
Me.txtMail.Visible = False
'20200114 - Erweiterungen
Me.lblVerantwTKBMA.Visible = False
Me.txtVerantwTKBMa.Visible = False
Me.lblnaechstepruefung.Visible = False
Me.txtnaechstePruefung.Visible = False
Me.dtPickernaechstePruefung.Visible = False
Me.cbboxVerantwTKBMA.Visible = False
Try
Datenklasse.CreateNew("_DataClass.db." + Me.Type, DBObject)
' DBObject = Datenklasse.crc CreateNew("_DataClass.db.Personal")
'DBObject = CreateNew("_AllgMainObjekte.db." + Me.Type)
DBObject.get_data(Me.KeyValue)
Me.txtPrimaryKey.Text = Me.KeyValue
Me.GroupBox2.Visible = True
Catch ex As Exception
Me.GroupBox2.Visible = False
End Try
Select Case Datenklasse.Get_Selectiontype(Me.Type)
Case 1 'Organisation
Me.tsbtncopy1.Visible = True
Me.tsbtncopy1.Visible = True
Me.lblFunktionsnummer.Visible = True
'Me.txtFunktionsnummer.Visible = True
'Me.lblFunktionsstelle.Visible = True
Me.txtFunktionsstelle.Visible = True
Me.lblCID.Visible = True
Me.cbCID.Visible = True
Me.cbCID.Enabled = False
Try
Me.cbCID.Checked = DBObject.icid.value = 1
Catch ex As Exception
Me.cbCID.Checked = False
End Try
Try
Me.txtFunktionsstelle.Text = DBObject.sfunktionsstelle.value.ToString
Me.txtFunktionsnummer.Text = DBObject.sfunktionsnummer.value.ToString
Catch
Me.txtFunktionsnummer.Text = ""
Me.txtFunktionsstelle.Text = ""
End Try
Case 0, 3, 4 'BERECHTIGUNG
Me.lblVerwaltungDurch.Visible = True
Me.lblVerwaltungMit.Visible = True
Me.lblDateneigentuemer.Visible = True
Me.cbboxDateneigentuemer.Visible = True
Me.cbboxVerwaltungDurch.Visible = True
Me.cbboxVerwaltungMit.Visible = True
Verwaltung_durch = Datenklasse.Get_Stammdaten("Verwaltung_durch", "bezeichnung")
Verwaltung_mit = Datenklasse.Get_Stammdaten("Verwaltung_mit", "Bezeichnung")
Dateneigentuemer = Datenklasse.Get_Stammdaten("Personal", "Bezeichnung")
Me.cbboxVerwaltungDurch.DataSource = Verwaltung_durch
Me.cbboxVerwaltungDurch.DisplayMember = "Bezeichnung"
Me.cbboxVerwaltungDurch.ValueMember = "Keyvalue"
Me.cbboxVerwaltungMit.DataSource = Verwaltung_mit
Me.cbboxVerwaltungMit.DisplayMember = "Bezeichnung"
Me.cbboxVerwaltungMit.ValueMember = "Keyvalue"
Me.cbboxDateneigentuemer.DataSource = Dateneigentuemer
Me.cbboxDateneigentuemer.DisplayMember = "Bezeichnung"
Me.cbboxDateneigentuemer.ValueMember = "Keyvalue"
' = Datenklasse.Get_Selectiontype(Me.Type)
'If Datenklasse.Get_Selectiontype(Me.Type) = 0 Then
Me.cbCID.Visible = True
Me.lblCID.Visible = True
Me.cbCID.Enabled = True
Try
Me.cbCID.Checked = DBObject.icid.value = 1
Catch ex As Exception
Me.cbCID.Checked = False
End Try
'End If
Dim i As Integer
i = DBObject.get_verwaltung_mit
If i < 0 Then
Me.cbboxVerwaltungMit.SelectedValue = i
Me.cbboxVerwaltungMit.Text = ""
Else
Me.cbboxVerwaltungMit.SelectedValue = i
End If
Me.Save_Verwaltung_mit = i
i = DBObject.get_verwaltung_durch
If i < 0 Then
Me.cbboxVerwaltungDurch.SelectedValue = i
Me.cbboxVerwaltungDurch.Text = ""
Else
Me.cbboxVerwaltungDurch.SelectedValue = i
End If
Me.Save_Verwaltung_Durch = i
i = DBObject.Get_Dateneigentuemer
If i < 0 Then
Me.cbboxDateneigentuemer.SelectedValue = 0
Me.cbboxDateneigentuemer.Text = ""
Else
Me.cbboxDateneigentuemer.SelectedValue = i
End If
Me.Save_Dateneigentuemer = i
Case 0
Case 3
Case 4
'Case 3 'PLATTFORM
Case 2 'PERSONAL
'If Globals.VerantwTKBMA_Data.Rows.Count = 0 Then VerantwTKBMA_Data = Datenklasse.Get_Stammdaten("Personal", "Bezeichnung")
'VerantwTKBMa = VerantwTKBMA_Data.Copy
VerantwTKBMa = Datenklasse.Get_Stammdaten("Personal", "Bezeichznung")
Me.lblEmail.Visible = True
Me.txtMail.Visible = True
Me.tsbtncopy1.Visible = True
Me.tsbtncopy1.Visible = True
Me.lblName.Visible = True
Me.txtName.Visible = True
Me.lblTGNummer.Visible = True
Me.txtTGNummer.Visible = True
Me.txtName.Text = DBObject.sname.value
Me.txtTGNummer.Text = DBObject.stgnummer.value
Me.lblVerantwTKBMA.Visible = True
'Me.txtVerantwTKBMa.Visible = True
Me.cbboxVerantwTKBMA.Visible = True
Me.lblnaechstepruefung.Visible = True
Me.txtnaechstePruefung.Visible = True
Me.dtPickernaechstePruefung.Visible = True
Me.txtnaechstePruefung.Text = DBObject.snextcontroldate.ToString
Me.txtMail.Text = DBObject.semail.ToString
Me.txtVerantwTKBMa.Text = DBObject.sverantwTKBma.ToString
Me.cbboxVerantwTKBMA.DataSource = VerantwTKBMa
Me.cbboxVerantwTKBMA.DisplayMember = "Bezeichnung"
Me.cbboxVerantwTKBMA.ValueMember = "Keyvalue"
If DBObject.sverantwTKBma.ToString = "" Then
Me.cbboxVerantwTKBMA.SelectedValue = 0
Me.cbboxVerantwTKBMA.Text = ""
Else
Me.cbboxVerantwTKBMA.SelectedValue = DBObject.sverantwTKBma.ToString
End If
'Case 4 'SERVER
Case 5 'VERWALTUNGDURCH
Case 6 'VERWALTUNGMIT
End Select
Try
Me.txtBezeichnung.Text = DBObject.sbezeichnung.value
Me.txtBeschreibung.Text = DBObject.sbeschreibung.value
Me.txtErstelltam.Text = DBObject.daerstellt_am.value
Me.txtMutiertam.Text = DBObject.damutiert_am.value
Me.cbAktiv.Checked = DBObject.baktiv.value = True
Me.txtMutierer.Text = DBObject.MutiererText
Me.txtSequenz.Value = DBObject.isequenz.value
Catch ex As Exception
End Try
Refresh_Beziehungen()
Try
Me.ParentForm.Text = Me.Type
Catch
End Try
Try
Me.ParentForm.Text = Me.ParentForm.Text + ": " + Me.txtBezeichnung.Text
Catch
End Try
Me.tsbtnReport.Visible = False
For Each r As DataRow In Globals.Objekt.Rows
If r("Standardauswertung").ToString <> "" Then
If r("Standardauswertung") > 0 And Datenklasse.Get_SelectionTypeText(r("Objektnr")) = Me.Type Then Me.tsbtnReport.Visible = True
End If
Next
sec.Set_Form_Security(Me)
If sec.Check_DataObjectReadonly(Me.Type) = True Then
Me.TSBtnSave.Enabled = False
Me.TSBtnAddNew.Enabled = False
Me.TSBtnDelete.Enabled = False
Else
Me.TSBtnSave.Enabled = True
Me.TSBtnAddNew.Enabled = True
Me.TSBtnDelete.Enabled = True
End If
If Me.TSBtnSave.Enabled = False Or Me.TSBtnSave.Visible = False Then
Me.AllowDrop = False
End If
Check_ParentValues()
Catch ex As Exception
MsgBox(ex.Message)
End Try
AddChanges(Me)
Me.FormDataChanged = False
End Sub
Sub Refresh_Beziehungen(Optional Position As Integer = 0)
Cursor = Cursors.WaitCursor
Me.Beziehungen1.SuspendLayout()
'Me.Beziehungen1.Visible = False
Me.Beziehungen1.IsRefreshed = False
Me.Beziehungen1.ConnectionString = Me.ConnectionString
Me.Beziehungen1.Generic_Event_Handler = Globals.Generic_Event_Handler
Me.Beziehungen1.Mitarbeiternr = Me.Mitarbeiternr
Me.Beziehungen1.TempFilePath = Me.TempFilePath
Me.Beziehungen1.KeyValue = Me.KeyValue
Me.Beziehungen1.Type = Me.Type
Me.lblcid_a.Visible = False
If Datenklasse.Get_Selectiontype(Me.Type) = 1 Then Me.cbCID.Checked = Me.Beziehungen1.Refresh_Details(Position)
If Datenklasse.Get_Selectiontype(Me.Type) <> 1 Then
Me.Beziehungen1.IsRefreshed = False
Dim cd As Boolean = Me.Beziehungen1.Refresh_Details(Position)
If cd = True Then
If Me.cbCID.Checked = False Then lblcid_a.Visible = True
Else
lblcid_a.Visible = False
End If
End If
'Me.Beziehungen1.Visible = True
Me.Beziehungen1.ResumeLayout()
Me.Beziehungen1.IsRefreshed = False
Cursor = Cursors.Default
End Sub
Sub New()
InitializeComponent()
Init_Comp()
End Sub
Sub Init_Comp()
Try
Dim db As New DB.DB_Connection
db = Nothing
Me.ConnectionString = Globals.sConnectionString
'Me.ConnectionString = "data source=shu00;initial catalog=BEA;persist security info=False;workstation id=SHU;packet size=4096;user id=sa;password=*shu29"
'Me.Mitarbeiternr = 1
'Me.TempFilePath = "h:\tssettings\bea"
Globals.conn.sConnectionString = Me.ConnectionString
Globals.sConnectionString = Me.ConnectionString
Globals.Mitarbeiternr = Mitarbeiternr
Globals.TmpFilepath = TempFilePath
Me.Beziehungen1.ConnectionString = Me.ConnectionString
Me.Beziehungen1.Mitarbeiternr = Me.Mitarbeiternr
Me.Beziehungen1.TempFilePath = Me.TempFilePath
Dim ob As New DB.clsObjekt
Dim obb As New DB.clsObjektBeziehung
ob.cpMainConnectionProvider = Globals.conn
obb.cpMainConnectionProvider = Globals.conn
Try
Globals.Objekt = ob.SelectAll
Globals.Objekt_Beziehung = obb.SelectAll
ob.Dispose()
obb.Dispose()
Catch ex As Exception
End Try
Catch
End Try
End Sub
Private Sub Beziehungen1_C1Beziehungen_DoubleClicked(keyvalue As Integer, Typ As String, NewWindows As Boolean) Handles Beziehungen1.C1Beziehungen_DoubleClicked
RaiseEvent Beziehungen_DoubleClicked(keyvalue, Type, NewWindows)
End Sub
Public Function Add_New_Beziehung(ByVal Sourceid As String, sourcetype As _DataClass.DataClass.Struktur_Selectiontype, Bezeichnung As String, ByVal DBObjektname As String, ByVal Change_Keys As Boolean, Optional Sequenznr As Integer = 0, Optional get_dataobject As Boolean = False)
Dim f As New frmNeueBeziehung
f.txtObjekt1.Text = Bezeichnung
f.txtObjekt2.Text = Me.txtBezeichnung.Text
f.txtSeqeunz.Value = Sequenznr
f.txtBemerkung.Text = ""
f.cbTemporaer.Visible = False
If DBObjektname = "_DataClass.db.Personal_FunktionStelle" Then f.cbTemporaer.Visible = True
If DBObjektname = "_DataClass.db.Personal_Berechtigung" Then f.cbTemporaer.Visible = True
If DBObjektname = "_DataClass.db.Personal_Plattform" Then f.cbTemporaer.Visible = True
f.ShowDialog()
If f.DialogResult = DialogResult.Abort Then Exit Function
If get_dataobject = True Then
Datenklasse.CreateNew("_DataClass.db." + Me.Type, DBObject)
' DBObject = Datenklasse.crc CreateNew("_DataClass.db.Personal")
'DBObject = CreateNew("_AllgMainObjekte.db." + Me.Type)
DBObject.get_data(Me.KeyValue)
End If
Dim DBObjekt As New Object
Datenklasse.CreateNew(DBObjektname, DBObjekt)
Dim i As Integer
i = DBObjekt.add_new()
If Change_Keys Then
DBObjekt.set_ObjektNr1(DBObject.get_keyvalue)
DBObjekt.set_ObjektNr2(Sourceid)
Else
DBObjekt.set_ObjektNr1(Sourceid)
DBObjekt.set_ObjektNr2(DBObject.get_keyvalue)
End If
DBObjekt.sbeschreibung = New SqlString(CType(f.txtBemerkung.Text, String))
DBObjekt.isequenz = New SqlInt32(CType(f.txtSeqeunz.Value, Int32))
DBObjekt.ibeziehungstypnr = New SqlInt32(CType(f.cbbeziehungstyp.SelectedValue, Int32))
DBObjekt.save_data()
DBObjekt.dispose()
If f.cbTemporaer.Checked = True Then
If DBObjektname = "_DataClass.db.Personal_FunktionStelle" Then
Datenklasse.Update_Temporaer_Berechtigung(f.TextBox1.Text, f.TextBox2.Text, f.TextBox3.Text, f.TextBox4.Text, f.DateTimePicker1.Value, i, 0, f.cbboxKontaktFB.SelectedValue, f.cbboxKontaktSD.SelectedValue)
End If
If DBObjektname = "_DataClass.db.Personal_Berechtigung" Then
Datenklasse.Update_Temporaer_Berechtigung(f.TextBox1.Text, f.TextBox2.Text, f.TextBox3.Text, f.TextBox4.Text, f.DateTimePicker1.Value, i, 1, f.cbboxKontaktFB.SelectedValue, f.cbboxKontaktSD.SelectedValue)
End If
If DBObjektname = "_DataClass.db.Personal_Plattform" Then
Datenklasse.Update_Temporaer_Berechtigung(f.TextBox1.Text, f.TextBox2.Text, f.TextBox3.Text, f.TextBox4.Text, f.DateTimePicker1.Value, i, 2, f.cbboxKontaktFB.SelectedValue, f.cbboxKontaktSD.SelectedValue)
End If
End If
Refresh_Beziehungen(DBObjekt.Get_KeyValue)
evh.Fire_MainObject_Saved(Me.KeyValue, DBObject.iparentid.value)
evh.Fire_Object_saved(Me.KeyValue, DBObject.iparentid.value, Me.ParentForm)
End Function
Private Sub Beziehungen1_CausesValidationChanged(sender As Object, e As EventArgs) Handles Beziehungen1.CausesValidationChanged
End Sub
Private Sub Beziehungen1_Delete_Entries(grid As C1.Win.C1TrueDBGrid.C1TrueDBGrid) Handles Beziehungen1.Delete_Entries
If Me.Mymsg.Show_MessageYesNo(5) <> MsgBoxResult.Yes Then Exit Sub
Dim type1 As Integer
Dim type2 As Integer
Dim dt As New DataTable
Dim i As Integer
Dim colRows As C1.Win.C1TrueDBGrid.SelectedRowCollection
colRows = grid.SelectedRows
For i = 0 To colRows.Count - 1
type2 = Datenklasse.Get_Selectiontype(Me.Type)
type1 = Datenklasse.Get_Selectiontype(grid.Columns("Typ").CellValue(colRows(i)))
If Globals.Check_Beziehung(TargetDBObject, type1, type2, Me.Change_Keys) = True Then
Dim DBObjekt As New Object
Datenklasse.CreateNew(TargetDBObject, DBObjekt)
DBObjekt.get_data(grid.Columns("id").CellValue(colRows(i)))
DBObjekt.delete_data()
DBObjekt.dispose()
End If
Next
Refresh_Beziehungen()
evh.Fire_MainObject_Saved(Me.KeyValue, DBObject.iparentid.value)
evh.Fire_Object_saved(Me.KeyValue, DBObject.iparentid.value, Me.ParentForm)
End Sub
Private Sub Beziehungen1_Delete_Entry(Keyvalue As Integer, ByVal typ As String) Handles Beziehungen1.Delete_Entry
If Me.Mymsg.Show_MessageYesNo(4) <> MsgBoxResult.Yes Then Exit Sub
Dim type1 As Integer
Dim type2 As Integer
type2 = Datenklasse.Get_Selectiontype(Me.Type)
type1 = Datenklasse.Get_Selectiontype(typ)
If Globals.Check_Beziehung(TargetDBObject, type1, type2, Me.Change_Keys) = True Then
Dim DBObjekt As New Object
Datenklasse.CreateNew(TargetDBObject, DBObjekt)
DBObjekt.get_data(Keyvalue)
DBObjekt.delete_data()
DBObjekt.dispose()
Refresh_Beziehungen(DBObjekt.Get_KeyValue)
evh.Fire_MainObject_Saved(Me.KeyValue, DBObject.iparentid.value)
evh.Fire_Object_saved(Me.KeyValue, DBObject.iparentid.value, Me.ParentForm)
Me.FormDataChanged = False
End If
End Sub
Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles TSBtnAddNew.Click
If Me.isDirty = True Then
If Mymsg.Show_MessageYesNo(3) = MsgBoxResult.Yes Then Me.Save_Data()
End If
Dim parentid As Integer = DBObject.iparentid.value
Add_New(Me.KeyValue, Me.txtSequenz.Value)
Try
Dim pb As New DataTable
If Me.Type = "Berechtigung" Or Me.Type = "Plattform" Or Me.Type = "Server" Then
pb = Get_Parentvalues()
Me.cbboxDateneigentuemer.SelectedValue = pb.Rows(0).Item(2)
Me.cbboxVerwaltungDurch.SelectedValue = pb.Rows(0).Item(1)
Me.cbboxVerwaltungMit.SelectedValue = pb.Rows(0).Item(0)
End If
evh.Fire_Update_Treesearch(Me.ParentForm)
Catch
End Try
End Sub
Private Sub Add_New(ByVal parentid As Integer, ByVal sequenz As Integer)
Me.KeyValue = DBObject.add_new
DBObject.iparentid = New SqlInt32(CType(parentid, Int32))
DBObject.save_data()
Me.txtBezeichnung.Text = ""
Me.txtBeschreibung.Text = ""
Me.txtName.Text = ""
Me.txtTGNummer.Text = ""
Me.txtFunktionsnummer.Text = ""
Me.txtFunktionsstelle.Text = ""
Me.txtVerantwTKBMa.Text = ""
Me.txtnaechstePruefung.Text = ""
Me.txtSequenz.Value = sequenz
Me.txtBezeichnung.Focus()
Try
Me.cbboxVerantwTKBMA.SelectedValue = 0
Me.cbboxVerantwTKBMA.Text = ""
Catch ex As Exception
End Try
Try
Dim pb As New DataTable
If Me.Type = "Berechtigung" Or Me.Type = "Plattform" Or Me.Type = "Server" Then
pb = Get_Parentvalues()
Me.cbboxDateneigentuemer.SelectedValue = pb.Rows(0).Item(2)
Me.cbboxVerwaltungDurch.SelectedValue = pb.Rows(0).Item(1)
Me.cbboxVerwaltungMit.SelectedValue = pb.Rows(0).Item(0)
End If
Catch
End Try
onaddnew = True
evh.Fire_MainObject_Created(Me.KeyValue, DBObject.iparentid.value, Me.ParentForm)
Me.NewEntry = True
onaddnew = False
End Sub
Public Function Add_Entry(ByVal parentid As Integer)
Add_New(parentid, Me.txtSequenz.Value)
End Function
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles TSBtnSave.Click
If Check_Zwingende_Felder() = True Then
Save_Data()
evh.Fire_Update_Treesearch(Me.ParentForm)
End If
End Sub
Public Function Check_Zwingende_Felder() As Boolean
If Datenklasse.Get_Selectiontype(Me.Type) = _DataClass.DataClass.Struktur_Selectiontype.Personal Then
If Me.isDirty = False Then Return True
Dim s() As String
s = Me.tag_externe_ma.Split(";")
If Trim(Me.cbboxVerantwTKBMA.Text = "") Then
For i As Integer = 0 To s.Length - 1
If UCase(Me.txtBezeichnung.Text).IndexOf(UCase(s(i))) > -1 Or UCase(Me.txtTGNummer.Text).IndexOf(UCase(s(i))) > -1 Then
Mymsg.show_standardmessage(7, MsgBoxStyle.Critical)
'MsgBox("Bei TGE-Benutzern ist der verantwortliche TKB-Mitarbeiter einzutragen.", vbExclamation)
Me.txtVerantwTKBMa.Select()
Return False
End If
Next
End If
End If
Return True
End Function
Public Function Save_Data(Optional refresh As Boolean = True) As Boolean
DBObject.sbezeichnung = New SqlString(CType(Me.txtBezeichnung.Text, String))
DBObject.sbeschreibung = New SqlString(CType(Me.txtBeschreibung.Text, String))
DBObject.isequenz = New SqlInt32(CType(Me.txtSequenz.Value, Int32))
Select Case Datenklasse.Get_Selectiontype(Me.Type)
Case 1 'Organisation
DBObject.sfunktionsnummer = New SqlString(CType(txtFunktionsnummer.Text, String))
DBObject.sfunktionsstelle = New SqlString(CType(txtFunktionsstelle.Text, String))
'If Me.cbCID.Checked = True Then
' DBObject.icid = New SqlInt32(CType(1, Int32))
'Else
' DBObject.icid = New SqlInt32(CType(0, Int32))
'End If
Case 2 'Personal
DBObject.sname = New SqlString(CType(Me.txtName.Text, String))
DBObject.stgnummer = New SqlString(CType(Me.txtTGNummer.Text, String))
DBObject.sVerantwTKBMA = New SqlString(CType(Me.txtVerantwTKBMa.Text, String))
DBObject.sNextControlDate = New SqlString(CType(Me.txtnaechstePruefung.Text, String))
DBObject.sEMail = New SqlString(CType(Me.txtMail.Text, String))
If Me.cbboxVerantwTKBMA.SelectedValue = 0 Then
DBObject.sVerantwTKBMA = New SqlString(CType("", String))
Else
DBObject.sVerantwTKBMA = New SqlString(CType(Me.cbboxVerantwTKBMA.SelectedValue, String))
End If
Case 3, 4
If Save_Verwaltung_mit <> Me.cbboxVerwaltungMit.SelectedValue Then
DBObject.set_verwaltung_mit(Me.cbboxVerwaltungMit.SelectedValue, Me.Save_Verwaltung_mit)
Me.Save_Verwaltung_mit = Me.cbboxVerwaltungMit.SelectedValue
End If
If Save_Verwaltung_Durch <> Me.cbboxVerwaltungDurch.SelectedValue Then
DBObject.set_verwaltung_durch(Me.cbboxVerwaltungDurch.SelectedValue, Me.Save_Verwaltung_Durch)
Me.Save_Verwaltung_Durch = Me.cbboxVerwaltungDurch.SelectedValue
End If
If Save_Dateneigentuemer <> Me.cbboxDateneigentuemer.SelectedValue Then
DBObject.set_Dateneigentuemer(Me.cbboxDateneigentuemer.SelectedValue, Me.Save_Dateneigentuemer)
Me.Save_Dateneigentuemer = Me.cbboxDateneigentuemer.SelectedValue
End If
If Me.cbCID.Checked = True Then
DBObject.icid = New SqlInt32(CType(1, Int32))
Else
DBObject.icid = New SqlInt32(CType(0, Int32))
End If
Case 0
If Save_Verwaltung_mit <> Me.cbboxVerwaltungMit.SelectedValue Then
DBObject.set_verwaltung_mit(Me.cbboxVerwaltungMit.SelectedValue, Me.Save_Verwaltung_mit)
Me.Save_Verwaltung_mit = Me.cbboxVerwaltungMit.SelectedValue
End If
If Save_Verwaltung_Durch <> Me.cbboxVerwaltungDurch.SelectedValue Then
DBObject.set_verwaltung_durch(Me.cbboxVerwaltungDurch.SelectedValue, Me.Save_Verwaltung_Durch)
Me.Save_Verwaltung_Durch = Me.cbboxVerwaltungDurch.SelectedValue
End If
If Save_Dateneigentuemer <> Me.cbboxDateneigentuemer.SelectedValue Then
DBObject.set_Dateneigentuemer(Me.cbboxDateneigentuemer.SelectedValue, Me.Save_Dateneigentuemer)
Me.Save_Dateneigentuemer = Me.cbboxDateneigentuemer.SelectedValue
End If
If Me.cbCID.Checked = True Then
DBObject.icid = New SqlInt32(CType(1, Int32))
Else
DBObject.icid = New SqlInt32(CType(0, Int32))
End If
Case Else
End Select
Me.NewEntry = False
DBObject.save_data()
Me.FormDataChanged = False
evh.Fire_MainObject_Saved(DBObject.get_keyvalue, DBObject.iparentid.value)
evh.Fire_Object_saved(Me.KeyValue, DBObject.iparentid.value, Me.ParentForm)
Return True
End Function
Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles TSBtnDelete.Click
'If Me.isDirty = True Then
' Select Case Mymsg.Show_MessageYesNoCancel(3)
' Case MsgBoxResult.Yes
' Me.Save_Data()
' Case MsgBoxResult.No
' Me.isDirty = False
' Case MsgBoxResult.Cancel
' Exit Sub
' End Select
'End If
If Mymsg.Show_MessageYesNo(4) = MsgBoxResult.Yes Then
Dim Keyvalueparent As Integer = DBObject.iparentid.value
evh.Fire_Object_Delete(KeyValue, Keyvalueparent, ParentForm)
evh.Fire_Update_Treesearch(Me.ParentForm)
End If
'evh.Fire_MainObjectDeleted(KeyValue, Keyvalueparent)
' evh.fire_object_Deleted(KeyValue, Keyvalueparent, ParentForm)
End Sub
Private Function Delete_Entry(ByVal Keyvalue As Integer, Optional doQuestion As Boolean = True) As Boolean
If doQuestion Then
If Mymsg.Show_MessageYesNo(4) = MsgBoxResult.Yes Then
DBObject.delete_data()
Return True
Else
Return False
End If
Exit Function
Else
DBObject.delete_data()
'evh.Fire_MainObjectDeleted(Keyvalue, DBObject.iparentid.value)
'evh.Fire_Object_Deleted(Keyvalue, DBObject.iparentid.value, ParentForm)
Return True
End If
End Function
Public Sub Delete_Entry(ByVal keyvalue As Integer, ByVal parentid As Integer, Optional parentform As Object = Nothing, Optional DoQuestion As Boolean = True)
DBObject.get_data(keyvalue)
If Delete_Entry(keyvalue, DoQuestion) Then
Me.NewEntry = False
Me.isDirty = False
evh.Fire_MainObjectDeleted(keyvalue, parentid)
evh.Fire_Object_Deleted(keyvalue, DBObject.iparentid.value, parentform)
End If
End Sub
Private Sub Beziehungen1_Edit_Entry(Keyvalue As Integer, typ As String) Handles Beziehungen1.Edit_Entry
Dim type1 As Integer
Dim type2 As Integer
type2 = Datenklasse.Get_Selectiontype(Me.Type)
type1 = Datenklasse.Get_Selectiontype(typ)
If Globals.Check_Beziehung(Me.TargetDBObject, type1, type2, Me.Change_Keys) = True Then
Dim DBObjekt As New Object
Datenklasse.CreateNew(TargetDBObject, DBObjekt)
DBObjekt.get_data(Keyvalue)
Dim f As New frmBeziehungEdit
f.txtBemerkung.Text = DBObjekt.sbeschreibung.value
f.txtSeqeunz.Value = DBObjekt.isequenz.value
f.cbAktiv.Checked = DBObjekt.baktiv.value = True
f.cbbeziehungstyp.SelectedValue = DBObjekt.ibeziehungstypnr.value
Dim dt As New DataTable
Dim is_temporaer As Boolean = False
dt = Datenklasse.Get_Temporaer_Berechtigung(Keyvalue)
If dt.Rows.Count > 0 Then
f.Panel2.Height = 227
is_temporaer = True
f.TextBox1.Text = dt.Rows(0).Item("Beschreibung")
f.TextBox2.Text = dt.Rows(0).Item("Unterlagen")
f.TextBox3.Text = dt.Rows(0).Item("Bearbeiter_Isi")
f.TextBox4.Text = dt.Rows(0).Item("Kontaktperson_FB").ToString
Try
f.Kontaktid = dt.Rows(0).Item("KontaktID")
Catch
f.Kontaktid = 0
End Try
Try
f.KontaktidSD = dt.Rows(0).Item("KontaktIDSD")
Catch ex As Exception
f.KontaktidSD = 0
End Try
f.DateTimePicker1.Value = dt.Rows(0).Item("termin")
Else
f.Panel2.Height = 1
f.Height = f.Height - 227
End If
f.ShowDialog()
If f.DialogResult = DialogResult.OK Then
DBObjekt.sbeschreibung = New SqlString(CType(f.txtBemerkung.Text, String))
DBObjekt.isequenz = New SqlInt32(CType(f.txtSeqeunz.Value, Int32))
DBObjekt.baktiv = New SqlBoolean(CType(f.cbAktiv.Checked, Boolean))
DBObjekt.ibeziehungstypnr = New SqlInt32(CType(f.cbbeziehungstyp.SelectedValue, Int32))
DBObjekt.save_data()
If is_temporaer = True And f.cbAktiv.Checked = True Then
Datenklasse.Update_Temporaer_Berechtigung(f.TextBox1.Text, f.TextBox2.Text, f.TextBox3.Text, f.TextBox4.Text, f.DateTimePicker1.Value, Keyvalue, 0, f.cbboxKontaktFB.SelectedValue, f.cbboxKontaktSD.SelectedValue)
End If
End If
DBObjekt.dispose()
Refresh_Beziehungen(DBObjekt.Get_KeyValue)
'evh.Fire_MainObject_Saved(Me.KeyValue, DBObject.iparentid.value)
'evh.Fire_MainObject_Created(Me.KeyValue, DBObject.iparentid.value, Me.ParentForm)
Exit Sub
End If
End Sub
Public Function Update_Beziehung(ByVal DestKey As Integer, DestType As Integer, ByVal Grid As C1.Win.C1TrueDBGrid.C1TrueDBGrid, ByVal movecopy As Integer)
Dim type1 As Integer
Dim type2 As Integer
'Dim msgboxres As MsgBoxResult
'msgboxres = Mymsg.Show_MessageYesNoCancel(6)
'If msgboxres = MsgBoxResult.Cancel Then Exit Function
Dim i As Integer
Dim colRows As C1.Win.C1TrueDBGrid.SelectedRowCollection
colRows = Grid.SelectedRows
For i = 0 To colRows.Count - 1
type2 = DestType
type1 = Datenklasse.Get_Selectiontype(Grid.Columns("Typ").CellValue(colRows(i)))
If Globals.Check_Beziehung(TargetDBObject, type1, type2, Me.Change_Keys) = True Then
Dim DBObjekt As New Object
Datenklasse.CreateNew(TargetDBObject, DBObjekt)
If Me.Change_Keys Then
If movecopy = 1 Then
DBObjekt.get_data(Grid.Columns("id").CellValue(colRows(i)))
DBObjekt.set_ObjektNr1(DestKey)
DBObjekt.save_data()
Else
DBObjekt.get_data(Grid.Columns("id").CellValue(colRows(i)))
Dim beztyp As Integer = DBObjekt.ibeziehungstypnr.value
DBObjekt.add_new()
DBObjekt.set_objektnr1(DestKey)
DBObjekt.set_objektnr2(Grid.Columns("mkey").CellValue(colRows(i)))
DBObjekt.sbeschreibung = New SqlString(CType(Grid.Columns("Beschreibung").CellValue(colRows(i)).ToString, String))
DBObjekt.isequenz = New SqlInt32(CType(Grid.Columns("sequenz").CellValue(colRows(i)), Int32))
DBObjekt.ibeziehungstypnr = New SqlInt32(CType(beztyp, Int32))
DBObjekt.save_data()
End If
Else
If movecopy = 1 Then
DBObjekt.get_data(Grid.Columns("id").CellValue(colRows(i)))
DBObjekt.set_ObjektNr2(DestKey)
DBObjekt.save_data()
Else
DBObjekt.get_data(Grid.Columns("id").CellValue(colRows(i)))
Dim beztyp As Integer = DBObjekt.ibeziehungstypnr.value
DBObjekt.add_new()
DBObjekt.set_objektnr2(DestKey)
DBObjekt.set_objektnr1(Grid.Columns("mkey").CellValue(colRows(i)))
DBObjekt.sbeschreibung = New SqlString(CType(Grid.Columns("Beschreibung").CellValue(colRows(i)).ToString, String))
DBObjekt.isequenz = New SqlInt32(CType(Grid.Columns("sequenz").CellValue(colRows(i)), Int32))
DBObjekt.ibeziehungstypnr = New SqlInt32(CType(beztyp, Int32))
DBObjekt.save_data()
End If
DBObjekt.dispose()
End If
End If
Next
Refresh_Beziehungen()
End Function
Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs) Handles TSBtnSetSecurityObject.Click
If InputBox("Passwort:") <> "341211" Then Exit Sub
sec.List_Form_Controls(Me)
sec.Print_Screen(Me)
End Sub
Private Sub AllgMainObjekte_Paint(sender As Object, e As PaintEventArgs) Handles Me.Paint
Me.cbAktiv.Left = Me.txtMutierer.Left
End Sub
Private Sub AllgMainObjekte_Resize(sender As Object, e As EventArgs) Handles Me.Resize
Me.cbAktiv.Left = Me.txtMutierer.Left
End Sub
Private Sub AllgMainObjekte_SizeChanged(sender As Object, e As EventArgs) Handles Me.SizeChanged
Me.cbAktiv.Left = Me.txtMutierer.Left
End Sub
Private Sub ToolStripButton1_Click_1(sender As Object, e As EventArgs) Handles tsbtnReport.Click
For Each r As DataRow In Globals.Objekt.Rows
If r("Standardauswertung").ToString <> "" Then
If r("Standardauswertung") > 0 And Datenklasse.Get_SelectionTypeText(r("Objektnr")) = Me.Type Then
Dim rpt As New _FRReporting._FRReporting
rpt.ConnectionString = Globals.sConnectionString
rpt.Mitarbeiternr = Globals.Mitarbeiternr
rpt.TempFilePath = Globals.TmpFilepath
Dim ctr As New TextBox
ctr = getControlFromName(Me.GroupBox2, r("Paramobject"))
Dim param As String = r("Parameter").ToString
param = param + "'" + ctr.Text + "'"
rpt.DefaultReport(r("Standardauswertung").ToString, r("Parameter").ToString, ctr.Text.ToString, Me.ParentForm.MdiParent)
'DirectCast(FindControl("btnBla", Me), Button).Enabled = False
End If
End If
Next
End Sub
Function getControlFromName(ByRef containerObj As Object, _
ByVal name As String) As Control
Try
Dim tempCtrl As Control
For Each tempCtrl In containerObj.Controls
If tempCtrl.Name.ToUpper.Trim = name.ToUpper.Trim Then
Return tempCtrl
End If
Next tempCtrl
Catch ex As Exception
End Try
End Function
Private Function FindControl(ByVal ControlName As String, ByVal CurrentControl As Control) As Control
Dim ctr As Control
For Each ctr In CurrentControl.Controls
If ctr.Name = ControlName Then
Return ctr
Else
ctr = FindControl(ControlName, ctr)
If Not ctr Is Nothing Then
Return ctr
End If
End If
Next ctr
End Function
Private Sub tsbtncopy1_Click(sender As Object, e As EventArgs) Handles tsbtncopy1.Click
Select Case Datenklasse.Get_Selectiontype(Me.Type)
Case 1
Dim s As String
s = Me.txtFunktionsstelle.Text
Clipboard.SetText(s)
Case 2
Dim s As String
s = Me.txtTGNummer.Text
Clipboard.SetText(s)
End Select
End Sub
Private Sub ToolStripButton1_Click_2(sender As Object, e As EventArgs) Handles tsbtnCopy2.Click
Select Case Datenklasse.Get_Selectiontype(Me.Type)
Case 1
Dim s As String
s = Me.txtFunktionsstelle.Text + " " + Me.txtBezeichnung.Text
Clipboard.SetText(s)
Case 2
Dim s As String
s = Me.txtTGNummer.Text + " " + Me.txtName.Text
Clipboard.SetText(s)
End Select
End Sub
Private Sub cbboxVerwaltungMit_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxVerwaltungMit.SelectedIndexChanged
Check_ParentValues()
End Sub
Public Function Get_Parentvalues() As DataTable
Dim DBObject_Parent As New Object
Dim parentid As Integer = DBObject.iparentid.value
Try
Datenklasse.CreateNew("_DataClass.db." + Me.Type, DBObject_Parent)
DBObject_Parent.get_data(parentid)
Catch ex As Exception
End Try
Try
Dim dt As New DataTable
dt = DBObject_Parent.Get_ParentValues(parentid)
Return dt
dt.Dispose()
Catch ex As Exception
Finally
End Try
End Function
Sub Check_ParentValues()
Me.lblDateneigentuemer.ForeColor = Color.Black
Me.lblVerwaltungDurch.ForeColor = Color.Black
Me.lblVerwaltungMit.ForeColor = Color.Black
Me.lblSequenz.ForeColor = Color.Black
Dim DBObject_Parent As New Object
Dim parentid As Integer = DBObject.iparentid.value
Try
Datenklasse.CreateNew("_DataClass.db." + Me.Type, DBObject_Parent)
DBObject_Parent.get_data(parentid)
If Me.txtSequenz.Value <> DBObject_Parent.isequenz.value Then
Me.lblSequenz.ForeColor = Color.Red
Else
Me.lblSequenz.ForeColor = Color.Black
End If
Catch ex As Exception
End Try
Try
Dim dt As New DataTable
dt = DBObject_Parent.Get_ParentValues(parentid)
If Me.cbboxDateneigentuemer.SelectedValue <> dt.Rows(0).Item(2) And Me.cbboxDateneigentuemer.SelectedValue > -1 Then Me.lblDateneigentuemer.ForeColor = Color.Red Else Me.lblDateneigentuemer.ForeColor = Color.Black
If Me.cbboxVerwaltungDurch.SelectedValue <> dt.Rows(0).Item(1) Then Me.lblVerwaltungDurch.ForeColor = Color.Red Else Me.lblVerwaltungDurch.ForeColor = Color.Black
If Me.cbboxVerwaltungMit.SelectedValue <> dt.Rows(0).Item(0) Then Me.lblVerwaltungMit.ForeColor = Color.Red Else Me.lblVerwaltungMit.ForeColor = Color.Black
dt.Dispose()
Catch ex As Exception
End Try
End Sub
Private Sub cbboxVerwaltungDurch_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxVerwaltungDurch.SelectedIndexChanged
Check_ParentValues()
End Sub
Private Sub cbboxDateneigentuemer_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxDateneigentuemer.SelectedIndexChanged
Check_ParentValues()
End Sub
Private Sub txtSequenz_ValueChanged(sender As Object, e As EventArgs) Handles txtSequenz.ValueChanged
Check_ParentValues()
End Sub
Public Sub Sync_Beziehungen(ByVal RootElement As Integer, ByVal type As String, ByRef tree As DevComponents.AdvTree.AdvTree)
Dim Allnodes As List(Of String) = New List(Of String)
Dim subnodes As List(Of String) = New List(Of String)
Dim dn As DevComponents.AdvTree.Node
For Each n As DevComponents.AdvTree.Node In tree.SelectedNodes
subnodes = GetChildren(n)
For i = 0 To subnodes.Count - 1
Allnodes.Add(subnodes(i))
Next
Allnodes.Add(n.Tag)
Next
Dim vd As Integer
Dim vm As Integer
Dim de As Integer
Dim vda As Integer
Dim vma As Integer
Dim dea As Integer
Select Case UCase(type)
Case "BERECHTIGUNG"
Dim ob As New _DataClass.db.Berechtigung
ob.Get_Data(RootElement)
vd = ob.Get_Verwaltung_Durch()
vm = ob.Get_Verwaltung_mit
de = ob.Get_Dateneigentuemer
For Each i As Integer In Allnodes
ob.Get_Data(i)
vda = ob.Get_Verwaltung_Durch()
vma = ob.Get_Verwaltung_mit
dea = ob.Get_Dateneigentuemer
ob.Set_Verwaltung_Durch(vd, vda)
ob.Set_Verwaltung_mit(vm, vma)
ob.Set_Dateneigentuemer(de, dea)
Next
Case "PLATTFORM"
Dim ob As New _DataClass.db.Plattform
ob.Get_Data(RootElement)
vd = ob.Get_Verwaltung_Durch()
vm = ob.Get_Verwaltung_mit
de = ob.Get_Dateneigentuemer
For Each i As Integer In Allnodes
ob.Get_Data(i)
vda = ob.Get_Verwaltung_Durch()
vma = ob.Get_Verwaltung_mit
dea = ob.Get_Dateneigentuemer
ob.Set_Verwaltung_Durch(vd, vda)
ob.Set_Verwaltung_mit(vm, vma)
ob.Set_Dateneigentuemer(de, dea)
Next
Case "SERVER"
Dim ob As New _DataClass.db.Server
ob.Get_Data(RootElement)
vd = ob.Get_Verwaltung_Durch()
vm = ob.Get_Verwaltung_mit
de = ob.Get_Dateneigentuemer
For Each i As Integer In Allnodes
ob.Get_Data(i)
vda = ob.Get_Verwaltung_Durch()
vma = ob.Get_Verwaltung_mit
dea = ob.Get_Dateneigentuemer
ob.Set_Verwaltung_Durch(vd, vda)
ob.Set_Verwaltung_mit(vm, vma)
ob.Set_Dateneigentuemer(de, dea)
Next
End Select
End Sub
Function GetChildren(parentNode As DevComponents.AdvTree.Node) As List(Of String)
Dim nodes As List(Of String) = New List(Of String)
GetAllChildren(parentNode, nodes)
Return nodes
End Function
Sub GetAllChildren(parentNode As DevComponents.AdvTree.Node, nodes As List(Of String))
For Each childNode As DevComponents.AdvTree.Node In parentNode.Nodes
nodes.Add(childNode.Tag)
GetAllChildren(childNode, nodes)
Next
End Sub
Sub GetAllChildren(parentNode As TreeNode, nodes As List(Of String))
For Each childNode As TreeNode In parentNode.Nodes
nodes.Add(childNode.Tag)
GetAllChildren(childNode, nodes)
Next
End Sub
Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked
End Sub
Private Sub KopierenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KopierenToolStripMenuItem.Click
Clipboard.SetText(txtPrimaryKey.Text)
End Sub
Private Sub GroupBox2_Enter(sender As Object, e As EventArgs) Handles GroupBox2.Enter
End Sub
Private Sub dtPickernaechstePruefung_ValueChanged(sender As Object, e As EventArgs) Handles dtPickernaechstePruefung.ValueChanged
Me.txtnaechstePruefung.Text = dtPickernaechstePruefung.Value.ToShortDateString
End Sub
End Class