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.
169 lines
6.0 KiB
169 lines
6.0 KiB
Imports System.Data
|
|
Imports System.Data.Sql
|
|
Imports System.Data.SqlClient
|
|
Imports System.Data.SqlTypes
|
|
|
|
Public Class frmAllgDomainEditor
|
|
|
|
Dim ds As New DataSet
|
|
Dim da As SqlDataAdapter
|
|
Dim co As New SqlConnection
|
|
Dim cb As SqlCommandBuilder
|
|
Dim tablename As String
|
|
|
|
#Region "Formular-Funktionen"
|
|
''' <summary>
|
|
''' Tabellenname übernehmen und Objekt DomainTable initialisieren
|
|
''' Initialisierung der Komponenten
|
|
''' </summary>
|
|
''' <param name="tblname">Tabellenname der Tabelle, welche über den Domaineditor editiert werden soll</param>
|
|
''' <remarks>Benötigt werden entsprechende Stored_Procedures, welche mit LBLLGEN_2 generiert wurden
|
|
''' pr_"Tablename"_SelectAll
|
|
''' pr_"Tablename"_Update
|
|
''' </remarks>
|
|
Public Sub New(ByVal tblname As String, ByVal Connectionstring As String)
|
|
' Domaintable = New TKB.VV.Sysadmin.DomainTable(tblname)
|
|
Me.InitializeComponent()
|
|
' Me.Text = "Domaineditor: " & tblname
|
|
Me.tablename = tblname
|
|
Me.co.ConnectionString = Connectionstring
|
|
End Sub
|
|
''' <summary>
|
|
''' Zuordnung der Daten aus Domaintable und Spaltentitel des Grids setzen
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub frmDomainEditor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
|
Try
|
|
Load_Table()
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
Private Sub Load_Table()
|
|
Try
|
|
da = Nothing
|
|
cb = Nothing
|
|
Me.c1Daten.DataSource = Nothing
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
Me.Text = Me.tablename
|
|
da = New SqlDataAdapter("Select * from " & Me.tablename, Me.co)
|
|
cb = New SqlCommandBuilder(da)
|
|
da.Fill(ds, "ExtTable")
|
|
Me.c1Daten.DataSource = ds.Tables(0)
|
|
Me.c1Daten.DataMember = ds.Tables(0).TableName
|
|
|
|
|
|
|
|
End Sub
|
|
''' <summary>
|
|
''' Schliessen des Formulars
|
|
''' </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.Close()
|
|
End Sub
|
|
''' <summary>
|
|
''' Ruft BeendetnToolStipMenuItem_Click auf
|
|
''' </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
|
|
BeendenToolStripMenuItem_Click(sender, e)
|
|
End Sub
|
|
''' <summary>
|
|
''' Prüfung auf allfällige Daten-Changes. Wurden Daten verändert, kann der User entscheiden, ob gespeichert, nichtgespeichert oder
|
|
''' das Formular nicht gespeichert werden soll.
|
|
''' </summary>
|
|
''' <param name="sender"></param>
|
|
''' <param name="e"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub frmDomainEditor_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
|
|
If Me.ds.HasChanges Then
|
|
Dim msgboxres As MsgBoxResult
|
|
msgboxres = MsgBox("Daten wurnde verändert. Wollen Sie diese sichern?", MsgBoxStyle.YesNoCancel + MsgBoxStyle.Question)
|
|
If msgboxres = MsgBoxResult.Cancel Then
|
|
e.Cancel = True
|
|
Exit Sub
|
|
End If
|
|
If msgboxres = MsgBoxResult.Yes Then
|
|
Try
|
|
da.Update(ds, "ExtTable")
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
|
|
End If
|
|
End If
|
|
Try
|
|
Me.co.Close()
|
|
da.Dispose()
|
|
co.Dispose()
|
|
cb.Dispose()
|
|
ds.Dispose()
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Sichern der Daten
|
|
''' </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
|
|
Try
|
|
da.Update(ds, "ExtTable")
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
End Sub
|
|
#End Region
|
|
|
|
Private Sub DomainList_AfterInsert(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles c1Daten.AfterInsert
|
|
Dim i As Integer
|
|
'Defaulwerte erstellt_am, mutiert_am, mutierer und aktiv setzen
|
|
Try
|
|
For i = 0 To c1Daten.Columns.Count - 1
|
|
If Me.c1Daten.Columns(i).DataField = "aktiv" Then
|
|
Me.c1Daten.Columns(i).Value = 1
|
|
End If
|
|
If Me.c1Daten.Columns(i).DataField = "erstellt_am" Then
|
|
Me.c1Daten.Columns(i).Value = Now
|
|
End If
|
|
If Me.c1Daten.Columns(i).DataField = "mutiert_am" Then
|
|
Me.c1Daten.Columns(i).Value = Now
|
|
End If
|
|
If Me.c1Daten.Columns(i).DataField = "mutierer" Then
|
|
Me.c1Daten.Columns(i).Value = Globals.MitarbeiterNr
|
|
End If
|
|
Next
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub c1daten_aftercellupdate(ByVal sender As System.Object, ByVal e As C1.Win.C1TrueDBGrid.ColEventArgs) Handles c1Daten.AfterColUpdate
|
|
'Aktualisieren von Mutierer und Mutiert_am
|
|
Dim i As Integer
|
|
Try
|
|
For i = 0 To Me.c1Daten.Columns.Count - 1
|
|
If Me.c1Daten.Columns(i).DataField = "mutiert_am" Then Me.c1Daten.Columns(i).Value = Now
|
|
If Me.c1Daten.Columns(i).DataField = "mutierer" Then Me.c1Daten.Columns(i).Value = Globals.MitarbeiterNr
|
|
If Me.c1Daten.Columns(i).DataField = "korrigiert_am" Then Me.c1Daten.Columns(i).Value = DBNull.Value
|
|
Next
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
End Class |