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.
290 lines
9.3 KiB
290 lines
9.3 KiB
Imports System
|
|
Imports System.Data
|
|
Imports System.Data.SqlTypes
|
|
Imports System.Data.SqlClient
|
|
Imports System.ComponentModel
|
|
|
|
Public Class ctlPhasen
|
|
Dim m_Connectionstring As String
|
|
<DefaultValue("data source=shu00;initial catalog=Vertragsverwaltung;persist security info=False;workstation id=SHU;packet size=4096;user id=sa;password=*shu29"), Description("ConnectionString"), Category("Options")> _
|
|
Public Property ConnectionString() As String
|
|
Get
|
|
ConnectionString = m_Connectionstring
|
|
End Get
|
|
Set(ByVal Value As String)
|
|
If m_Connectionstring <> Value Then
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Dim m_haschanges As Boolean = False
|
|
Public Property HasChanges As Boolean
|
|
Get
|
|
|
|
Return m_haschanges
|
|
End Get
|
|
Set(value As Boolean)
|
|
m_haschanges = value
|
|
End Set
|
|
End Property
|
|
|
|
Dim m_Produktnr As Integer
|
|
Property Produktnr As Integer
|
|
Get
|
|
Return m_Produktnr
|
|
End Get
|
|
Set(value As Integer)
|
|
Try
|
|
m_Produktnr = value
|
|
refresh_details()
|
|
Catch
|
|
End Try
|
|
End Set
|
|
End Property
|
|
|
|
Dim m_mitarbeiternr As Integer
|
|
Property Mitarbeiternr As Integer
|
|
Get
|
|
Return m_mitarbeiternr
|
|
End Get
|
|
Set(value As Integer)
|
|
m_mitarbeiternr = value
|
|
End Set
|
|
End Property
|
|
|
|
Dim m_tempfilepath As String
|
|
Property TempfilePath As String
|
|
Get
|
|
Return m_tempfilepath
|
|
End Get
|
|
Set(value As String)
|
|
m_tempfilepath = value
|
|
End Set
|
|
End Property
|
|
|
|
Dim m_formreadonly As Boolean
|
|
Property FormReadonly As Boolean
|
|
Get
|
|
Return m_formreadonly
|
|
|
|
End Get
|
|
Set(value As Boolean)
|
|
m_formreadonly = value
|
|
If value = True Then
|
|
Me.ToolStrip1.Visible = False
|
|
Me.ContextMenuStrip1.Enabled = False
|
|
Else
|
|
Me.ToolStrip1.Visible = True
|
|
Me.ContextMenuStrip1.Enabled = True
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Dim Phasendaten As New DataTable
|
|
Dim DSPhasen As New DataSet
|
|
Dim PhaseStammdaten As New DataTable
|
|
|
|
Dim SpaltenTitel As New TKB.VV.Utils.Tabellenspalte
|
|
Dim DAP As SqlDataAdapter
|
|
Dim produktphase As New TKB.VV.Lifecycle.clslcProduktPhase
|
|
|
|
|
|
Private Sub refresh_details()
|
|
Try
|
|
C1Phasen.DataSource = Nothing
|
|
Catch
|
|
End Try
|
|
Me.Phasendaten.Rows.Clear()
|
|
Get_Produktphasen(Me.Produktnr)
|
|
Refresh_Phasen()
|
|
End Sub
|
|
|
|
Sub Refresh_Phasen()
|
|
|
|
Try
|
|
Me.C1Phasen.DataSource = Nothing
|
|
Me.C1Phasen.DataSource = Nothing
|
|
Catch
|
|
End Try
|
|
Phasendaten.Rows.Clear()
|
|
Get_Phasen()
|
|
Get_Produktphasen(Me.Produktnr)
|
|
Me.C1Phasen.DataSource = Phasendaten
|
|
Me.SpaltenTitel.Spaltentitel_aktualisieren(C1Phasen, "LC_Produkt_Phase", Me.C1Phasen.DataSource)
|
|
Me.C1Phasen.Splits(0).DisplayColumns("lc_Phasenr").Style.HorizontalAlignment = C1.Win.C1TrueDBGrid.AlignHorzEnum.General
|
|
Me.C1Phasen.Splits(0).DisplayColumns("lc_phasenr").FetchStyle = True
|
|
Me.C1Phasen.Columns("Datum").NumberFormat = "Short Date"
|
|
|
|
Me.C1PhaseDropDown.DataSource = PhaseStammdaten
|
|
Me.C1PhaseDropDown.DisplayMember = "Bezeichnung"
|
|
Me.C1PhaseDropDown.ValueMember = "lc_phasenr"
|
|
Try
|
|
Me.C1Phasen.Columns("LC_PhaseNr").DropDown = Me.C1PhaseDropDown
|
|
Me.C1PhaseDropDown.ValueTranslate = True
|
|
Me.C1PhaseDropDown.DisplayColumns(0).Width = 0
|
|
Me.C1Phasen.Columns("LC_PhaseNr").ValueItems.Translate = True
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub C1TrueDBGrid1_FetchCellStyle(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchCellStyleEventArgs) Handles C1Phasen.FetchCellStyle
|
|
e.CellStyle.Locked = True
|
|
End Sub
|
|
|
|
|
|
#Region "DB"
|
|
Sub Get_Produktphasen(produktnr As Integer)
|
|
Try
|
|
Dim Connection As New SqlConnection(Globals.sConnectionString)
|
|
DAP = New SqlDataAdapter("select * from lc_produkt_phase where lc_produktnr = " & Str(produktnr) + " order by datum asc", Connection)
|
|
Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DAP)
|
|
DAP.Fill(Phasendaten)
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Sub Get_Phasen()
|
|
Try
|
|
Me.PhaseStammdaten.Rows.Clear()
|
|
Dim Connection As New SqlConnection(Globals.sConnectionString)
|
|
Dim DA As New SqlDataAdapter("select * from lc_phase where aktiv=1", Connection)
|
|
Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DA)
|
|
DA.Fill(PhaseStammdaten)
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Sub Save_Phasen()
|
|
Try
|
|
DAP.Update(Phasendaten)
|
|
Me.HasChanges = False
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
|
|
Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs) Handles ToolStripButton4.Click
|
|
Try
|
|
Dim f As New frmPhaseDetail(Me.C1Phasen.Columns("lc_produkt_phasenr").Value, Me.Produktnr, False)
|
|
f.ShowDialog()
|
|
If f.DialogResult = DialogResult.OK Then Refresh_Phasen()
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub C1Phasen_AfterUpdate(sender As Object, e As C1.Win.C1TrueDBGrid.CancelEventArgs) Handles C1Phasen.BeforeUpdate
|
|
Me.C1Phasen.Columns("mutiert_am").Value = Now
|
|
Me.C1Phasen.Columns("mutierer").Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
|
|
Me.HasChanges = True
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
|
|
Dim f As New frmPhaseDetail(0, Me.Produktnr, True)
|
|
f.ShowDialog()
|
|
If f.DialogResult = DialogResult.OK Then Refresh_Phasen()
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles ToolStripButton2.Click
|
|
Try
|
|
Dim i As Integer
|
|
i = produktphase.Get_ProduktPhase(Me.C1Phasen.Columns("lc_produkt_phasenr").Value)
|
|
Catch
|
|
Exit Sub
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
If MsgBox("Datensatz inaktivieren?", vbYesNo + vbQuestion) = MsgBoxResult.Yes Then
|
|
produktphase.Get_ProduktPhase(Me.C1Phasen.Columns("lc_produkt_phasenr").Value)
|
|
produktphase.Delete()
|
|
Refresh_Phasen()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
|
|
Try
|
|
Dim f As New frmPhaseDetail(Me.C1Phasen.Columns("lc_produkt_phasenr").Value, Me.Produktnr, False, True)
|
|
f.ShowDialog()
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub C1Phasen_DoubleClick(sender As Object, e As EventArgs) Handles C1Phasen.DoubleClick
|
|
If Me.FormReadonly = True Then
|
|
ToolStripButton3_Click(sender, e)
|
|
Else
|
|
ToolStripButton4_Click(sender, e)
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub NeuerEintragToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NeuerEintragToolStripMenuItem.Click
|
|
Me.ToolStripButton1_Click(sender, e)
|
|
End Sub
|
|
|
|
Private Sub EintragBearbeitenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EintragBearbeitenToolStripMenuItem.Click
|
|
Try
|
|
Me.ToolStripButton4_Click(sender, e)
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub EintragInaktivierenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EintragInaktivierenToolStripMenuItem.Click
|
|
ToolStripButton2_Click(sender, e)
|
|
End Sub
|
|
|
|
Private Sub EintragAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EintragAnzeigenToolStripMenuItem.Click
|
|
ToolStripButton3_Click(sender, e)
|
|
End Sub
|
|
|
|
Private Sub C1Phasen_FetchCellTips(sender As Object, e As C1.Win.C1TrueDBGrid.FetchCellTipsEventArgs) Handles C1Phasen.FetchCellTips
|
|
Try
|
|
If e.Column.Name <> "Phase" Then
|
|
e.CellTip = ""
|
|
Exit Sub
|
|
End If
|
|
For Each r As DataRow In Me.PhaseStammdaten.Rows
|
|
Dim phasenr As Integer
|
|
phasenr = Me.C1Phasen.Columns("LC_Phasenr").Value
|
|
If r("lc_phasenr") = phasenr Then
|
|
|
|
|
|
Me.ToolStrip1.Text = r("bESCHREIBUNG")
|
|
e.CellTip = r("bESCHREIBUNG")
|
|
End If
|
|
Next
|
|
|
|
|
|
' Me.C1SuperTooltip1.SetToolTip(sender, e.CellTip)
|
|
|
|
'e.CellTip = "" 'disable the
|
|
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub C1Phasen_MouseDown(sender As Object, e As MouseEventArgs) Handles C1Phasen.MouseDown
|
|
|
|
End Sub
|
|
|
|
Private Sub c1phasen_mouseOver(sender As Object, e As MouseEventArgs) Handles C1Phasen.MouseMove
|
|
'Me.C1Phasen.Bookmark = Me.C1Phasen.RowContaining(e.Y)
|
|
'Exit Sub
|
|
Dim row As Int32 = C1Phasen.RowContaining(e.Y)
|
|
Dim col As Int32 = C1Phasen.ColContaining(e.X)
|
|
|
|
Dim ptenum As C1.Win.C1TrueDBGrid.PointAtEnum = C1Phasen.PointAt(e.X, e.Y)
|
|
If col = 2 Then
|
|
Me.C1Phasen.Bookmark = Me.C1Phasen.RowContaining(e.Y)
|
|
End If
|
|
End Sub
|
|
Private Sub C1Phasen_MouseEnter(sender As Object, e As EventArgs) Handles C1Phasen.MouseEnter
|
|
Me.C1Phasen.Focus()
|
|
End Sub
|
|
End Class
|