Imports C1.Win.C1TrueDBGrid
Imports System
Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
Namespace TKB.VV.Lifecycle
Public Class clsProdukt
Inherits TKB.VV.DB.clsLC_Produkt
Dim mMutierer As String
Property MutiererText() As String
Get
Return mMutierer
End Get
Set(ByVal value As String)
mMutierer = value
End Set
End Property
Public Function Get_Produkt(ByVal Nr As Integer)
Me.cpMainConnectionProvider = Globals.conn
Me.iLC_ProduktNr = New SqlInt32(CType(Nr, Int32))
Globals.conn.OpenConnection()
Me.SelectOne()
Me.MutiererText = Get_Mutierer(Me.iMutierer.Value)
Globals.conn.CloseConnection(True)
End Function
Public Function Save_Data() As Integer
Me.cpMainConnectionProvider = Globals.conn
Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime))
Me.iMutierer = New SqlInt32(CType(Globals.clsmitarbeiter.iMitarbeiternr.Value, Int32))
Globals.conn.OpenConnection()
Me.Update()
Globals.conn.CloseConnection(True)
Return Me.iLC_ProduktNr.Value
End Function
'''
''' Mutierer auslesen
'''
'''
'''
Public Function Get_Mutierer(ByVal nr As Integer) As String
Dim ma As New TKB.VV.DB.clsMitarbeiter
Dim dt As New DataTable
Dim Retvalue As String
ma.cpMainConnectionProvider = Globals.conn
ma.iMitarbeiternr = New SqlInt32(CType(nr, Int32))
dt = ma.SelectOne()
If dt.Rows.Count = 0 Then
Retvalue = ("{" + nr.ToString + "}")
Else
Retvalue = ma.sName.ToString + " " + ma.sVorname.ToString + ", " + ma.sTgnummer.ToString
End If
ma.Dispose()
dt.Dispose()
Return Retvalue
End Function
'''
''' Löschen eines Datensatzes erstellen.
'''
'''
'''
'''
Public Function Delete_Produkt(Optional ByVal Basenr As Integer = 0) As Integer
If Basenr <> 0 Then
Get_Produkt(Basenr)
End If
Me.cpMainConnectionProvider = Globals.conn
Me.bAktiv = New SqlBoolean(CType(False, Boolean))
Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime))
Me.iMutierer = New SqlInt32(CType(Globals.clsmitarbeiter.iMitarbeiternr.Value, Int32))
Globals.conn.OpenConnection()
Me.Update()
Globals.conn.CloseConnection(True)
End Function
'''
''' Löschen eines Datensatzes .
'''
'''
'''
'''
Public Overloads Function Delete(Optional ByVal Basenr As Integer = 0) As Integer
If Basenr <> 0 Then
Get_Produkt(Basenr)
End If
Me.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
MyBase.Delete()
Globals.conn.CloseConnection(True)
End Function
'''
''' Neue Kuendigungsfrist einfügen
'''
'''
'''
Public Function Add_New(Optional ByVal Parentid As Integer = 0) As Integer
Dim db As New TKB.VV.DB.clsMyKey_Tabelle
db.cpMainConnectionProvider = Globals.conn
Dim newkey = db.get_dbkey("LC_Produkt")
db.Dispose()
Me.iLC_ProduktNr = New SqlInt32(CType(newkey, Int32))
Me.sBezeichnung = New SqlString(CType("*** Neues Element ***", String))
Me.sBeschreibung = New SqlString(CType("", String))
Me.iLC_ProduktNr_Parent = New SqlInt32(CType(0, Int32))
Me.bAktiv = New SqlBoolean(CType(True, Boolean))
Me.daErstellt_am = New SqlDateTime(CType(Now, DateTime))
Me.daMutiert_am = New SqlDateTime(CType(Now, DateTime))
Me.iMutierer = New SqlInt32(CType(Globals.clsmitarbeiter.iMitarbeiternr.Value, Int32))
Me.iProdukttypNr = New SqlInt32(CType(1, Int32))
Me.sVersion = New SqlString(CType("", String))
Me.iStatusNr = New SqlInt32(CType(1, Int32))
Me.bIstStruktur = New SqlBoolean(CType(0, Boolean))
Me.sAbgeloest_durch = New SqlString(CType("", String))
Me.daNächste_Ueberprüfung = New SqlDateTime(CType("01.01.1900", DateTime))
Me.daEntscheidungstermin = New SqlDateTime(CType("01.01.1900", DateTime))
Me.daAbgeloest_am = New SqlDateTime(CType("01.01.1900", DateTime))
Me.iAbgeliest_durch_wen = New SqlInt32(CType(0, Int32))
Me.sTerminBemerkung = New SqlString(CType("", String))
Me.iAbgeloest_durch_produktnr = New SqlInt32(CType(0, Int32))
Me.cpMainConnectionProvider = Globals.conn
Me.iSort = New SqlInt32(CType(0, Int32))
If Parentid <> 0 Then
Me.iLC_ProduktNr_Parent = New SqlInt32(CType(Parentid, Int32))
End If
Globals.conn.OpenConnection()
Me.Insert()
Globals.conn.CloseConnection(True)
Return newkey
End Function
Public Function Check_Delete(ByVal produktnr As Integer, ByVal fnkt As Integer) As String
Dim Prodlist As New DataTable
Dim selectcommand As New SqlCommand
Dim connection As New SqlConnection()
Dim s As String = ""
Dim da As New SqlDataAdapter("", connection)
selectcommand.CommandText = "[sp_lc_check_delete]"
selectcommand.CommandType = CommandType.StoredProcedure
selectcommand.Connection = connection
selectcommand.Parameters.Add("@lc_produktnr", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@fnkt", SqlDbType.Int, 4)
selectcommand.Parameters(0).Value = produktnr
selectcommand.Parameters(1).Value = fnkt
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = selectcommand
da.Fill(Prodlist)
If Prodlist.Rows.Count > 0 Then
For Each r As DataRow In Prodlist.Rows
If s <> "" Then s = s + vbCrLf
s = s + "- " + r("Bezeichnung")
Next
End If
Return s
Catch ex As Exception
MsgBox(ex.Message)
Finally
connection.Close()
da.Dispose()
selectcommand.Dispose()
Prodlist.Dispose()
End Try
End Function
Public Function Get_Image_for_Structure(level As Integer) As Boolean
Dim lco As New TKB.VV.DB.clsLC_Optionen
Try
lco.iLc_option_nr = New SqlInt32(CType(1, Int32))
lco.cpMainConnectionProvider = Globals.conn
lco.SelectOne()
If lco.sBeschreibung.Value >= level + 1 Then Return True Else Return False
Catch
Return False
Finally
lco.Dispose()
End Try
End Function
Public Function Get_Image_for_Element() As Boolean
Dim lco As New TKB.VV.DB.clsLC_Optionen
Try
lco.iLc_option_nr = New SqlInt32(CType(2, Int32))
lco.cpMainConnectionProvider = Globals.conn
lco.SelectOne()
If UCase(lco.sBeschreibung.Value) = "JA" Then Return True Else Return False
Catch
Return False
Finally
lco.Dispose()
End Try
End Function
End Class
End Namespace