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.

874 lines
38 KiB

Imports System
Imports System.Data
Imports System.Data.SqlTypes
Imports System.Data.SqlClient
Imports C1.Win.C1TrueDBGrid
Namespace TKB.VV.Lizenz
Public Class clsLizenz
Inherits TKB.VV.DB.clsLizenz
Public ve As New TKB.VV.vertrag.clsVertragselement
Public vp As New TKB.VV.vertrag.clsVertragspartner
Public va As New TKB.VV.vertrag.clsVertragselementApplikation
Public ap As New TKB.VV.Applikation.clsApplikation
Public VEAP As New DataSet
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 Overloads Sub dispose()
MyBase.Dispose()
Try
ve.dispose()
vp.dispose()
va.dispose()
ap.dispose()
Catch ex As Exception
End Try
End Sub
Public Function get_umgebung(ByVal lizenznr As Integer)
Try
va.cpMainConnectionProvider = Globals.conn
va.iVertragselementApplikationnr = New SqlInt32(CType(Me.iVertragselementApplikationnr, Int32))
va.SelectOne()
ve.cpMainConnectionProvider = Globals.conn
ve.iVertragselementnr = New SqlInt32(CType(va.iVertragselementnr.Value, Int32))
ve.SelectOne()
vp.cpMainConnectionProvider = Globals.conn
vp.iVertragspartnerNr = New SqlInt32(CType(ve.iVertragspartnerNr.Value, Int32))
vp.SelectOne()
ap.cpMainConnectionProvider = Globals.conn
ap.iApplikationNr = New SqlInt32(CType(va.iApplikationnr.Value, Int32))
ap.SelectOne()
Catch
End Try
End Function
Public Function Get_Lizenz(ByVal Nr As Integer)
Me.cpMainConnectionProvider = Globals.conn
Me.iLizenzNr = New SqlInt32(CType(Nr, Int32))
Globals.conn.OpenConnection()
Me.SelectOne()
get_umgebung(Me.iLizenzNr.Value)
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.iLizenzNr.Value
End Function
''' <summary>
''' Mutierer auslesen
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
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
''' <summary>
''' Löschen eines Datensatzes erstellen.
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Function Delete_Lizenz(Optional ByVal Basenr As Integer = 0) As Integer
If Basenr <> 0 Then
Get_Lizenz(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
''' <summary>
''' Löschen eines Datensatzes .
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Overloads Function Delete(Optional ByVal Basenr As Integer = 0) As Integer
If Basenr <> 0 Then
Get_Lizenz(Basenr)
End If
Me.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
MyBase.Delete()
Globals.conn.CloseConnection(True)
End Function
''' <summary>
''' Neue Kuendigungsfrist einfügen
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
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("Lizenz")
db.Dispose()
Me.iLizenzNr = New SqlInt32(CType(newkey, Int32))
Me.sBezeichnung = New SqlString(CType("*** Neues Element ***", String))
Me.sBeschreibung = New SqlString(CType("", String))
Me.iParentID = 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.iSecurityLevelNr = New SqlInt32(CType(0, Int32))
Me.bStrukturelement = New SqlBoolean(CType(False, Boolean))
Me.cpMainConnectionProvider = Globals.conn
Me.iVertragselementApplikationnr = New SqlInt32(CType(0, Int32))
If Parentid <> 0 Then
Me.iParentID = New SqlInt32(CType(Parentid, Int32))
End If
Globals.conn.OpenConnection()
Me.Insert()
Globals.conn.CloseConnection(True)
Return newkey
End Function
Public Function Get_Vertragselement_Applikation(ByVal Lizenznr As Integer) As DataTable
Dim selectcommand As New SqlCommand
Dim connection As New SqlConnection()
Dim da As New SqlDataAdapter("", connection)
Me.VEAP.Tables.Clear()
selectcommand.CommandText = "sp_get_lizenz_vertragselement_applikation"
selectcommand.Parameters.Add("@Mitarbeiternr", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@Lizenznr", SqlDbType.Int, 4)
selectcommand.Parameters(0).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
selectcommand.Parameters(1).Value = Lizenznr
selectcommand.CommandType = CommandType.StoredProcedure
selectcommand.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = selectcommand
da.Fill(VEAP, "VeAe")
Return VEAP.Tables(0)
Catch ex As Exception
Return Nothing
Finally
connection.Close()
da.Dispose()
selectcommand.Dispose()
End Try
End Function
End Class
Public Class clsLizenzTree
Public MaxSuchTreffer As Integer
Dim Treedata As New DataSet
''' <summary>
''' Laden der Treedaten und Tree aufbauen
''' </summary>
''' <param name="tree"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Function Load_Tree(ByRef tree As TreeView, Optional ByVal Insert_Initial_Entry As Boolean = False, Optional ByVal suchstring As String = "", Optional ByVal status As Integer = 2, Optional ByVal alphasort As Boolean = False, Optional ByVal suche As Boolean = False, Optional ByVal Applikationnr As Integer = 0, Optional ByVal Lizenztyp As Integer = 0)
tree.Enabled = False
tree.BeginUpdate()
If suchstring <> "" Then
Load_Treedata(suchstring, status, alphasort, suche)
Else
Load_Treedata(status, alphasort, Applikationnr, Lizenztyp)
End If
tree.Nodes.Clear()
If Insert_Initial_Entry Then
Dim tn As TreeNode = tree.Nodes.Add("--- Keine ---")
tn.Tag = 0
End If
Load_Treeview(Treedata, tree, suche)
Me.MaxSuchTreffer = Me.TreeaufbauNr
tree.ExpandAll()
tree.EndUpdate()
tree.Enabled = True
End Function
''' <summary>
''' Treedaten ab Datenbank laden
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Private Function Load_Treedata(ByVal status As Integer, ByVal alphasort As Boolean) As DataTable
Treedata.Tables.Clear()
Dim selectcommand As New SqlCommand
Dim connection As New SqlConnection()
Dim da As New SqlDataAdapter("", connection)
selectcommand.CommandText = "sp_get_Lizenzstruktur"
selectcommand.Parameters.Add("@Mitarbeiternr", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@NurAktive", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@Alphasort", SqlDbType.Int, 4)
selectcommand.Parameters(0).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
selectcommand.Parameters(1).Value = status
If alphasort = True Then selectcommand.Parameters(2).Value = 1 Else selectcommand.Parameters(2).Value = 0
selectcommand.CommandType = CommandType.StoredProcedure
selectcommand.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = selectcommand
da.Fill(Treedata, "Tree")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
selectcommand.Dispose()
End Try
End Function
Private Function Load_Treedata(ByVal status As Integer, ByVal alphasort As Boolean, ByVal Applikationnr As Integer, ByVal lizenztyp As Integer) As DataTable
Treedata.Tables.Clear()
Dim selectcommand As New SqlCommand
Dim connection As New SqlConnection()
Dim da As New SqlDataAdapter("", connection)
selectcommand.CommandText = "sp_get_Lizenzstruktur"
selectcommand.Parameters.Add("@Mitarbeiternr", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@NurAktive", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@Alphasort", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@Applikationnr", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@Lizenztyp", SqlDbType.Int, 4)
selectcommand.Parameters(0).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
selectcommand.Parameters(1).Value = status
selectcommand.Parameters(1).Value = 0
selectcommand.Parameters(3).Value = Applikationnr
selectcommand.Parameters(4).Value = lizenztyp
If alphasort = True Then selectcommand.Parameters(2).Value = 1 Else selectcommand.Parameters(2).Value = 0
selectcommand.CommandType = CommandType.StoredProcedure
selectcommand.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = selectcommand
da.Fill(Treedata, "Tree")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
selectcommand.Dispose()
End Try
End Function
Private Function Load_Treedata(ByVal Suchstring As String, ByVal status As Integer, ByVal alphasort As Boolean, Optional ByVal suche As Boolean = False) As DataTable
Treedata.Tables.Clear()
Dim selectcommand As New SqlCommand
Dim connection As New SqlConnection()
Dim da As New SqlDataAdapter("", connection)
selectcommand.CommandText = "sp_get_Lizenzstruktur_suche"
selectcommand.Parameters.Add("@suchstring", SqlDbType.VarChar, 255)
selectcommand.Parameters.Add("@Mitarbeiternr", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@nuraktive", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@alphasort", SqlDbType.Int, 4)
selectcommand.Parameters.Add("@suche", SqlDbType.Int, 4)
selectcommand.Parameters(1).Value = Globals.clsmitarbeiter.iMitarbeiternr.Value
selectcommand.Parameters(0).Value = Suchstring
selectcommand.Parameters(2).Value = status
If alphasort = True Then selectcommand.Parameters(3).Value = 1 Else selectcommand.Parameters(3).Value = 0
If suche = True Then selectcommand.Parameters(4).Value = 1 Else selectcommand.Parameters(4).Value = 0
selectcommand.CommandType = CommandType.StoredProcedure
selectcommand.Connection = connection
Try
connection.ConnectionString = Globals.sConnectionString
connection.Open()
da.SelectCommand = selectcommand
da.Fill(Treedata, "Tree")
Catch ex As Exception
Finally
connection.Close()
da.Dispose()
selectcommand.Dispose()
End Try
End Function
''' <summary>
''' Interne Relation aufbauen und Tree aufbauen
''' </summary>
''' <param name="oSourceData"></param>
''' <param name="tree"></param>
''' <remarks></remarks>
Dim TreeaufbauSuche As Boolean = False
Dim TreeaufbauNr As Integer = 0
Private Sub Load_Treeview(ByVal oSourceData As DataSet, ByRef tree As TreeView, ByVal suche As Boolean)
TreeaufbauSuche = suche
TreeaufbauNr = -1
If Not (oSourceData Is Nothing) Then
Dim oView As DataView = oSourceData.Tables(0).DefaultView
Dim oTable As DataTable = oView.Table
Dim oDS As DataSet = New DataSet()
oDS.Tables.Add(oTable.Copy())
Try
If oDS.Relations.Contains("SelfRefenceRelation") = False Then
oDS.Relations.Add("SelfRefenceRelation", _
oDS.Tables(0).Columns("Lizenznr"), _
oDS.Tables(0).Columns("Parentid"))
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
oTable.Dispose()
oTable = Nothing
LoadTreeView(oDS, tree)
oDS.Dispose()
oDS = Nothing
End If
End Sub
Public Sub Load_Treeview(ByRef tree As TreeView, Optional ByVal suche As Boolean = False)
Dim oSourceData As New DataSet
oSourceData = Treedata
TreeaufbauSuche = suche
TreeaufbauNr = -1
If Not (oSourceData Is Nothing) Then
Dim oView As DataView = oSourceData.Tables(0).DefaultView
Dim oTable As DataTable = oView.Table
Dim oDS As DataSet = New DataSet()
oDS.Tables.Add(oTable.Copy())
Try
If oDS.Relations.Contains("SelfRefenceRelation") = False Then
oDS.Relations.Add("SelfRefenceRelation", _
oDS.Tables(0).Columns("Lizenznr"), _
oDS.Tables(0).Columns("Parentid"))
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
oTable.Dispose()
oTable = Nothing
LoadTreeView(oDS, tree)
oDS.Dispose()
oDS = Nothing
End If
End Sub
''' <summary>
''' Tree aufbauen
''' </summary>
''' <param name="oDS"></param>
''' <param name="oTreeview"></param>
''' <remarks></remarks>
Private Sub LoadTreeView(ByVal oDS As DataSet, ByRef oTreeview As TreeView)
'Dim oTreeView As TreeView = New TreeView()
Dim oDataRow As DataRow
For Each oDataRow In oDS.Tables(0).Rows
If Not oDataRow.IsNull("Parentid") Then
If oDataRow.Item("Parentid") = 0 Then
'If oDataRow.IsNull("Parentid") Then
Dim oNode As New TreeNode()
oNode.Text = oDataRow("Bezeichnung").ToString()
oNode.Tag = oDataRow("Lizenznr").ToString
If Me.TreeaufbauSuche = True Then
If oDataRow("Treffer").ToString = "*" Then
Me.TreeaufbauNr = Me.TreeaufbauNr + 1
oNode.Tag = "*** " + Trim(Str(Me.TreeaufbauNr))
End If
End If
If Me.TreeaufbauSuche = False Then
If oNode.Tag < 0 Then
oNode.ImageIndex = 0
oNode.SelectedImageIndex = 0
oNode.StateImageIndex = 0
Else
If oDataRow.Item("Aktiv") = 0 Then
oNode.ImageIndex = 3
oNode.SelectedImageIndex = 3
oNode.StateImageIndex = 3
If oDataRow.Item("Strukturelement") = True Then
oNode.ImageIndex = 1
oNode.SelectedImageIndex = 1
oNode.StateImageIndex = 1
End If
Else
oNode.ImageIndex = 2
oNode.SelectedImageIndex = 2
oNode.StateImageIndex = 2
If oDataRow.Item("Strukturelement") = True Then
oNode.ImageIndex = 0
oNode.SelectedImageIndex = 0
oNode.StateImageIndex = 0
End If
End If
End If
End If
oTreeview.Nodes.Add(oNode)
RecursivelyLoadTree(oDataRow, oNode)
End If
End If
Next oDataRow
oDS.Dispose()
oDS = Nothing
End Sub
''' <summary>
''' Child-Nodes hinzufügen
''' </summary>
''' <param name="oDataRow"></param>
''' <param name="oNode"></param>
''' <remarks></remarks>
Private Sub RecursivelyLoadTree(ByVal oDataRow As DataRow, ByRef oNode As TreeNode)
Dim oChildRow As DataRow
For Each oChildRow In oDataRow.GetChildRows("SelfRefenceRelation")
Dim oChildNode As New TreeNode()
oChildNode.Text = oChildRow("Bezeichnung").ToString()
oChildNode.Tag = oChildRow("Lizenznr").ToString()
If Me.TreeaufbauSuche = True Then
If oChildRow("Treffer").ToString = "*" Then
Me.TreeaufbauNr = Me.TreeaufbauNr + 1
oChildNode.Tag = "*** " + Trim(Str(Me.TreeaufbauNr))
End If
End If
If oChildRow.Item("Aktiv") = False Then
oChildNode.ImageIndex = 3
oChildNode.SelectedImageIndex = 3
oChildNode.StateImageIndex = 3
If oChildRow.Item("Strukturelement") = True Then
oChildNode.ImageIndex = 0
oChildNode.SelectedImageIndex = 0
oChildNode.StateImageIndex = 0
End If
Else
oChildNode.ImageIndex = 2
oChildNode.SelectedImageIndex = 2
oChildNode.StateImageIndex = 2
If oChildRow.Item("Strukturelement") = True Then
oChildNode.ImageIndex = 0
oChildNode.SelectedImageIndex = 0
oChildNode.StateImageIndex = 0
End If
End If
oNode.Nodes.Add(oChildNode)
RecursivelyLoadTree(oChildRow, oChildNode)
Next oChildRow
End Sub
Public Function FindNode(ByVal _nodeCollection As TreeNodeCollection, ByVal SearchVal As Integer, ByVal SearchString As String) As TreeNode
Dim tmpNode As TreeNode
For Each _child As TreeNode In _nodeCollection
If _child.Tag = SearchVal Then
Return _child
End If
tmpNode = FindNode(_child.Nodes, SearchVal, SearchString)
If Not tmpNode Is Nothing Then
Return tmpNode
End If
Next
Return Nothing
End Function
End Class
''' <summary>
''' Klasse für die Verwaltung der Lizenzinformationen eines Vertragselementes bzw. einer Applikation
''' </summary>
''' <remarks></remarks>
Public Class clsLizenzinformationen
''' <summary>
''' Domaintable für Lizenkauf
''' </summary>
''' <remarks></remarks>
Public Lizenzkauf As TKB.VV.Sysadmin.DomainTable
''' <summary>
''' Domaintable für Lizenzschlüssel
''' </summary>
''' <remarks></remarks>
Public Lizenzschluessel As TKB.VV.Sysadmin.DomainTable
''' <summary>
''' Destructor Dispose für umd die beiden Domaintables frei zu geben
''' </summary>
''' <remarks></remarks>
Sub Dispose()
If Me.Lizenzkauf.Tabledata.HasChanges Then
Dim msg As New TKB.VV.Utils.MyMessage
If msg.Show_MessageYesNoCancel(800) = MsgBoxResult.Yes Then
Me.Lizenzkauf.Save_Data()
End If
msg.dispose()
End If
Me.Lizenzkauf.dispose()
Me.Lizenzkauf = Nothing
If Me.Lizenzschluessel.Tabledata.HasChanges Then
Dim msg As New TKB.VV.Utils.MyMessage
If msg.Show_MessageYesNoCancel(801) = MsgBoxResult.Yes Then
Me.Lizenzkauf.Save_Data()
End If
msg.dispose()
End If
Me.Lizenzschluessel.dispose()
Me.Lizenzschluessel = Nothing
End Sub
''' <summary>
''' Laufinformationen eines Lizenz-Vertragselementes auslesen und dem Grid übergeben
''' </summary>
''' <param name="Vertragselementnr">Nr. Des Lizenz-Vertragselementes</param>
''' <param name="c1data">C1TrueDBGrid</param>
''' <returns></returns>
''' <remarks></remarks>
Public Function Get_Lizenzkauf(ByVal Vertragselementapplikationnr As Integer, ByRef c1data As C1TrueDBGrid)
Try
Me.Lizenzkauf.dispose()
Me.Lizenzkauf = Nothing
Catch ex As Exception
End Try
Me.Lizenzkauf = New TKB.VV.Sysadmin.DomainTable("Lizenzkauf", 0, Vertragselementapplikationnr, Globals.clsmitarbeiter.iMitarbeiternr.Value)
c1data.DataSource = Me.Lizenzkauf.Tabledata
c1data.DataMember = Me.Lizenzkauf.Tabledata.Tables(0).TableName
c1data.AllowAddNew = True
End Function
''' <summary>
''' Daten der Domaintable Lizenzkauf sichern
''' </summary>
''' <remarks></remarks>
Public Sub Save_Lizenzkauf()
Me.Lizenzkauf.Save_Data()
End Sub
Public Function Get_Lizenzschluessel(ByVal Lizenzkaufnr As Integer, ByRef c1data As C1TrueDBGrid)
Try
Me.Lizenzschluessel.dispose()
Me.Lizenzschluessel = Nothing
Catch ex As Exception
End Try
Me.Lizenzschluessel = New TKB.VV.Sysadmin.DomainTable("Lizenzschluessel", 0, Lizenzkaufnr, Globals.clsmitarbeiter.iMitarbeiternr.Value)
c1data.DataSource = Me.Lizenzschluessel.Tabledata.Tables(0)
c1data.DataMember = Me.Lizenzschluessel.Tabledata.Tables(0).TableName
c1data.AllowAddNew = True
End Function
Public Sub Save_Lizenzschluessel()
Me.Lizenzkauf.Save_Data()
End Sub
Public Function Check_Vertragstyp_Fuer_Lizenz(ByVal Vertragstypnr As Integer) As Boolean
Dim vertragstyp As New TKB.VV.DB.clsVertragstyp
vertragstyp.cpMainConnectionProvider = Globals.conn
vertragstyp.iVertragstypnr = New SqlInt32(CType(Vertragstypnr, Int32))
vertragstyp.SelectOne()
If vertragstyp.bAlsLizenz.Value = True Then Return True Else Return False
End Function
Public Function aktive_lizenzinformationen_vorhanden(ByVal vertragselement As Integer) As Boolean
If Get_Lizenzen(vertragselement) > 0 Then Return True Else Return False
End Function
Public Function aktive_lizenzinformationen_vorhanden(ByVal vertragselementapplikationnr As Integer, ByVal inaktivieren As Boolean) As Boolean
If inaktivieren = False Then
If Get_Lizenzen(vertragselementapplikationnr, "Get1") > 0 Then Return True Else Return False
Else
Get_Lizenzen(vertragselementapplikationnr, "Del")
End If
End Function
Private Function Get_Lizenzen(ByVal vertragselementnr As Integer, Optional ByVal fnkt As String = "Get") As Integer
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
Dim dtToReturn As DataTable = New DataTable()
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.CommandText = "dbo.sp_Check_lizenzkauf"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
scmCmdToExecute.Connection = conn.scoDBConnection
Try
scmCmdToExecute.Parameters.Add(New SqlParameter("@vertragselementnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, vertragselementnr))
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.VarChar, 255, 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))
scmCmdToExecute.Parameters.Add(New SqlParameter("@Anzahl", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, 0))
sdaAdapter.Fill(dtToReturn)
Return scmCmdToExecute.Parameters("@anzahl").Value
Catch ex As Exception
Throw New Exception("clsParentelemente::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
dtToReturn.Dispose()
End Try
End Function
End Class
Public Class clsLizenzVertragselementApplikation
Inherits TKB.VV.DB.clsLizenzVertragselementApplikation
Public Sub Get_Data(ByVal BaseNr As Integer)
Me.cpMainConnectionProvider = Globals.conn
Me.iLizenzVEApplNr = New SqlInt32(CType(basenr, SqlInt32))
Globals.conn.OpenConnection()
Me.SelectOne()
Globals.conn.CloseConnection(True)
End Sub
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.iLizenzNr.Value
End Function
''' <summary>
''' Löschen eines Datensatzes erstellen.
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Function Delete_LizenzVertragselementApplikation(Optional ByVal Basenr As Integer = 0) As Integer
Me.cpMainConnectionProvider = Globals.conn
If Basenr > 0 Then Get_Data(Basenr)
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
''' <summary>
''' Löschen eines Datensatzes .
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Overloads Function Delete(Optional ByVal Basenr As Integer = 0) As Integer
If Basenr > 0 Then Get_Data(Basenr)
Me.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
MyBase.Delete()
Globals.conn.CloseConnection(True)
End Function
''' <summary>
''' Neue Kuendigungsfrist einfügen
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Add_New(ByVal Lizenznr As Integer, ByVal VertragselementApplikationnr As Integer, hyperlink As String) As Integer
Dim db As New TKB.VV.DB.clsMyKey_Tabelle
db.cpMainConnectionProvider = Globals.conn
Dim newkey = db.get_dbkey("LizenzVertragselementApplikation")
db.Dispose()
Me.iLizenzVEApplNr = New SqlInt32(CType(newkey, Int32))
Me.iVertragselementApplikationNr = New SqlInt32(CType(VertragselementApplikationnr, Int32))
Me.iLizenznr = New SqlInt32(CType(Lizenznr, Int32))
Me.sBemerkung = New SqlString(CType("", String))
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.cpMainConnectionProvider = Globals.conn
Me.sHyperlink_Vertrag = New SqlString(CType(hyperlink, String))
'Me.iVertragselementApplikationNr = New SqlInt32(CType(0, Int32))
Globals.conn.OpenConnection()
Me.Insert()
Globals.conn.CloseConnection(True)
Return newkey
End Function
End Class
Public Class clsLizenzkauf
Inherits TKB.VV.DB.clsLizenzkauf
Public Sub Get_Data(ByVal BaseNr As Integer)
Me.cpMainConnectionProvider = Globals.conn
Me.iLizenzkaufNr = New SqlInt32(CType(BaseNr, SqlInt32))
Globals.conn.OpenConnection()
Me.SelectOne()
Globals.conn.CloseConnection(True)
End Sub
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)
End Function
''' <summary>
''' Löschen eines Datensatzes erstellen.
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Function Delete_Lizenzkauf(Optional ByVal Basenr As Integer = 0) As Integer
Me.cpMainConnectionProvider = Globals.conn
If Basenr > 0 Then Get_Data(Basenr)
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
''' <summary>
''' Löschen eines Datensatzes .
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Overloads Function Delete(Optional ByVal Basenr As Integer = 0) As Integer
If Basenr > 0 Then Get_Data(Basenr)
Me.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
MyBase.Delete()
Globals.conn.CloseConnection(True)
End Function
''' <summary>
''' Neue Kuendigungsfrist einfügen
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Add_New(ByVal Lizenznr As Integer) As Integer
Dim db As New TKB.VV.DB.clsMyKey_Tabelle
db.cpMainConnectionProvider = Globals.conn
Dim newkey = db.get_dbkey("Lizenzkauf")
db.Dispose()
Me.iLizenzkaufNr = New SqlInt32(CType(newkey, Int32))
Me.iLizenznr = New SqlInt32(CType(Lizenznr, Int32))
Me.sBemerkung = New SqlString(CType("", String))
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.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
Me.Insert()
Globals.conn.CloseConnection(True)
Return newkey
End Function
Public Function Get_Lizenzkauf(ByVal Lizenznr 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_get_lizenz_lizenzkauf"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
scmCmdToExecute.Connection = conn.scoDBConnection
Try
scmCmdToExecute.Parameters.Add(New SqlParameter("@lizenznr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Lizenznr))
sdaAdapter.Fill(dtToReturn)
Return dtToReturn
Catch ex As Exception
Throw New Exception("clsParentelemente::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
dtToReturn.Dispose()
End Try
End Function
End Class
Public Class ClsLizenzschluessel
Inherits TKB.VV.DB.clsLizenzschluessel
Public Sub Get_Data(ByVal BaseNr As Integer)
Me.cpMainConnectionProvider = Globals.conn
Me.iLizenzschluesselnr = New SqlInt32(CType(BaseNr, Int32))
Globals.conn.OpenConnection()
Me.SelectOne()
Globals.conn.CloseConnection(True)
End Sub
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)
End Function
''' <summary>
''' Löschen eines Datensatzes erstellen.
''' </summary>
''' <param name="Basenr"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Function Delete_Lizenzschluessel(Optional ByVal Basenr As Integer = 0) As Integer
Me.cpMainConnectionProvider = Globals.conn
If Basenr > 0 Then Get_Data(Basenr)
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
''' <summary>
''' Neue Kuendigungsfrist einfügen
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Add_New(ByVal Lizenzkaufnr As Integer) As Integer
Dim db As New TKB.VV.DB.clsMyKey_Tabelle
db.cpMainConnectionProvider = Globals.conn
Dim newkey = db.get_dbkey("LizenzSchluessel")
db.Dispose()
Me.iLizenzschluesselnr = New SqlInt32(CType(newkey, Int32))
Me.iLizenzkaufnr = New SqlInt32(CType(Lizenzkaufnr, Int32))
Me.sBemerkung = New SqlString(CType("", String))
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.cpMainConnectionProvider = Globals.conn
Globals.conn.OpenConnection()
Me.Insert()
Globals.conn.CloseConnection(True)
Return newkey
End Function
End Class
End Namespace