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.
658 lines
26 KiB
658 lines
26 KiB
Imports System
|
|
Imports System.Data
|
|
Imports System.Data.SqlTypes
|
|
Imports System.Data.SqlClient
|
|
Public Class frmDokument
|
|
|
|
#Region "Deklarationen"
|
|
Dim Dokument As New TKB.VV.DMS.clsDok
|
|
Dim DokumentAblageTyp As New TKB.VV.DB.clsDokumentAblageTyp
|
|
Dim DokumentAblageTypen As New DataTable
|
|
|
|
Dim sec As New TKB.VV.Utils.MySecurity
|
|
Dim msg As New TKB.VV.Utils.MyMessage
|
|
Dim FormReadonly As Boolean = False
|
|
Dim FormDataChanged As Boolean = False
|
|
Dim SpaltenTitel As New TKB.VV.Utils.Tabellenspalte
|
|
|
|
Dim Aktuelles_Dokument As Integer
|
|
Dim Aktuelles_Element As Integer
|
|
Dim Doktype As Integer
|
|
|
|
''' <summary>
|
|
''' Doktype
|
|
''' 1: Vertragselement
|
|
''' 2: Test-Drehbuch
|
|
''' 3: Applikationsdokument
|
|
''' 4: Applikationlogbuch
|
|
''' </summary>ö
|
|
''' <remarks></remarks>
|
|
Dim Aktueller_Doktype As Integer
|
|
|
|
Dim Anzeige As Boolean = False
|
|
Private SaveFileName As String = ""
|
|
Dim Neuer_Datensatz 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.Dokument.Neuer_Datensatz = True Then Me.Dokument.Delete(Me.Dokument.iDokumentNr.Value)
|
|
Globals.MyEventHanlder.Dokumente_Closed()
|
|
Me.Dispose()
|
|
End If
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Prüfung, ob Datenänderungen vorgenommen wurden. Beim Speichern werden ebenfalls allfällige Änderungen von C1DokumentAblagoeOrt durchgeführt.
|
|
''' Wurden lediglich Änderungen bei C1Dokumentablageort vorgenommen, wird separat gefrat, ob die Änderungen gespeichert werden sollen.
|
|
''' </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()
|
|
Return True
|
|
Case MsgBoxResult.Cancel
|
|
Return False
|
|
Case MsgBoxResult.No
|
|
Return True
|
|
End Select
|
|
Else
|
|
If Me.Dokument.Dokumentablageort.Tabledata.HasChanges Then
|
|
Dim msgboxres As MsgBoxResult
|
|
msgboxres = msg.Show_MessageYesNoCancel(3)
|
|
If msgboxres = MsgBoxResult.Cancel Then
|
|
Return True
|
|
End If
|
|
If msgboxres = MsgBoxResult.Yes Then
|
|
Me.Dokument.Dokumentablageort.Save_Data()
|
|
Return True
|
|
End If
|
|
Return True
|
|
Else
|
|
Return True
|
|
End If
|
|
End If
|
|
End Function
|
|
|
|
#End Region
|
|
|
|
#Region "Formular"
|
|
''' <summary>
|
|
'''
|
|
''' </summary>
|
|
''' <param name="DokumentNr">Optionaler Parameter Dokumentnummer des aktuellen Dokuments</param>
|
|
''' <remarks></remarks>
|
|
Sub New(ByVal DokumentNr As Integer, ByVal Doktype As Integer, Optional ByVal Elementnr As Integer = -1, Optional ByVal Anzeige As Boolean = False, Optional ByVal CreateNew As Boolean = False)
|
|
Me.InitializeComponent()
|
|
If CreateNew Then
|
|
Me.Aktuelles_Dokument = Me.Dokument.Add_New(Elementnr, DokType)
|
|
Me.Neuer_Datensatz = True
|
|
Else
|
|
Me.Aktuelles_Dokument = DokumentNr
|
|
End If
|
|
Me.Anzeige = Anzeige
|
|
Me.Aktuelles_Element = Elementnr
|
|
Me.Doktype = Doktype
|
|
End Sub
|
|
''' <summary>
|
|
''' Formular-Load
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub frmDokument_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()
|
|
|
|
'Dokumenttypen-Laden
|
|
Me.Dokument.Get_Dokumenttypen()
|
|
Me.cboxDokumenttyp.DataSource = Me.Dokument.Dokumenttypdaten
|
|
Me.cboxDokumenttyp.DisplayMember = "Bezeichnung"
|
|
Me.cboxDokumenttyp.ValueMember = "Dokumenttypnr"
|
|
|
|
AddChanges(Me)
|
|
Get_Data(Me.Aktuelles_Dokument)
|
|
If Me.Neuer_Datensatz = True Then
|
|
Me.Dokument.Neuer_Datensatz = True
|
|
Me.Neuer_Datensatz = False
|
|
End If
|
|
If Me.FormReadonly Then Me.sec.Set_Form_Readonly(Me)
|
|
Me.txtBezeichnung.Focus()
|
|
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.txtMutiert_am.Text = Me.Dokument.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(Dokument.Create_Copy(Me.Dokument.iDokumentNr.Value))
|
|
Me.Dokument.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.Dokument.Add_New(Me.Aktuelles_Element, Me.Doktype))
|
|
|
|
Me.txtFilename.Text = ""
|
|
Me.Dokument.Neuer_Datensatz = True
|
|
Me.txtBezeichnung.Focus()
|
|
End Sub
|
|
''' <summary>
|
|
''' Aktueller Datensatz inaktivieren
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnDelete_Click(ByVal senderBeendenToolStripMenuItem As System.Object, ByVal e As System.EventArgs) Handles TSBtnDelete.Click
|
|
If msg.Show_MessageYesNo(270) = MsgBoxResult.Yes Then
|
|
Me.Dokument.Delete_Dokument(Me.Dokument.iDokumentNr.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
|
|
|
|
''' <summary>
|
|
''' Vertragspartner suchen
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub TSBtnSuche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnSuche.Click
|
|
If Not Me.FormReadonly Then Check_Changes()
|
|
'Dim i As Integer
|
|
'If Me.Vertragspartnerdata.Vertragspartner_Suchen(i) = True Then
|
|
' Me.Get_Data(i)
|
|
'End If
|
|
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 dtPickerVersionsdatum.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="DokumentNr"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub Get_Data(ByVal Dokumentnr As Integer)
|
|
Try
|
|
Dokument.Get_Dokumenttypen()
|
|
Dokument.Get_Dokument(Dokumentnr)
|
|
Me.txtBezeichnung.Text = Dokument.sBezeichnung.Value
|
|
Me.cboxDokumenttyp.SelectedValue = Dokument.iDokumenttypNr.Value
|
|
Me.txtBeschreibung.Text = Dokument.sBeschreibung.Value
|
|
Me.txtVersion.Text = Dokument.sVersion.ToString
|
|
Me.txtVersionsdatum.Text = Dokument.daVersionsdatum.ToString
|
|
Me.txtDateiname.Text = Dokument.sFilename.Value
|
|
If Me.txtDateiname.Text <> "" Then Me.btnDokumentAnzeigen.Enabled = True Else Me.btnDokumentAnzeigen.Enabled = False
|
|
Me.txtDateiname.ReadOnly = True
|
|
|
|
Me.SaveFileName = Me.txtDateiname.Text
|
|
Me.txtOriginalFilename_incl_path.Text = Dokument.sOriginalFilename_incl_Path.Value
|
|
Me.txtErstellt_am.Text = Dokument.daErstellt_am.ToString
|
|
Me.txtMutiert_am.Text = Dokument.daMutiert_am.ToString
|
|
Me.txtMutierer.Text = Dokument.iMutierer.Value
|
|
Me.cboxSecurityLevel.SelectedValue = Dokument.iSecurityLevelNr.Value
|
|
Try
|
|
Me.cbaktiv.Checked = Dokument.bAktiv.Value = True
|
|
|
|
Catch ex As Exception
|
|
Me.cbaktiv.Checked = True
|
|
End Try
|
|
If Not Anzeige Then
|
|
For Each ctl As ToolStripButton In Me.ToolStrip1.Items
|
|
ctl.Enabled = True
|
|
Next
|
|
End If
|
|
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
|
|
|
|
Ablage_Orte_Aktualisieren()
|
|
Me.FormDataChanged = False
|
|
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Daten ab Form speichern
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Sub Save_data()
|
|
'Prüfung, ob das Ausgewählte File zur Speicherung vorhanden ist
|
|
If Me.txtFilename.Text <> "" Then
|
|
If Not IO.File.Exists(Me.txtFilename.Text) Then
|
|
msg.show_standardmessage(271, MsgBoxStyle.Exclamation)
|
|
msg.show_standardmessage(273, MsgBoxStyle.Information)
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
If Me.txtFilename.Text <> "" And Me.txtDateiname.Text <> "" And Me.txtDateiname.Text <> Me.SaveFileName And Me.SaveFileName <> "" Then
|
|
If msg.Show_MessageYesNo(272) = MsgBoxResult.No Then
|
|
msg.show_standardmessage(273, MsgBoxStyle.Information)
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
Dokument.iKeyValue = New SqlInt32(CType(Me.Aktuelles_Element, Int32))
|
|
Dokument.iDokumenttypNr = New SqlInt32(CType(Me.cboxDokumenttyp.SelectedValue, Int32))
|
|
Dokument.sBezeichnung = New SqlString(CType(Me.txtBezeichnung.Text, String))
|
|
Dokument.sBeschreibung = New SqlString(CType(Me.txtBeschreibung.Text, String))
|
|
Dokument.sVersion = New SqlString(CType(Me.txtVersion.Text, String))
|
|
Dokument.iSecurityLevelNr = New SqlInt32(CType(Me.cboxSecurityLevel.SelectedValue, Int32))
|
|
If IsDate(Me.txtVersionsdatum.Text) Then
|
|
Dokument.daVersionsdatum = New SqlDateTime(CType(Me.txtVersionsdatum.Text, DateTime))
|
|
Else
|
|
Dokument.daVersionsdatum = New SqlDateTime(CType(SqlDateTime.Null, DateTime))
|
|
End If
|
|
Dokument.sFilename = New SqlString(CType(Me.txtDateiname.Text, String))
|
|
Dokument.sOriginalFilename_incl_Path = New SqlString(CType(Me.txtOriginalFilename_incl_path.Text, String))
|
|
Dokument.bAktiv = New SqlBoolean(CType(Me.cbaktiv.Checked = True, Boolean))
|
|
Dokument.Save_Data()
|
|
If Dokument.Save_File(Dokument.iDokumentNr.Value, Me.txtFilename.Text) = False Then
|
|
msg.show_standardmessage(275, MsgBoxStyle.Exclamation)
|
|
End If
|
|
Me.Dokument.Dokumentablageort.Save_Data()
|
|
Me.SaveFileName = Me.txtDateiname.Text
|
|
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>
|
|
''' Auswahl des zu speichernden Dokumentes
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub brnFileOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles brnFileOpen.Click
|
|
Me.OpenFileDialog1.ShowDialog()
|
|
If Me.OpenFileDialog1.FileName <> "" Then Me.txtFilename.Text = Me.OpenFileDialog1.FileName
|
|
Me.txtOriginalFilename_incl_path.Text = Me.txtFilename.Text
|
|
Me.txtDateiname.Text = System.IO.Path.GetFileName(Me.txtFilename.Text)
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Dokument anzeigen
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub btnDokumentAnzeigen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDokumentAnzeigen.Click
|
|
If Trim(Me.Aktuelles_Dokument) = "" Then Exit Sub
|
|
Try
|
|
Me.Dokument.Show_Doc(Me.Aktuelles_Dokument)
|
|
|
|
Catch ex As Exception
|
|
msg.show_standardmessage(950, MsgBoxStyle.Exclamation)
|
|
End Try
|
|
End Sub
|
|
''' <summary>
|
|
''' Text-Change von Txt-Dateiname
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub txtDateiname_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDateiname.TextChanged
|
|
If Me.txtDateiname.Text <> "" Then Me.btnDokumentAnzeigen.Enabled = True Else Me.btnDokumentAnzeigen.Enabled = False
|
|
Me.txtDateiname.ReadOnly = True
|
|
End Sub
|
|
|
|
|
|
#Region "C1Ablageorte"
|
|
''' <summary>
|
|
''' Ablageorte für das aktuelle Dokument anzeigen
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
Private Sub Ablage_Orte_Aktualisieren()
|
|
Me.Dokument.Get_Ablageorte(Me.C1DokumentAblageOrt, Me.Dokument.iDokumentNr.Value)
|
|
Me.SpaltenTitel.Spaltentitel_aktualisieren(Me.C1DokumentAblageOrt, "Dokumentablageort", Me.Dokument.Dokumentablageort.Tabledata)
|
|
|
|
Me.DokumentAblageTypen.Rows.Clear()
|
|
Me.DokumentAblageTyp.cpMainConnectionProvider = Globals.conn
|
|
Me.DokumentAblageTypen = Me.DokumentAblageTyp.SelectAll
|
|
|
|
Me.C1DropDownDokumentablagetyp.DataSource = Me.DokumentAblageTypen
|
|
Me.C1DropDownDokumentablagetyp.ValueMember = "Dokumentablagetypnr"
|
|
Me.C1DropDownDokumentablagetyp.DisplayMember = "Bezeichnung"
|
|
Me.C1DropDownDokumentablagetyp.ValueTranslate = True
|
|
|
|
Me.C1DokumentAblageOrt.Columns("Dokumentablagetypnr").DropDown = Me.C1DropDownDokumentablagetyp
|
|
Me.C1DokumentAblageOrt.Columns("Dokumentablagetypnr").ValueItems.Translate = True
|
|
Dim i As Integer
|
|
For i = 0 To Me.C1DropDownDokumentablagetyp.DisplayColumns.Count - 1
|
|
If i <> 1 Then
|
|
Me.C1DropDownDokumentablagetyp.DisplayColumns(i).Width = 0
|
|
Else
|
|
Me.C1DropDownDokumentablagetyp.DisplayColumns(1).Width = Me.C1DropDownDokumentablagetyp.Width
|
|
End If
|
|
Next
|
|
|
|
End Sub
|
|
''' <summary>
|
|
''' 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.
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks>Je Domaintable ist ein Eintrag in der Key-Tabelle notwendig</remarks>
|
|
Private Sub C1Daten_AfterColUpdate(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.ColEventArgs) Handles C1DokumentAblageOrt.AfterColUpdate
|
|
'Aktualisieren von Mutierer und Mutiert_am
|
|
Dim i As Integer
|
|
Try
|
|
For i = 0 To Me.C1DokumentAblageOrt.Columns.Count - 1
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mutiert_am" Then Me.C1DokumentAblageOrt.Columns(i).Value = Now
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mutierer" Then Me.C1DokumentAblageOrt.Columns(i).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
Next
|
|
|
|
'neuer DB-Key auslösen, sofern kein Key vorhanden ist
|
|
If Me.C1DokumentAblageOrt.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("DokumentAblageOrt")
|
|
Me.C1DokumentAblageOrt.Columns(0).Value = key
|
|
For i = 0 To Me.C1DokumentAblageOrt.Columns.Count - 1
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mandantnr" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "erstellt_am" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Now
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "securitylevel" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = 0
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "aktiv" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = 1
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "extern" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = 0
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "dokumentnr" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Me.Dokument.iDokumentNr.Value
|
|
End If
|
|
|
|
Next
|
|
dbkey.Dispose()
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Aktualisierung der Default-Werte
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub C1Daten_AfterInsert(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1DokumentAblageOrt.AfterInsert
|
|
Dim i As Integer
|
|
'Defaulwerte erstellt_am, mutiert_am, mutierer und aktiv setzen
|
|
Try
|
|
For i = 0 To C1DokumentAblageOrt.Columns.Count - 1
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "aktiv" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = 1
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "dokumentnr" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Me.Dokument.iDokumentNr.Value
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mutiert_am" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Now
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mutierer" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mandantnr" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value
|
|
End If
|
|
If LCase(Me.C1DokumentAblageOrt.Columns(i).DataField) = "mandnat" Then
|
|
Me.C1DokumentAblageOrt.Columns(i).Value = Globals.clsmitarbeiter.iMandantnr.Value
|
|
End If
|
|
Next
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
|
|
''' <summary>
|
|
''' Anzeige allfälliger Cellen-Tips
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub C1Daten_FetchCellTips(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchCellTipsEventArgs) Handles C1DokumentAblageOrt.FetchCellTips
|
|
Dim ts As New TKB.VV.Utils.Tabellenspalte
|
|
ts.Tabelle = "DokumentAblageOrt"
|
|
Try
|
|
ts.Feld = Me.C1DokumentAblageOrt.Columns(e.ColIndex).DataField
|
|
ts.getspalte()
|
|
e.CellTip = ts.TipText
|
|
Catch
|
|
End Try
|
|
ts = Nothing
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
|
|
End Class |