Imports System.Data.SqlTypes Imports System.Data.SqlClient ''' ''' Vertragselementsuche ''' ''' Public Class frmVertragselementSuche #Region "Deklarationen" Dim m_Vertragselementnr As Integer Property Vertragselementnr() As Integer Get Return m_Vertragselementnr End Get Set(ByVal value As Integer) m_Vertragselementnr = value End Set End Property Dim m_Vertragselement_Bezeichnung As String Property Vertragselement_Bezeichnung() As String Get Dim ve As New TKB.VV.DB.clsVertragselement Try ve.cpMainConnectionProvider = Globals.conn ve.iVertragselementnr = New SqlInt32(CType(Me.Vertragselementnr, Int32)) ve.SelectOne() Return ve.sBezeichnung.Value Catch ex As Exception Finally ve.Dispose() End Try End Get Set(ByVal value As String) End Set End Property Dim d As New DataTable #End Region ''' ''' Destructor Dispose ''' ''' Overloads Sub dispose() d.Dispose() MyBase.Dispose() End Sub #Region "Formular" ''' ''' Load des Dialogs ''' ''' ''' ''' Private Sub FrmVertragspartnerSuche_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Vertragselementnr = -1 Me.BtnSelect.Enabled = False End Sub ''' ''' Suche ausführen ''' ''' ''' ''' Private Sub BtnSuche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSuche.Click Vertragselement_suchen() End Sub ''' ''' BtnSelect gewählt ''' ''' ''' ''' Private Sub BtnSelect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSelect.Click Me.Vertragselementnr = Me.C1Vertragselementliste.Columns("Vertragselementnr").Value Me.DialogResult = Windows.Forms.DialogResult.OK Me.Close() End Sub ''' ''' Textfelder KeyDown ''' ''' ''' ''' Private Sub txt_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtName_Firma1.KeyDown, txtBezeichnung.KeyDown, txtInhalt.KeyDown, txtSuchbegriffe.KeyDown If e.KeyCode = Keys.Enter Then Me.BtnSuche_Click(sender, e) End If End Sub #End Region #Region "Suchfunktion" ''' ''' Vertragselement suchen ''' ''' ''' Private Function Vertragselement_Suchen() If Me.txtName_Firma1.Text <> "" Then d = Serach_data(Me.txtName_Firma1.Text, 0) Else If Me.txtBezeichnung.Text <> "" Then d = Serach_data(Me.txtBezeichnung.Text, 1) Else If Me.txtInhalt.Text <> "" Then d = Serach_data(Me.txtInhalt.Text, 2) Else d = Serach_data(Me.txtSuchbegriffe.Text, 3) End If End If End If Me.C1Vertragselementliste.DataSource = d Me.C1Vertragselementliste.DataMember = d.TableName Dim SpaltenTitel As New TKB.VV.Utils.Tabellenspalte SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Vertragselementliste, "Vertragselement", d) SpaltenTitel = Nothing If d.Rows.Count > 0 Then Me.BtnSelect.Enabled = True End Function ''' ''' Vertragspartner aus DB auslesen ''' ''' ''' ''' ''' Private Function Serach_data(ByVal query As String, ByVal fnkt As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() Dim dtToReturn As DataTable = New DataTable() Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) scmCmdToExecute.CommandText = "dbo.sp_vertragselement_search" scmCmdToExecute.CommandType = CommandType.StoredProcedure scmCmdToExecute.Connection = conn.scoDBConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@query", SqlDbType.VarChar, 1000, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, query)) scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, fnkt)) scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.clsmitarbeiter.iMitarbeiternr.Value)) sdaAdapter.Fill(dtToReturn) Return dttoreturn Catch ex As Exception Throw New Exception("clsVertragselement::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) Finally scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function #End Region #Region "MenuStrip" ''' ''' Schliessen des Fensters ''' ''' ''' ''' Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click Me.Close() End Sub ''' ''' Menu Beenden ''' ''' ''' ''' Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click TSBtnQuit_Click(sender, e) End Sub ''' ''' Schliessen des Fensters ''' ''' ''' ''' Private Sub BtnSchliessen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSchliessen.Click Me.TSBtnQuit_Click(sender, e) End Sub #End Region #Region "Resultatliste" ''' ''' Mousedown-Ereignis handeln, damit auch bei rechter Maustaste der Fokus auf den richtigen Datensatz gesetzt wird ''' ''' ''' ''' Private Sub C1Vertragselementliste_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Vertragselementliste.MouseDown Me.C1Vertragselementliste.Bookmark = Me.C1Vertragselementliste.RowContaining(e.Y) End Sub ''' ''' Kontextmenu Übernehmen gewählt ''' ''' ''' ''' Private Sub ÜberrnehmenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ÜberrnehmenToolStripMenuItem.Click Me.BtnSelect_Click(sender, e) End Sub ''' ''' Kontextmenu Details anzeigen gewählt ''' ''' ''' ''' Private Sub DetailsAnzeigenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DetailsAnzeigenToolStripMenuItem.Click Dim f As New frmVertragselement(Me.C1Vertragselementliste.Columns("Vertragselementnr").Value, True) f.ShowDialog() End Sub ''' ''' Doubleklick in C1Partnerliste ''' ''' ''' ''' Private Sub C1Vertragselementliste_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Vertragselementliste.DoubleClick If Me.C1Vertragselementliste.Splits(0).Rows.Count > 0 Then Me.BtnSelect_Click(sender, e) End If End Sub #End Region End Class