Imports System.Data Imports System.Data.SqlTypes Imports System.Data.SqlClient Imports System.ComponentModel Public Class frmValueSelector Inherits System.Windows.Forms.Form #Region " Vom Windows Form Designer generierter Code " Public Sub New() MyBase.New() ' Dieser Aufruf ist für den Windows Form-Designer erforderlich. InitializeComponent() ' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen End Sub ' Die Form überschreibt den Löschvorgang der Basisklasse, um Komponenten zu bereinigen. Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (components Is Nothing) Then components.Dispose() End If End If MyBase.Dispose(disposing) End Sub ' Für Windows Form-Designer erforderlich Private components As System.ComponentModel.IContainer 'HINWEIS: Die folgende Prozedur ist für den Windows Form-Designer erforderlich 'Sie kann mit dem Windows Form-Designer modifiziert werden. 'Verwenden Sie nicht den Code-Editor zur Bearbeitung. Friend WithEvents C1TrueDBGrid1 As C1.Win.C1TrueDBGrid.C1TrueDBGrid Friend WithEvents Button1 As System.Windows.Forms.Button Friend WithEvents Button2 As System.Windows.Forms.Button Private Sub InitializeComponent() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmValueSelector)) Me.C1TrueDBGrid1 = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() Me.Button1 = New System.Windows.Forms.Button() Me.Button2 = New System.Windows.Forms.Button() CType(Me.C1TrueDBGrid1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'C1TrueDBGrid1 ' Me.C1TrueDBGrid1.Dock = System.Windows.Forms.DockStyle.Top Me.C1TrueDBGrid1.FetchRowStyles = True Me.C1TrueDBGrid1.GroupByCaption = "Drag a column header here to group by that column" Me.C1TrueDBGrid1.Images.Add(CType(resources.GetObject("C1TrueDBGrid1.Images"), System.Drawing.Image)) Me.C1TrueDBGrid1.Location = New System.Drawing.Point(0, 0) Me.C1TrueDBGrid1.Name = "C1TrueDBGrid1" Me.C1TrueDBGrid1.PreviewInfo.Location = New System.Drawing.Point(0, 0) Me.C1TrueDBGrid1.PreviewInfo.Size = New System.Drawing.Size(0, 0) Me.C1TrueDBGrid1.PreviewInfo.ZoomFactor = 75.0R Me.C1TrueDBGrid1.PrintInfo.PageSettings = CType(resources.GetObject("C1TrueDBGrid1.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) Me.C1TrueDBGrid1.Size = New System.Drawing.Size(424, 264) Me.C1TrueDBGrid1.TabIndex = 0 Me.C1TrueDBGrid1.Text = "C1TrueDBGrid1" Me.C1TrueDBGrid1.PropBag = resources.GetString("C1TrueDBGrid1.PropBag") ' 'Button1 ' Me.Button1.DialogResult = System.Windows.Forms.DialogResult.Cancel Me.Button1.Location = New System.Drawing.Point(8, 280) Me.Button1.Name = "Button1" Me.Button1.Size = New System.Drawing.Size(75, 23) Me.Button1.TabIndex = 1 Me.Button1.Text = "&Abbruch" ' 'Button2 ' Me.Button2.DialogResult = System.Windows.Forms.DialogResult.OK Me.Button2.Location = New System.Drawing.Point(344, 280) Me.Button2.Name = "Button2" Me.Button2.Size = New System.Drawing.Size(75, 23) Me.Button2.TabIndex = 2 Me.Button2.Text = "&OK" ' 'frmValueSelector ' Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13) Me.ClientSize = New System.Drawing.Size(424, 309) Me.Controls.Add(Me.Button2) Me.Controls.Add(Me.Button1) Me.Controls.Add(Me.C1TrueDBGrid1) Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) Me.Name = "frmValueSelector" Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen Me.Text = "Selektion " CType(Me.C1TrueDBGrid1, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) End Sub #End Region Dim m_datenherkunft As String Dim m_value As String Dim m_partnernr As String Dim m_datenvorhanden As Boolean Property Datenherkunft() As String Get Return m_datenherkunft End Get Set(ByVal Value As String) m_datenherkunft = Value End Set End Property Property SelWert() As String Get Return m_value End Get Set(ByVal Value As String) m_value = Value End Set End Property Property Partnernr() As String Get Return m_partnernr End Get Set(ByVal Value As String) m_partnernr = Value End Set End Property Property Datenvorhanden() As Boolean Get Return m_datenvorhanden End Get Set(ByVal Value As Boolean) m_datenvorhanden = Value End Set End Property Public Sub LoadData() m_datenvorhanden = True Dim d As DataTable d = Generic_Select(1) Me.C1TrueDBGrid1.DataSource = d If Me.C1TrueDBGrid1.Splits(0).Rows.Count = 0 Then MyMsg.show_standardmessage(19, MsgBoxStyle.Information) m_datenvorhanden = False End If Dim i As Integer For i = 0 To Me.C1TrueDBGrid1.Columns.Count - 1 If Me.C1TrueDBGrid1.Columns(i).Caption = "SAREC00" Then Me.C1TrueDBGrid1.Splits(0).DisplayColumns(i).Visible = False End If Next Dim w As Integer = 0 Dim ws As Integer = 0 ws = Me.Width For i = 0 To Me.C1TrueDBGrid1.Splits(0).DisplayColumns.Count - 1 Me.C1TrueDBGrid1.Splits(0).DisplayColumns(i).AutoSize() w = w + Me.C1TrueDBGrid1.Splits(0).DisplayColumns(i).Width Next If w > ws Then Me.Width = w End Sub Private Function Generic_Select(ByVal typ As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() Select Case typ Case 1 scmCmdToExecute.CommandText = "dbo.SP_Dokumentbearbeitung_DokWertList" Case Else End Select scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable() Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) scmCmdToExecute.Connection = conn.scoDBConnection Try Select Case typ Case 1 scmCmdToExecute.Parameters.Add(New SqlParameter("@nrpar00", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Me.Partnernr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@regel", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Me.Datenherkunft)) Case Else End Select If typ = 1 Then End If sdaAdapter.Fill(dtToReturn) Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) Finally scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try Me.SelWert = Me.C1TrueDBGrid1.Columns(0).Value Catch End Try Me.Close() End Sub Private Sub C1TrueDBGrid1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles C1TrueDBGrid1.DoubleClick Me.SelWert = Me.C1TrueDBGrid1.Columns(0).Value Me.DialogResult = DialogResult.OK Me.Close() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.SelWert = Me.C1TrueDBGrid1.Columns(0).Value Me.Close() End Sub Private Sub frmValueSelector_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub C1TrueDBGrid1_FetchRowStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles C1TrueDBGrid1.FetchRowStyle Try If Me.C1TrueDBGrid1.Columns("sarec00").CellValue(e.Row) <> 2 Then Dim FNT As Font = e.CellStyle.Font e.CellStyle.Font = New Font(FNT, FontStyle.Strikeout) End If Catch End Try End Sub End Class