Files
SDL/VERAG_PROG_ALLGEMEIN/Classes/cQSTeam.vb

248 lines
8.6 KiB
VB.net

Imports System.Data.SqlClient
Imports System.Reflection
Public Class cQSTeams
Property LIST As New List(Of cQSTeam)
Dim SQL As New SQL
Sub New()
LOAD_LIST()
End Sub
Public Sub LOAD_LIST()
Try
LIST.Clear()
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT qstm_Id FROM [tblQS_Teams] ", conn)
Dim dr = cmd.ExecuteReader()
While dr.Read
Dim l As New cQSTeam(dr.Item("qstm_Id"))
LIST.Add(l)
End While
dr.Close()
End Using
End Using
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
End Sub
Public Function getTeamById(id)
For Each T In LIST
If T.qstm_Id = id Then
Return T
End If
Next
Return Nothing
End Function
Public Shared Function genNewTeam(teamName) As Boolean
If teamName = "" Then Return False
Try
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("INSERT INTO [tblQS_Teams] ([qstm_bezeichnung]) VALUES('" & teamName & "') ", conn)
cmd.ExecuteNonQuery()
Return True
End Using
End Using
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return False
End Function
End Class
Public Class cQSTeam
Property qstm_Id As Integer = -1
Property qstm_bezeichnung As String
Property MEMBER As New List(Of cQSTeamMA)
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qstm_Id", qstm_Id, , True, True))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qstm_bezeichnung", qstm_bezeichnung))
Return list
End Function
Sub New(qstm_Id)
Me.qstm_Id = qstm_Id
LOAD(qstm_Id)
End Sub
Sub New()
End Sub
Public Sub LOAD(qstm_Id)
Try
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT * FROM [tblQS_Teams] WHERE qstm_Id=@qstm_Id ", conn)
cmd.Parameters.AddWithValue("@qstm_Id", qstm_Id)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each l In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(l.Scalarvariable)
If dr.Item(l.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(l.Text))
End If
Next
LOAD_POSITIONEN()
End If
dr.Close()
End Using
End Using
'Return Nothing
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
' Return Nothing
End Sub
Public Sub LOAD_POSITIONEN()
Try
MEMBER.Clear()
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT * FROM [tblQS_TeamsMA] WHERE qtma_QstmId=@qtma_QstmId ", conn)
cmd.Parameters.AddWithValue("@qtma_QstmId", qstm_Id)
Dim dr = cmd.ExecuteReader()
While dr.Read
Dim l As New cQSTeamMA
For Each i In l.getParameterList()
Dim propInfo As PropertyInfo = l.GetType.GetProperty(i.Scalarvariable)
If dr.Item(i.Text) Is DBNull.Value Then
propInfo.SetValue(l, Nothing)
Else
propInfo.SetValue(l, dr.Item(i.Text))
End If
Next
MEMBER.Add(l)
End While
dr.Close()
End Using
End Using
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
End Sub
End Class
Public Class cQSTeamMA
Property qtma_Id As Integer = -1
Property qtma_QstmId As Integer
Property qtma_MaId As Integer
Property qtma_name As String = ""
Property qtma_funktion As Object = Nothing
Dim SQL As New SQL
Sub New()
End Sub
Sub New(qtma_Id)
Me.qtma_Id = qtma_Id
LOAD(qtma_Id)
End Sub
Public Sub LOAD(qtma_Id)
Try
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
Using cmd As New SqlCommand("SELECT * FROM [tblQS_TeamsMA] WHERE qtma_Id=@qtma_Id ", conn)
cmd.Parameters.AddWithValue("@qtma_Id", qtma_Id)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
For Each l In getParameterList()
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(l.Scalarvariable)
If dr.Item(l.Text) Is DBNull.Value Then
propInfo.SetValue(Me, Nothing)
Else
propInfo.SetValue(Me, dr.Item(l.Text))
End If
Next
End If
dr.Close()
End Using
End Using
'Return Nothing
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
' Return Nothing
End Sub
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qtma_Id", qtma_Id, , True, True))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qtma_QstmId", qtma_QstmId))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qtma_MaId", qtma_MaId))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qtma_name", qtma_name))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("qtma_funktion", qtma_funktion))
Return list
End Function
Public Function INSERT() As Boolean
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Return SQL.doSQLVarList(getInsertCmd, "FMZOLL", , list)
End Function
Public Function DELETE() As Boolean 'obj As Object, tablename As String, where As String) As Boolean
Dim sqlstr = " DELETE FROM [tblQS_TeamsMA] WITH(updlock,serializable) WHERE qtma_Id=" & Me.qtma_Id
Return SQL.doSQL(sqlstr, "FMZOLL")
End Function
Public Function getInsertCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
Dim values As String = ""
For Each i In list
If Not i.isPrimaryParam Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblQS_TeamsMA (" & str & ") VALUES(" & values & ") ")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
End Class