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.
737 lines
27 KiB
737 lines
27 KiB
Imports System
|
|
Imports System.Data
|
|
Imports System.Data.SqlTypes
|
|
Imports System.Data.SqlClient
|
|
Imports System.Text.RegularExpressions
|
|
|
|
Public Class frmVertragsereignis
|
|
|
|
#Region "Deklarationen"
|
|
Dim Vertragsereignis As New TKB.VV.Vertrag.clsVertragsereignis
|
|
|
|
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 Aktuelles_Vertragselement As Integer = 0
|
|
Private Aktuelles_Vertragsereignis As Integer = 0
|
|
|
|
Private Anzeige As Boolean = False
|
|
Dim Neuer_Datensatz As Boolean
|
|
Dim Plausifehler As Boolean = False
|
|
|
|
#End Region
|
|
|
|
#Region "Closing / Check_Changes"
|
|
|
|
''' <summary>
|
|
''' Schliessen des Formulars
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
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
|
|
If Me.Vertragsereignis.Neuer_Datensatz = True Then Me.Vertragsereignis.Delete(Me.Vertragsereignis.iEreignisNr.Value)
|
|
Globals.MyEventHanlder.Ereignis_Closed()
|
|
Me.dispose()
|
|
End If
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Prüfung, ob Datenänderungen vorgenommen wurden.
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Function Check_Changes() As Boolean
|
|
If Me.FormReadonly Then Exit Function
|
|
Dim msgres As MsgBoxResult
|
|
If Me.FormDataChanged Then
|
|
msgres = msg.Show_MessageYesNoCancel(3)
|
|
Select Case msgres
|
|
Case MsgBoxResult.Yes
|
|
Save_data()
|
|
If Plausifehler = True Then Return False
|
|
Return True
|
|
Case MsgBoxResult.Cancel
|
|
Return False
|
|
Case MsgBoxResult.No
|
|
Return True
|
|
End Select
|
|
Else
|
|
Return True
|
|
End If
|
|
End Function
|
|
|
|
#End Region
|
|
|
|
#Region "Formular"
|
|
''' <summary>
|
|
''' Standard Constructore New
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Sub New()
|
|
InitializeComponent()
|
|
Me.Aktuelles_Vertragsereignis = -1
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Formualr mit Vertragselementnr und Anzeigestatus öffnen
|
|
''' </summary>
|
|
''' <param name="Vertragselementnr">Nr des Vertragspartners</param>
|
|
''' <param name="Anzeige">True=Readonly, False=normal</param>
|
|
''' <remarks></remarks>
|
|
Sub New(ByVal Vertragsereignisnr As Integer, Optional ByVal vertragselementnr As Integer = 0, Optional ByVal Anzeige As Boolean = False, Optional ByVal CreateNew As Boolean = False)
|
|
MyBase.New()
|
|
InitializeComponent()
|
|
Me.Anzeige = Anzeige
|
|
If CreateNew Then
|
|
Me.Aktuelles_Vertragsereignis = Me.Vertragsereignis.Add_New(vertragselementnr)
|
|
Me.Neuer_Datensatz = True
|
|
Else
|
|
Me.Aktuelles_Vertragsereignis = Vertragsereignisnr
|
|
End If
|
|
End Sub
|
|
Public Overloads Sub dispose()
|
|
Me.Vertragsereignis.dispose()
|
|
sec = Nothing
|
|
msg = Nothing
|
|
MyBase.Dispose()
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Load-Methode
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub frmVertragsereignis_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
|
|
|
If Anzeige = True Then
|
|
Me.TSBtnSuche.Enabled = False
|
|
Me.TSBtnSave.Enabled = False
|
|
Else
|
|
Me.TSBtnSuche.Enabled = True
|
|
End If
|
|
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()
|
|
|
|
'Kostenarten laden
|
|
Me.cboxKostenart.Items.Clear()
|
|
Me.cboxKostenart.DataSource = Me.Vertragsereignis.Kostenarten
|
|
Me.cboxKostenart.DisplayMember = "Bezeichnung"
|
|
Me.cboxKostenart.ValueMember = "Kostenartnr"
|
|
|
|
'Periodizitäten laden
|
|
Me.cboxPeriodizität.Items.Clear()
|
|
Me.cboxPeriodizität.DataSource = Me.Vertragsereignis.Periodizitäten
|
|
Me.cboxPeriodizität.DisplayMember = "Bezeichnung"
|
|
Me.cboxPeriodizität.ValueMember = "Periodizitaetnr"
|
|
|
|
Me.cboxEreignistyp.Items.Clear()
|
|
Me.cboxEreignistyp.DataSource = Me.Vertragsereignis.Ereignistypen
|
|
Me.cboxEreignistyp.DisplayMember = "Bezeichnung"
|
|
Me.cboxEreignistyp.ValueMember = "Ereignistypnr"
|
|
|
|
Me.cboxKuendigungsfrist.DataSource = Me.Vertragsereignis.Kuendigungsfrist
|
|
Me.cboxKuendigungsfrist.DisplayMember = "Bezeichnung"
|
|
Me.cboxKuendigungsfrist.ValueMember = "Kuendigungsfristnr"
|
|
If Me.FormReadonly Then sec.Set_Form_Readonly(Me)
|
|
|
|
AddChanges(Me)
|
|
Get_Data(Me.Aktuelles_Vertragsereignis)
|
|
If Me.Neuer_Datensatz = True Then
|
|
Me.Vertragsereignis.Neuer_Datensatz = True
|
|
Me.Neuer_Datensatz = False
|
|
End If
|
|
|
|
Me.Refresh_History()
|
|
Me.cboxEreignistyp_SelectedIndexChanged(sender, e)
|
|
Enable_Disable_Datum()
|
|
Me.FormDataChanged = False
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region "Buttons/Menu"
|
|
|
|
''' <summary>
|
|
''' Formular schliessen
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click
|
|
Me.Close()
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Sicherungs-Button betätigt
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnSave.Click
|
|
Me.Save_Data()
|
|
Me.txtMutiertam.Text = Me.Vertragsereignis.daMutiert_am.ToString
|
|
Me.FormDataChanged = False
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Datensatz kopieren
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnCopy.Click
|
|
If Me.Check_Changes = False Then Exit Sub
|
|
Me.Get_Data(Vertragsereignis.Create_Copy(Me.Vertragsereignis.iEreignisNr.Value))
|
|
Me.Vertragsereignis.Neuer_Datensatz = True
|
|
End Sub
|
|
''' <summary>
|
|
''' Neuer Datensatz erstellen
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnNew.Click
|
|
If Me.Check_Changes = False Then Exit Sub
|
|
Me.Get_Data(Me.Vertragsereignis.Add_New(Me.Aktuelles_Vertragselement))
|
|
Me.Vertragsereignis.Neuer_Datensatz = True
|
|
End Sub
|
|
''' <summary>
|
|
''' Aktueller Datensatz inaktivieren
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnDelete.Click
|
|
If msg.Show_MessageYesNo(250) = MsgBoxResult.Yes Then
|
|
Me.Vertragsereignis.Delete_Ereignis(Me.Vertragsereignis.iEreignisNr.Value)
|
|
Me.Close()
|
|
End If
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Menu Beenden
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click
|
|
Me.TSBtnQuit_Click(sender, e)
|
|
End Sub
|
|
|
|
|
|
#End Region
|
|
|
|
#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 CheckBox Then
|
|
Dim ctl As CheckBox = c
|
|
AddHandler ctl.CheckedChanged, evh
|
|
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)
|
|
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
|
|
|
|
''' <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
|
|
|
|
''' <summary>
|
|
''' Handelt das Change-Ereignis eines Datetimepckers und stellt das ausgewählte Datum in das entsprechende Textfeld
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub DateTimePicker_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _
|
|
dtPickerDatum.ValueChanged, dtPickerStart.ValueChanged, dtPickerEnde.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
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "Daten"
|
|
''' <summary>
|
|
''' Daten ab DB laden uns ins Form befüllen
|
|
''' </summary>
|
|
''' <param name="Vertragselementnr"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub Get_Data(ByVal Vertragsereignisnr As Integer)
|
|
Try
|
|
Vertragsereignis.Get_Ereignis(Vertragsereignisnr)
|
|
Me.Aktuelles_Vertragselement = Me.Vertragsereignis.Vertragselement.iVertragselementnr.Value
|
|
Me.Aktuelles_Vertragsereignis = Vertragsereignisnr
|
|
Me.txtVertragselement.Text = Me.Vertragsereignis.Vertragselement.sBezeichnung.Value
|
|
Me.txtBezeichnung.Text = Me.Vertragsereignis.sBezeichnung.Value
|
|
Me.cboxEreignistyp.SelectedValue = Me.Vertragsereignis.iEreignistypNr.Value
|
|
|
|
Me.txtDatum.Text = Me.Vertragsereignis.daDatum.ToString
|
|
Me.txtStart.Text = Me.Vertragsereignis.daStart.ToString
|
|
Me.txtEnde.Text = Me.Vertragsereignis.daEnde.ToString
|
|
Me.txtVorlaufzeit.Text = Me.Vertragsereignis.iVorlaufzeit.Value
|
|
Me.txtBetrag.Text = Me.Vertragsereignis.fBetrag.Value
|
|
Check_Betrag()
|
|
Me.cboxKostenart.SelectedValue = Me.Vertragsereignis.iKostenartNr.Value
|
|
Me.cboxPeriodizität.SelectedValue = Me.Vertragsereignis.iPeriodizitaetNr.Value
|
|
Me.txtBemerkung.Text = Me.Vertragsereignis.sBeschreibung.Value
|
|
Me.txtErstelltam.Text = Vertragsereignis.daErstellt_am.ToString
|
|
Me.txtMutiertam.Text = Vertragsereignis.daMutiert_am.ToString
|
|
Me.txtMutierer.Text = Vertragsereignis.iMutierer.ToString
|
|
Me.cboxSecurityLevel.SelectedValue = Me.Vertragsereignis.iSecurityLevelNr.Value
|
|
Me.cbInklMwSt.Checked = Me.Vertragsereignis.bInklMwSt.Value = True
|
|
Me.cbaktiv.Checked = Me.Vertragsereignis.bAktiv.Value = True
|
|
|
|
Me.cboxKuendigungsfrist.SelectedValue = Me.Vertragsereignis.iKuendigungsfristnr.Value
|
|
sec.Set_Form_Security(Me)
|
|
|
|
Me.FormDataChanged = False
|
|
Catch ex As Exception
|
|
For Each ctl As ToolStripButton In Me.ToolStrip1.Items
|
|
ctl.Enabled = False
|
|
Next
|
|
Me.TSBtnQuit.Enabled = True
|
|
Me.TSBtnSuche.Enabled = True
|
|
End Try
|
|
Me.FormDataChanged = False
|
|
|
|
End Sub
|
|
''' <summary>
|
|
''' Daten ab Form speichern
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Sub Save_data()
|
|
Plausifehler = False
|
|
If Me.dtPickerDatum.Enabled = True Then
|
|
If Trim(Me.txtDatum.Text) = ". ." Then
|
|
msg.show_standardmessage(871, MsgBoxStyle.Critical)
|
|
Me.txtDatum.Focus()
|
|
Me.txtDatum.SelectAll()
|
|
Plausifehler = True
|
|
End If
|
|
Else
|
|
If Trim(Me.txtStart.Text) = ". ." Then
|
|
msg.show_standardmessage(872, MsgBoxStyle.Critical)
|
|
Me.txtStart.Focus()
|
|
Me.txtStart.SelectAll()
|
|
Plausifehler = True
|
|
End If
|
|
End If
|
|
If Plausifehler Then Exit Sub
|
|
|
|
Me.Vertragsereignis.iEreignisNr = New SqlInt32(CType(Me.Aktuelles_Vertragsereignis, Int32))
|
|
Me.Vertragsereignis.iEreignistypNr = New SqlInt32(CType(Me.cboxEreignistyp.SelectedValue, Int32))
|
|
Me.Vertragsereignis.iVertragselementnr = New SqlInt32(CType(Me.Aktuelles_Vertragselement, Int32))
|
|
Me.Vertragsereignis.sBezeichnung = New SqlString(CType(Me.txtBezeichnung.Text, String))
|
|
If IsDate(Me.txtDatum.Text) Then
|
|
Me.Vertragsereignis.daDatum = New SqlDateTime(CType(Me.txtDatum.Text, DateTime))
|
|
Else
|
|
Me.Vertragsereignis.daDatum = New SqlDateTime(CType(SqlDateTime.Null, DateTime))
|
|
End If
|
|
If IsDate(Me.txtStart.Text) Then
|
|
Me.Vertragsereignis.daStart = New SqlDateTime(CType(Me.txtStart.Text, DateTime))
|
|
Else
|
|
Me.Vertragsereignis.daStart = New SqlDateTime(CType(SqlDateTime.Null, DateTime))
|
|
End If
|
|
If IsDate(Me.txtEnde.Text) Then
|
|
Me.Vertragsereignis.daEnde = New SqlDateTime(CType(Me.txtEnde.Text, DateTime))
|
|
Else
|
|
Me.Vertragsereignis.daEnde = New SqlDateTime(CType(SqlDateTime.Null, DateTime))
|
|
End If
|
|
If Me.txtVorlaufzeit.Text = "" Then
|
|
Me.Vertragsereignis.iVorlaufzeit = New SqlInt32(CType(0, Int32))
|
|
Else
|
|
Me.Vertragsereignis.iVorlaufzeit = New SqlInt32(CType(Me.txtVorlaufzeit.Text, Int32))
|
|
End If
|
|
If Me.txtBetrag.Text = "" Then
|
|
Me.Vertragsereignis.fBetrag = New SqlDouble(CType(0, Double))
|
|
Else
|
|
Me.Vertragsereignis.fBetrag = New SqlDouble(CType(Me.txtBetrag.Text, Double))
|
|
End If
|
|
Me.Vertragsereignis.iPeriodizitaetNr = New SqlInt32(CType(Me.cboxPeriodizität.SelectedValue, Int32))
|
|
|
|
|
|
If Me.cboxKostenart.SelectedValue Is Nothing Then
|
|
Me.Vertragsereignis.iKostenartNr = New SqlInt32(CType(-1, Int32))
|
|
Else
|
|
|
|
Me.Vertragsereignis.iKostenartNr = New SqlInt32(CType(Me.cboxKostenart.SelectedValue, Int32))
|
|
End If
|
|
|
|
Me.Vertragsereignis.iKuendigungsfristnr = New SqlInt32(CType(Me.cboxKuendigungsfrist.SelectedValue, Int32))
|
|
|
|
Me.Vertragsereignis.bInklMwSt = New SqlBoolean(CType(Me.cbInklMwSt.Checked = True, Boolean))
|
|
Me.Vertragsereignis.bAktiv = New SqlBoolean(CType(Me.cbaktiv.Checked = True, Boolean))
|
|
Me.Vertragsereignis.sBeschreibung = New SqlString(CType(Me.txtBemerkung.Text, String))
|
|
Me.Vertragsereignis.iSecurityLevelNr = New SqlInt32(CType(Me.cboxSecurityLevel.SelectedValue, Int32))
|
|
Me.Vertragsereignis.Save_Data()
|
|
Me.FormDataChanged = False
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "Security"
|
|
''' <summary>
|
|
''' Laden der Securitylevel-Daten in die Combobox
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Sub Load_Securitylevel()
|
|
Dim seclevel As New TKB.VV.DB.clsSecurityLevel
|
|
Dim secleveldata As New DataTable
|
|
|
|
seclevel.cpMainConnectionProvider = Globals.conn
|
|
Globals.conn.OpenConnection()
|
|
secleveldata = seclevel.SelectAll
|
|
Globals.conn.CloseConnection(True)
|
|
|
|
Me.cboxSecurityLevel.DataSource = secleveldata
|
|
Me.cboxSecurityLevel.DisplayMember = "Bezeichnung"
|
|
Me.cboxSecurityLevel.ValueMember = "SecurityLevelNr"
|
|
|
|
seclevel.Dispose()
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
''' <summary>
|
|
''' Validierung Betragsfeld
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub txtBetrag_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtBetrag.Validating
|
|
If Not Check_Betrag() Then e.Cancel = True
|
|
End Sub
|
|
''' <summary>
|
|
''' Betragswert prüfen
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Function Check_Betrag() As Boolean
|
|
If Trim(Me.txtBetrag.Text) = "" Then
|
|
Me.txtBetrag.Text = "0.00"
|
|
Return True
|
|
End If
|
|
|
|
If Not IsNumeric(Me.txtBetrag.Text) Then
|
|
msg.show_standardmessage(600, MsgBoxStyle.Critical)
|
|
Return False
|
|
End If
|
|
|
|
Dim i As Integer
|
|
i = Me.txtBetrag.Text.IndexOf(".")
|
|
|
|
If i = -1 Then
|
|
Me.txtBetrag.Text = Me.txtBetrag.Text + ".00"
|
|
Exit Function
|
|
End If
|
|
|
|
Dim s = Me.txtBetrag.Text.Substring(i + 1)
|
|
If Len(s) = 0 Then
|
|
Me.txtBetrag.Text = Me.txtBetrag.Text + "00"
|
|
Exit Function
|
|
End If
|
|
If Len(s) = 1 Then
|
|
Me.txtBetrag.Text = Me.txtBetrag.Text + "0"
|
|
End If
|
|
If Len(s) > 2 Then
|
|
msg.show_standardmessage(600, MsgBoxStyle.Critical)
|
|
Return False
|
|
End If
|
|
Return True
|
|
|
|
End Function
|
|
|
|
''' <summary>
|
|
''' Prüfung, ob es sich um einen numerischen Wert handelt
|
|
''' </summary>
|
|
''' <param name="str"></param>
|
|
''' <returns></returns>
|
|
''' <remarks></remarks>
|
|
Private Function IsNumeric(ByVal str As String)
|
|
Return New Regex("\d+").Match(str).Success
|
|
End Function
|
|
|
|
|
|
' Public Function IsNumeric(ByVal str As String) As Boolean
|
|
'Dim r As Regex = New Regex("\d+")
|
|
'Dim m As Match = r.Match(Str)
|
|
' If (m.Success) Then
|
|
' Return True
|
|
' End If
|
|
' Return False
|
|
'' End Function
|
|
'If Not (IsNumeric(TextBox4.Text)) Then
|
|
|
|
|
|
|
|
Private Sub btnVertragselementSuche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVertragselementSuche.Click
|
|
Dim vertragselement As New TKB.VV.Vertrag.clsVertragselement
|
|
Dim i As Integer = 0
|
|
If vertragselement.Suchen(i) Then
|
|
Me.Aktuelles_Vertragselement = i
|
|
Me.txtVertragselement.Text = vertragselement.Get_Vertragselementbezeichnung(i)
|
|
Me.FormDataChanged = True
|
|
End If
|
|
vertragselement.dispose()
|
|
End Sub
|
|
|
|
#Region "History"
|
|
''' <summary>
|
|
''' History
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Sub Refresh_History()
|
|
Try
|
|
If Check_Changes() = False Then Exit Sub
|
|
Catch ex As Exception
|
|
End Try
|
|
Dim filtertext As String = "none"
|
|
Try
|
|
filtertext = Me.C1History.Columns("Aktiv").FilterText
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
Dim bm As Integer = 0
|
|
bm = Me.C1History.Bookmark
|
|
|
|
Me.C1History.Enabled = False
|
|
Me.Vertragsereignis.Get_History(Me.C1History)
|
|
Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1History, "History", Me.Vertragsereignis.History.Tabledata)
|
|
If filtertext <> "none" Then Me.C1History.Columns("Aktiv").FilterText = filtertext
|
|
sec.Set_Form_Security(Me)
|
|
|
|
Try
|
|
Me.C1History.Bookmark = bm
|
|
Catch ex As Exception
|
|
End Try
|
|
Me.C1History.Enabled = True
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
|
|
Private Sub cboxPeriodizität_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboxPeriodizität.SelectedIndexChanged
|
|
Enable_Disable_Datum()
|
|
End Sub
|
|
|
|
Private Sub Enable_Disable_Datum()
|
|
Try
|
|
If LCase(Me.cboxPeriodizität.Text) = "einmalig" Then
|
|
Me.dtPickerStart.Enabled = False
|
|
Me.dtPickerEnde.Enabled = False
|
|
Me.txtStart.Enabled = False
|
|
Me.txtEnde.Enabled = False
|
|
Me.txtStart.Text = " . . "
|
|
Me.txtEnde.Text = " . . "
|
|
Me.dtPickerDatum.Enabled = True
|
|
Me.txtDatum.Enabled = True
|
|
Else
|
|
Me.dtPickerStart.Enabled = True
|
|
Me.dtPickerEnde.Enabled = True
|
|
Me.txtStart.Enabled = True
|
|
Me.txtEnde.Enabled = True
|
|
Me.txtDatum.Text = " . . "
|
|
Me.dtPickerDatum.Enabled = False
|
|
Me.txtDatum.Enabled = False
|
|
End If
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub cboxEreignistyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboxEreignistyp.SelectedIndexChanged
|
|
Try
|
|
If Me.Vertragsereignis.Check_Zahlungsdaten(Me.cboxEreignistyp.SelectedValue) Then
|
|
Me.txtBetrag.Enabled = True
|
|
Me.cbInklMwSt.Enabled = True
|
|
Me.cboxKostenart.Enabled = True
|
|
Me.cboxKuendigungsfrist.Enabled = False
|
|
Me.txtVorlaufzeit.Text = ""
|
|
Me.txtVorlaufzeit.Enabled = False
|
|
Else
|
|
If Me.Vertragsereignis.Check_Kuendigungsdaten(Me.cboxEreignistyp.SelectedValue) = True Then
|
|
Me.cboxKuendigungsfrist.Enabled = True
|
|
Me.txtBetrag.Enabled = False
|
|
Me.cbInklMwSt.Enabled = False
|
|
Me.cboxKostenart.Enabled = False
|
|
Me.cboxKostenart.SelectedIndex = -1
|
|
Me.cboxKostenart.Text = ""
|
|
Me.txtVorlaufzeit.Enabled = True
|
|
Else
|
|
Me.txtVorlaufzeit.Enabled = True
|
|
Me.cboxKuendigungsfrist.Enabled = False
|
|
Me.txtBetrag.Enabled = False
|
|
Me.cbInklMwSt.Enabled = False
|
|
Me.cboxKostenart.Enabled = False
|
|
End If
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
Private Sub DateTimePicker_leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _
|
|
dtPickerDatum.Leave, dtPickerStart.Leave, dtPickerEnde.Leave
|
|
Dim s As String
|
|
Dim obj As DateTimePicker = sender
|
|
s = obj.Name
|
|
Check_Datum(Me.Vertragsereignis.iEreignisNr.Value, obj.Value, obj.Name)
|
|
End Sub
|
|
|
|
Private Sub txtVertragsbegin_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles _
|
|
txtDatum.Leave, txtStart.Leave, txtEnde.Leave
|
|
Dim obj As MaskedTextBox = sender
|
|
Check_Datum(Me.Vertragsereignis.iEreignisNr.Value, obj.Text, obj.Name)
|
|
End Sub
|
|
|
|
Private Sub Check_Datum(ByVal Vertragsereignisnr As Integer, ByVal Datum As String, ByVal element As String)
|
|
Dim dt As New DataTable
|
|
If Not IsDate(Datum) Then Datum = "01.01.1900"
|
|
dt = Me.Vertragsereignis.Datumscheck(Vertragsereignisnr, Datum, element)
|
|
Dim titel As String = "Datumsprüfung Vertragsereignis: " + Me.Vertragsereignis.sBezeichnung.ToString
|
|
|
|
Try
|
|
Dim formopen As Boolean = False
|
|
Dim dtpform As frmDatumspruefung
|
|
Dim p As Form = Me.ParentForm
|
|
For Each windows As Form In p.MdiChildren
|
|
If windows.Name = "frmDatumspruefung" Then
|
|
formopen = True
|
|
dtpform = windows
|
|
End If
|
|
Next
|
|
If formopen = True And dt.Rows.Count > 0 Then
|
|
dtpform.C1Pruefresultate.DataSource = dt
|
|
dtpform.C1Pruefresultate.DataMember = dt.TableName
|
|
dtpform.Text = titel
|
|
Me.SpaltenTitel.Spaltentitel_aktualisieren(dtpform.C1Pruefresultate, "Datumspruefung", dt)
|
|
dtpform.TopMost = True
|
|
dtpform.BringToFront()
|
|
dtpform.Show()
|
|
|
|
Exit Sub
|
|
End If
|
|
If dt.Rows.Count > 0 Then
|
|
Dim f As New frmDatumspruefung
|
|
f.C1Pruefresultate.DataSource = dt
|
|
f.C1Pruefresultate.DataMember = dt.TableName
|
|
f.Text = titel
|
|
f.MdiParent = Me.MdiParent
|
|
Me.SpaltenTitel.Spaltentitel_aktualisieren(f.C1Pruefresultate, "Datumspruefung", dt)
|
|
|
|
f.Show()
|
|
End If
|
|
'dt.Dispose()
|
|
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
End Class |