Imports C1.Win.C1TrueDBGrid Imports System Imports System.Data Imports System.Data.SqlTypes Imports System.Data.SqlClient ''' ''' Vertragspartnersuche ''' ''' Public Class frmVertragspartnerSuche #Region "Deklarationen" Dim d As New DataTable Dim m_Vertragspartnernr As Integer Property Vertragspartnernr() As Integer Get Return m_Vertragspartnernr End Get Set(ByVal value As Integer) m_Vertragspartnernr = value End Set End Property #End Region #Region "Formular" Private Sub frmVertragspartnerSuche_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Disposed d.Dispose() components.Dispose() MyBase.Dispose() End Sub ''' ''' Load des Dialogs ''' ''' ''' ''' Private Sub FrmVertragspartnerSuche_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Vertragspartnernr = -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 Me.Partner_Suchen() If Me.C1Partnerliste.Splits(0).Rows.Count > 0 Then Me.C1Partnerliste.Bookmark = 0 Me.BtnSelect.Enabled = True Me.VertragspartnerMenuStrip.Enabled = True Else Me.BtnSelect.Enabled = False Me.VertragspartnerMenuStrip.Enabled = False End If End Sub ''' ''' BtnSelect gewählt ''' ''' ''' ''' Private Sub BtnSelect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSelect.Click Me.Vertragspartnernr = Me.C1Partnerliste.Columns("Vertragspartnernr").Value Me.DialogResult = Windows.Forms.DialogResult.OK Me.Close() End Sub ''' ''' txtName_FirmaZ1 KeyDown ''' ''' ''' ''' Private Sub txtName_Firma1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtName_Firma1.KeyDown If e.KeyCode = Keys.Enter Then Me.BtnSuche_Click(sender, e) End If End Sub ''' ''' txtOrt Keydown ''' ''' ''' ''' Private Sub txtOrt_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtOrt.KeyDown If e.KeyCode = Keys.Enter Then Me.BtnSuche_Click(sender, e) End If End Sub #End Region #Region "Suchfunktion" ''' ''' Vertragspartner suchen ''' ''' ''' Private Function Partner_Suchen() If Me.txtName_Firma1.Text <> "" Then d = Serach_data(Me.txtName_Firma1.Text, 0) Else If Me.txtOrt.Text <> "" Then d = Serach_data(Me.txtOrt.Text, 1) Else d = Serach_data("", 2) End If End If Me.C1Partnerliste.DataSource = d Me.C1Partnerliste.DataMember = d.TableName Dim SpaltenTitel As New TKB.VV.Utils.Tabellenspalte SpaltenTitel.Spaltentitel_aktualisieren(Me.C1Partnerliste, "Vertragspartner", d) SpaltenTitel = Nothing 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_vertragspartner_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("clsVertragspartner::" & 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 "Partnerliste" ''' ''' Mousedown-Ereignis handeln, damit auch bei rechter Maustaste der Fokus auf den richtigen Datensatz gesetzt wird ''' ''' ''' ''' Private Sub C1Partnerliste_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles C1Partnerliste.MouseDown Me.C1Partnerliste.Bookmark = Me.C1Partnerliste.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 frmVertragspartner(Me.C1Partnerliste.Columns("Vertragspartnernr").Value, True) f.ShowDialog() End Sub ''' ''' Doubleklick in C1Partnerliste ''' ''' ''' ''' Private Sub C1Partnerliste_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1Partnerliste.DoubleClick If Me.C1Partnerliste.Splits(0).Rows.Count > 0 Then Me.BtnSelect_Click(sender, e) End If End Sub #End Region End Class